/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to seahorse.py

  • Committer: Vincent Ladeuil
  • Date: 2008-06-10 15:25:47 UTC
  • mto: This revision was merged to the branch mainline in revision 504.
  • Revision ID: v.ladeuil+lp@free.fr-20080610152547-dwmil1p8pd0mfpnl
Fix third failing test (thanks to jam).

* tests/test_commit.py:
(TestPendingRevisions.test_pending_revisions_multi_merge): Fix
provided by jam: bzr we now filter the pending merges so that only
the 'heads()' are included. We just ensure that the pending merges
contain the unique tips for the ancestries.

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
KEY_TYPE_OPENPGP = 'openpgp'
29
29
KEY_TYPE_SSH = 'ssh'
30
30
 
31
 
try:
32
 
    bus = dbus.SessionBus()
33
 
    crypto = dbus.Interface(bus.get_object(BUS_NAME, CRYPTO_PATH), 
34
 
                            CRYPTO_INTERFACE)
35
 
    openpgp = dbus.Interface(bus.get_object(BUS_NAME, OPENPGP_PATH),
36
 
                             OPENPGP_INTERFACE)
37
 
except dbus.exceptions.DBusException, e:
38
 
    get_name = getattr(e, 'get_dbus_name', None)
39
 
    if get_name is not None:
40
 
        name = get_name()
41
 
    else:
42
 
        name = getattr(e, '_dbus_error_name', None)
43
 
 
44
 
    if name is None:
45
 
        args = getattr(e, 'args', None) # This is case for old python-dbus-0.62
46
 
        if args == ("Unable to determine the address of the message bus (try 'man dbus-launch' and 'man dbus-daemon' for help)",):
47
 
            raise ImportError
48
 
 
49
 
    # DBus sometimes fails like this, just treat it as if seahorse is not
50
 
    # available rather than crashing.
51
 
    if name in ("org.freedesktop.DBus.Error.Spawn.ExecFailed", 
52
 
                "org.freedesktop.DBus.Error.ServiceUnknown",
53
 
                "org.freedesktop.DBus.Error.NotSupported"):
54
 
        raise ImportError
55
 
    else:
56
 
        raise
 
31
bus = dbus.SessionBus()
 
32
 
 
33
if hasattr(bus, 'list_activatable_names'):
 
34
    bus_names = bus.list_activatable_names()
 
35
else:
 
36
    bus_object = bus.get_object('org.freedesktop.DBus', '/org/freedesktop/DBus')
 
37
    bus_names = bus_object.ListNames(dbus_interface='org.freedesktop.DBus')
 
38
 
 
39
if BUS_NAME not in bus_names:
 
40
    raise ImportError
 
41
 
 
42
crypto = dbus.Interface(bus.get_object(BUS_NAME, CRYPTO_PATH), 
 
43
                        CRYPTO_INTERFACE)
 
44
openpgp = dbus.Interface(bus.get_object(BUS_NAME, OPENPGP_PATH),
 
45
                         OPENPGP_INTERFACE)
57
46
 
58
47
FLAG_VALID = 0x0001
59
48
FLAG_CAN_ENCRYPT = 0x0002
83
72
        if key not in keyset:
84
73
            keyset[key] = Key(key)
85
74
 
86
 
        return (cleartext, keyset[key])
87
 
 
88
 
    return (cleartext, None)
89
 
 
 
75
        return keyset[key]
90
76
 
91
77
class Key:
92
78