[Bug 42503] New: Race in tp_channel_dispatch_operation_claim_with_async() and context_accept()

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Nov 2 11:42:05 CET 2011


https://bugs.freedesktop.org/show_bug.cgi?id=42503

             Bug #: 42503
           Summary: Race in
                    tp_channel_dispatch_operation_claim_with_async() and
                    context_accept()
    Classification: Unclassified
           Product: Telepathy
           Version: unspecified
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: tp-glib
        AssignedTo: telepathy-bugs at lists.freedesktop.org
        ReportedBy: xclaesse at gmail.com
         QAContact: telepathy-bugs at lists.freedesktop.org


In the case we are both an observer and an handler, it common in
observe_channels() to claim them. In that case we should start handling from
the claim_cb and we should NOT get handle_channels(). So typically code would
do:

  tp_channel_dispatch_operation_claim_with_async (dispatch_operation, self,
      claim_cb, user_data);
  tp_observe_channels_context_accept (context);

Which would be correct if tp_channel_dispatch_operation_claim_with_async() was
calling Claim dbus call directly. But since it first do a
tp_proxy_prepare_async() on the DO, the return from dbus call done in
tp_observe_channels_context_accept() gets to MC first and it will then dispatch
the channel to anyone able to.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.
You are the assignee for the bug.



More information about the telepathy-bugs mailing list