The purpose of `if version and not gajim.contacts.get_contacts_jid_list()` seemed to be that when cache.db is empty (maybe it was deleted) `gajim.contacts.get_contacts_jid_list()` should come back empty. So on an empty roster cache, version was set to None, so that we request in any case a new roster. The Problem is that `gajim.contacts.get_contacts_jid_list()` is not a good indication for an empty cache.db. On start we trigger a `RosterReceivedEvent` which does a DB query to get the roster. Even if that DB query comes up empty, the Event is still pushed. In the event handler `_nec_roster_received` in roster_window.py we add then previously open controls and our self (if the option is set) to the roster, making `gajim.contacts.get_contacts_jid_list()` return these contacts and hence the condition in `request_roster()` always False. So the version is set in the roster request, and if there is no new version on the server, we request no new roster even though we only have ourself and previously open controls in our roster. As a solution for this we delete the roster version from the config in `RosterReceivedEvent` if the DB query comes back empty, which triggers a new roster request. |
||
---|---|---|
data | ||
debian | ||
doc | ||
gajim | ||
icons | ||
m4 | ||
plugins | ||
po | ||
scripts | ||
test | ||
win | ||
.gitignore | ||
AUTHORS | ||
COPYING | ||
ChangeLog | ||
INSTALL | ||
Makefile.am | ||
NEWS | ||
README | ||
README.md | ||
THANKS | ||
THANKS.artists | ||
appveyor.yml | ||
autogen.sh | ||
configure.ac | ||
launch.sh | ||
pylintrc |
README.md
Welcome to the Gajim project Wiki
The goal of Gajim is to provide a full featured and easy to use Jabber/XMPP client. Gajim works nicely with GNOME, but does not require it to run. It is released under the GNU General Public License. If you find bugs or have ideas how Gajim can be better, please send tickets here.
Links
-
- FAQ, Did you know that...
- Quickstart guides
- Advanced configuration
-
- Advanced use of gajim
- User groups
- Reviews
-
- Guidelines and documentation
- How to contribute
- The Gajim team
-
Latest release: