I've noticed that when I try to dispose an instance of TpAccountManager without preparing it, it shows the following:
(process:7055): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `TpAccountManager'
(process:7055): GLib-CRITICAL **: g_hash_table_lookup: assertion `hash_table != NULL' failed
(process:7055): tp-glib-CRITICAL **: tp_account_manager_is_prepared: assertion `TP_IS_ACCOUNT_MANAGER (manager)' failed
Depending on the situation, the process trying to dispose may segfault.
Is this reproducible? If so, could you please enable fatal warnings (export G_DEBUG=fatal_warnings,fatal_criticals) and get a gdb stack trace for it?
I cannot reproduce it.
When I filed the bug, it was sufficient to _dup() _get_valid_accounts() without being prepared and g_object_unref() the AM to reproduce it, IIRC. When it happened, there were a good chance to segfault.
I couldn't reproduce the exact situation for it to segfault, though.
Might this be a dup of Bug #31321?