1. 30 Dec, 2012 2 commits
    • Philip Withnall's avatar
      telepathy: Call continuations in idle callbacks rather than directly · 7088fbaf
      Philip Withnall authored
      The continuations will proceed to a g_simple_async_result_complete() call,
      rather than a g_simple_async_result_complete_in_idle() call as I expected
      (and didn’t check). This could result in the first continuation executing
      a lot of code and starving the other continuations (and the original
      prepare() call). By delaying the continuations to the idle queue, the
      original prepare() call is guaranteed to finish first. Then the
      continuations can only starve each other.
      
      See: https://bugzilla.gnome.org/show_bug.cgi?id=677633
      7088fbaf
    • Philip Withnall's avatar
      documentation: Document which yielding methods are safe to call concurrently · e21932e8
      Philip Withnall authored
      This is a follow-up commit to ce55fa2b.
      I went through all methods in folks which yield to another async method,
      and tried to work out whether the caller was safe to run multiple times
      concurrently (e.g. begin a second asynchronous call to it between a previous
      async call beginning and finishing).
      
      I’ve marked all such methods as safe (or not safe) as appropriate. I
      haven’t made any attempt to make the unsafe methods safe, except in one
      case in backend-store.vala.
      e21932e8
  2. 28 Dec, 2012 3 commits
  3. 26 Nov, 2012 1 commit
    • Patrick Ohly's avatar
      eds: remove urls · 0338f137
      Patrick Ohly authored
      URLs which are represented by EContact fields cannot be removed. When
      setting UrlFieldDetails, the _set_contact_urls method must remove
      X-EVOLUTION-BLOG-URL, X-EVOLUTION-VIDEO-URL, FBURL and URL in addition
      to X-URIS, which was already removed before setting the new set of
      values.
      
      Closes: https://bugzilla.gnome.org/show_bug.cgi?id=688923
      0338f137
  4. 24 Nov, 2012 2 commits
  5. 06 Nov, 2012 1 commit
  6. 29 Oct, 2012 2 commits
  7. 26 Oct, 2012 2 commits
  8. 23 Oct, 2012 1 commit
  9. 17 Oct, 2012 1 commit
  10. 10 Oct, 2012 8 commits
  11. 27 Sep, 2012 1 commit
  12. 24 Sep, 2012 1 commit
    • Philip Withnall's avatar
      telepathy: Always notify of persona changes when disconnecting · 0f078082
      Philip Withnall authored
      This reverts commit af500a4b and applies
      a different fix. The problem was that persona changes could get away without
      being notified when disconnecting due to an account being disabled. This
      is because, after storing the cache, an additional check is performed for
      whether the account was enabled. If it is, the cache is loaded (and persona
      changes notified). If not, the cache is not loaded, *and persona changes
      were not notified*.
      
      This situation could occur when a Telepathy account is disabled:
       1. _notify_connection_cb() is called, but the TpAccount::enabled property
          is still true.
       2. While in store_cache(), the TpAccount::enabled property goes false.
       3. The check before load_cache() would fail, so load_cache() would never
          be called.
      
      Similarly, it could occur when a Telepathy account is removed, with
      TpAccountManager:account-removed being emitted while in store_cache().
      
      Closes: https://bugzilla.gnome.org/show_bug.cgi?id=683390
      0f078082
  13. 18 Sep, 2012 1 commit
  14. 11 Sep, 2012 2 commits
  15. 10 Sep, 2012 2 commits
  16. 07 Sep, 2012 1 commit
  17. 06 Sep, 2012 2 commits
  18. 05 Sep, 2012 4 commits
  19. 28 Aug, 2012 3 commits