assertions when stopping unityshell plugin: g_hash_table_remove_internal: assertion `hash_table != NULL' failed

Bug #1168629 reported by Adam Dingle
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Unity
Triaged
Low
Unassigned
unity (Ubuntu)
Triaged
Low
Unassigned

Bug Description

Every time the unityshell plugin is unloaded from compiz, this critical assertion is printed many times:

(compiz:11468): GLib-CRITICAL **: g_hash_table_remove_internal: assertion `hash_table != NULL' failed

To see this, use CompizConfig Settings Manager to enable a new plugin such as the JPEG image loader. That will cause all existing plugins to be reloaded, and the assertion above will appear many times in .xsession-errors.

The assertion might be benign, but we should still find and fix it.

Revision history for this message
Adam Dingle (adam-yorba) wrote :

By the way, I'm running compiz 1:0.9.9~daily13.04.10-0ubuntu1 and unity 7.0.0daily13.04.10-0ubuntu1 on Ubuntu Raring. Here's a stack trace for the assertion:

#0 g_logv (log_domain=0x7ffff5bc994e "GLib", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=args@entry=0x7fffffffde08)
    at /build/buildd/glib2.0-2.36.0/./glib/gmessages.c:981
#1 0x00007ffff5b8e492 in g_log (log_domain=log_domain@entry=0x7ffff5bc994e "GLib", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL,
    format=format@entry=0x7ffff5bd338a "%s: assertion `%s' failed") at /build/buildd/glib2.0-2.36.0/./glib/gmessages.c:1010
#2 0x00007ffff5b8e4b9 in g_return_if_fail_warning (log_domain=log_domain@entry=0x7ffff5bc994e "GLib",
    pretty_function=pretty_function@entry=0x7ffff5bce5c0 <__PRETTY_FUNCTION__.4671> "g_hash_table_remove_internal",
    expression=expression@entry=0x7ffff5bce304 "hash_table != NULL") at /build/buildd/glib2.0-2.36.0/./glib/gmessages.c:1019
#3 0x00007ffff5b760ad in g_hash_table_remove_internal (hash_table=<optimized out>, key=<optimized out>, notify=<optimized out>)
    at /build/buildd/glib2.0-2.36.0/./glib/ghash.c:1269
#4 g_hash_table_remove_internal (hash_table=0x0, key=0x136d310, notify=1) at /build/buildd/glib2.0-2.36.0/./glib/ghash.c:1262
#5 0x00007fffe6d3e12f in nux::Object::Destroy() () from /usr/lib/x86_64-linux-gnu/libnux-core-4.0.so.0
#6 0x00007fffe6d3e3d2 in nux::Object::UnReference() () from /usr/lib/x86_64-linux-gnu/libnux-core-4.0.so.0
#7 0x00007fffe2c22a7a in unity::panel::Controller::~Controller() () from /usr/lib/compiz/libunityshell.so
#8 0x00007fffe2b2902a in unity::UnityScreen::~UnityScreen() () from /usr/lib/compiz/libunityshell.so
#9 0x00007fffe2b29449 in unity::UnityScreen::~UnityScreen() () from /usr/lib/compiz/libunityshell.so
#10 0x00007ffff7ba0658 in CompManager::finiPlugin(CompPlugin*) () from /usr/lib/libcompiz_core.so.ABI-20130125
#11 0x00007ffff7ba1db1 in CompPlugin::pop() () from /usr/lib/libcompiz_core.so.ABI-20130125
#12 0x00007ffff7b71e2f in compiz::private_screen::PluginManager::updatePlugins(CompScreen*, std::vector<CompOption::Value, std::allocator<CompOption::Value> > const&) ()
   from /usr/lib/libcompiz_core.so.ABI-20130125
#13 0x00007ffff7b735d2 in PrivateScreen::processEvents() () from /usr/lib/libcompiz_core.so.ABI-20130125
#14 0x00007ffff7ba70c7 in CompEventSource::callback() () from /usr/lib/libcompiz_core.so.ABI-20130125
#15 0x00007ffff608697f in Glib::Source::dispatch_vfunc(_GSource*, int (*)(void*), void*) () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1
#16 0x00007ffff5b86f05 in g_main_dispatch (context=0x615f90) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3054
#17 g_main_context_dispatch (context=context@entry=0x615f90) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3630
#18 0x00007ffff5b87248 in g_main_context_iterate (context=0x615f90, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3701
#19 0x00007ffff5b876ba in g_main_loop_run (loop=0x615cb0) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3895
#20 0x000000000040194b in main ()

Changed in unity:
importance: Undecided → Low
Changed in unity (Ubuntu):
importance: Undecided → Low
Changed in unity:
status: New → Triaged
Changed in unity (Ubuntu):
status: New → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.