Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
IRC has plenty of oddities, but the one we're interested in here
is that your nickname and your unique identifier are inextricably linked.
|
|
|
|
|
|
Mutable defaults for arguments are dangerous. If we call
enable_fakecm_account twice with default arguments, when we alter
expect_before_connect/expect_after_connect, we are actually altering
the default! Python doesn't construct a new empty list for us every
time. The C equivalent would be a static GPtrArray * or something.
|
|
We still allow the nickname to be set to the normalized name by
user action later, because in that case, the intention is unambiguous:
the user really does want their nickname to take that value.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39381
|
|
As well as being implemented in a more streamlined way (using the
self-contact instead of calling D-Bus methods directly), this reduces
the circular dependencies between McdConnection and McdAccount.
|
|
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
This is a long-standing bug (broken ever since the function was
introduced in 5.2), but apparently nobody noticed.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55392
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
This avoids the deprecated tp_channel_new_from_properties(). It has the
same disadvantages as that function, but is a bit more obvious about it.
Also comment how to change things at the next ABI break.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
dbus_g_connection_register_g_object isn't deprecated, but it's more code.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
This means we can avoid the deprecated
tp_channel_borrow_immutable_properties().
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
MC's reinvention was potentially better if the channel might lack the
Requested property... but that property has been mandatory for years,
so CMs that haven't caught up can just deal with it.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
This requires telepathy-glib 0.19.9, so depend on it.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
tp_account_manager_get_valid_accounts has the confusing
(transfer container) transfer-mode, and is deprecated in telepathy-glib
0.19.9.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Tested with telepathy-glib 0.19.9.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Tested with telepathy-glib 0.19.9.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Originally two patches for 'next' by Jonny Lamb.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
It appears something in MC now connects to D-Bus for a second time,
using GDBus this time. We don't want to exit-on-disconnect for this
one either, again so we free all memory before exiting.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
Based on a patch from Jonny Lamb; changed to use ${abs_top_srcdir} to
work out-of-tree, backtrace all threads, and put the gdb script in /tools.
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
If these object paths are the same, the factory will use the same
TpConnection (even though they are actually different connections) and
dispatching will happen twice.
Signed-off-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=55391
|
|
|
|
|
|
|
|
Reviewed-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Conflicts:
src/mcd-account-manager-default.c
|
|
Conflicts:
NEWS
configure.ac
|
|
|
|
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=42088
Bug-Debian: http://bugs.debian.org/687933
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=42088
Cherry-picked-from: c21e2b09bf4cdda6fb05d64f9198f6db7b776c76
|
|
It used to be where we kept accounts; now it's only the source for
account migration into XDG_DATA_HOME.
Keep its name the same, so that if a user or distribution is configuring
with --with-accounts-dir="~/.mc-accounts" or something, the migration
works as intended as long as they continue to do so. (We don't
recommend doing so, though.)
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
If the user has ~/.mission-control/accounts/accounts.cfg we migrate
from there to XDG_DATA_HOME/telepathy/mission-control/accounts.cfg,
and if successful, delete the old name.
If the user has XDG_DATA_DIRS/telepathy/mission-control/accounts.cfg
(in a lower-priority path element than XDG_DATA_HOME), we use it,
with copy-on-write into XDG_DATA_HOME.
(Limitation: the account-store executable used in some tests only reads
from XDG_DATA_HOME, and doesn't understand the XDG_DATA_DIRS and
MC_ACCOUNT_DIR fallback.)
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Also check for errors - we can at least give a useful warning.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
This isolates all file-writing into _commit, and all file-reading into
am_default_load_keyfile.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
This is the easy part of XDGification: there is no plugin involvement or
anything for avatars (yet!), it's just hard-coded.
Changing the avatar location from a single directory to a search path
results in some new corner cases, so test them.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
I keep calling g_mkdir_with_parents() and expecting it to return a
boolean (it doesn't, it returns 0 or -1), so it seems worth wrapping
it in something more sensible.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
We want to be sure that MC is using the right one in each situation.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35896
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
|
|
Eavesdropping on method replies breaks libdbus if you call methods using the
same connection. You can get into a situation like this:
* Test calls a method on MC; say the serial number is 42
* At around the same time, MC calls a method on gnome-keyring and also uses
serial number 42
* gnome-keyring replies, labelled "in reply to 42"
* Test is eavesdropping, so it sees the reply going from gnome-keyring to MC
* Test interprets the reply from gnome-keyring to MC as the reply it was
expecting from MC, sees completely the wrong types, and becomes
confused
This seems unlikely - but because serial numbers are sequential and
start from 1 for each connection (as opposed to starting from a random
offset), two connections can quite easily happen to sync up. I saw it
happen most recently in the gnome-keyring test. With the benefit
of hindsight, I think I've seen this before: whenever the tests
made an Introspect() call which returned a type other than 's', that
was probably this bug.
We never actually generated events for messages other than signals and
method calls, so match those ones specifically, and don't eavesdrop on
replies.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54495
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Jonny Lamb <jonny.lamb@collabora.co.uk>
|
|
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Xavier Claessens <xavier.claessens@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54633
|