Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • T telepathy-gabble
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 289
    • Issues 289
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • TelepathyTelepathy
  • telepathy-gabble
  • Issues
  • #117
Closed
Open
Issue created Dec 16, 2010 by Bugzilla Migration User@bugzilla-migration

Tidy up GabblePresenceCache

Submitted by Will Thompson @wjt

Assigned to Telepathy bugs list

Link to original bug (#32444)

Description

connection_iq_disco_cb() contains the following comment:

  /* Otherwise, is it one of the caps bundles we advertise? These are not
   * just shoved into the cache with gabble_presence_cache_add_own_caps()
   * because capabilities_get_features() always includes a few bonus
   * features...
   */

capabilities_get_features() no longer exists; there's no reason why we can't serve the responses to Google Talk-compatibility bundles like "voice-v1" from the same place as we serve our other caps responses.

So I guess the thing to do would be to replace the calls to gabble_presence_cache_add_bundle_caps() at the end of gabble_presence_cache_add_bundles() with calls to gabble_presence_cache_add_own_caps(), and add one for pmuc-v1 which is just an empty caps set. This would let us simplify connection_iq_disco_cb().

We could get some further simplification by ensuring that our default identity is in the caps cache entry for our own caps nodes, rather than depending on the same one being hard-coded in caps_hash_compute_from_self_presence() and connection_iq_disco_cb().

(In general, the presence cache is fertile ground for refactoring by interested parties.)

Version: git master

Assignee
Assign to
Time tracking