petr bug
2007-09-22 17:15:50 UTC
1) Start synce-gnome/src/test.py
2) Set your device to require password
3) Plug your device to USB (or Bluetoot, not tested). Password dialog appears.
4) Press Cancel button (or press escape key).
What happens: The dialog disappears and appears again.
What should happen: The dialog should disappear and not reappear.
Attached patch fixes this behavior.
I did not find (by searching docs, sources and asking people) why
CeDevice instances react on PasswordFlagsChanged D-Bus event, so I
removed subscription to this event. Testing did not reveal situation
when device would cause odccm to send PasswordFlagsChanged, except for
plugging it in.
(Some background: I spent full day peeking though odccm. I still do
not know what it exactly does. The odccm kept notifying the poor
synce-gnome now and then. Obviously there were race conditions. Also
bugs/exceptions in Python's D-Bus binding appear to be discarded. So
much wasted time.)
I also added some diagnostics printed on stdout because authentization
to device crosses trust boundary and it would be nice for user to know
which party fails/rejects.
Petr4
2) Set your device to require password
3) Plug your device to USB (or Bluetoot, not tested). Password dialog appears.
4) Press Cancel button (or press escape key).
What happens: The dialog disappears and appears again.
What should happen: The dialog should disappear and not reappear.
Attached patch fixes this behavior.
I did not find (by searching docs, sources and asking people) why
CeDevice instances react on PasswordFlagsChanged D-Bus event, so I
removed subscription to this event. Testing did not reveal situation
when device would cause odccm to send PasswordFlagsChanged, except for
plugging it in.
(Some background: I spent full day peeking though odccm. I still do
not know what it exactly does. The odccm kept notifying the poor
synce-gnome now and then. Obviously there were race conditions. Also
bugs/exceptions in Python's D-Bus binding appear to be discarded. So
much wasted time.)
I also added some diagnostics printed on stdout because authentization
to device crosses trust boundary and it would be nice for user to know
which party fails/rejects.
Petr4