Summary: | AcceptDBusTube returns NULL with 1-1 D-Bus tube | ||
---|---|---|---|
Product: | Telepathy | Reporter: | Guillaume Desmottes <guillaume.desmottes> |
Component: | gabble | Assignee: | Telepathy bugs list <telepathy-bugs> |
Status: | RESOLVED FIXED | QA Contact: | Telepathy bugs list <telepathy-bugs> |
Severity: | normal | ||
Priority: | medium | ||
Version: | unspecified | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | 15454 | ||
Bug Blocks: |
Description
Guillaume Desmottes
2008-01-02 04:04:35 UTC
A workaround is to call GetDBusTubeAddress() to get the address of the D-Bus server after the signal TubeStateChanged is received with the state Tube_State_Open. yeah that works. Actually I'm wondering if AcceptDBusTube shouldn't return anything and user have to wait for tube opening to get its address. Don't know. I agree: AcceptDBusTube shouldn't return the address. I opened a bug on telepathy-spec: Bug #15454. The spec does not need to change. I have a fix for Gabble: http://monkey.collabora.co.uk/telepathy-gabble.git_alban-bug13891/ +/* There is two step to enable receiving a D-Bus connection from the local + * application: + * - listen on the socket + * - add the socket in the mainloop + * + * We need to know the socket path to return from the AcceptDBusTube D-Bus + * call but the socket in the mainloop must be added only when we are ready + * to receive connections, that is when the bytestream is fully open with the + * remote contact. Fixed in 0.7.12 |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.