touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #74781
[Bug 1450494] Re: Unity8 welcome wizard crashes after changing language
** Changed in: qmenumodel (Ubuntu)
Assignee: (unassigned) => Michael Terry (mterry)
** Changed in: qmenumodel (Ubuntu)
Status: New => In Progress
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to qmenumodel in Ubuntu.
https://bugs.launchpad.net/bugs/1450494
Title:
Unity8 welcome wizard crashes after changing language
Status in qmenumodel package in Ubuntu:
In Progress
Bug description:
To reproduce:
- start the welcome wizard on an Ubuntu Touch phone
- click 'Continue'
- click 'Back'
- change language
- click 'Continue'
- click 'Back'
Repeat those last three steps a few times and you will eventually
create a crash (usually within 5 tries).
It is because of a libqmenumodel bug triggered when we restart the
indicators to force them to notice the new language.
Below is a stacktrace for the g_variant_unref failure (trying to unref
a GVariant without any refs, with fatal-criticals turned on). The
problem is that GtkMenuTrackerItem tries to unref its stored state
GVariant on finalize, when it already unref'd it earlier. Branch
attached to this bug.
#0 0xffffffff in () at /lib/arm-linux-gnueabihf/libc.so.6
#1 0xffffffff in raise () at /lib/arm-linux-gnueabihf/libc.so.6
#2 0xffffffff in g_logv (breakpoint=1)
at /build/buildd/glib2.0-2.44.0/./glib/gmessages.c:315
#3 0xffffffff in g_logv (log_domain=0xb5cb1860 "GLib", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0xb39435bc <g.notify_lock_lock> "", args=..., args@entry=...)
at /build/buildd/glib2.0-2.44.0/./glib/gmessages.c:1041
#4 0xffffffff in g_log (log_domain=<optimized out>, log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=0xb5cba5dc "%s: assertion '%s' failed")
at /build/buildd/glib2.0-2.44.0/./glib/gmessages.c:1079
#5 0xffffffff in g_return_if_fail_warning (log_domain=<optimized out>, pretty_function=<optimized out>, expression=<optimized out>)
at /build/buildd/glib2.0-2.44.0/./glib/gmessages.c:1088
#6 0xffffffff in gtk_menu_tracker_item_finalize (object=0x10abae0 [GtkMenuTrackerItem])
at /build/buildd/qmenumodel-0.2.9+15.04.20150108/libqmenumodel/src/gtk/gtkmenutrackeritem.c:205
#7 0xffffffff in g_object_unref (_object=0x10abae0)
at /build/buildd/glib2.0-2.44.0/./gobject/gobject.c:3174
#8 0xffffffff in real_node_free (node=0xade173c0, seq=0x10df290)
at /build/buildd/glib2.0-2.44.0/./glib/gsequence.c:1793
#9 0xffffffff in UnityMenuModel::event(QEvent*) (this=
---Type <return> to continue, or q <return> to quit---
0xfa4970, e=<optimized out>)
at /build/buildd/qmenumodel-0.2.9+15.04.20150108/libqmenumodel/src/unitymenumodel.cpp:789
#10 0xffffffff in QCoreApplication::notify(QObject*, QEvent*) ()
at /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
#11 0xffffffff in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
at /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
#12 0xffffffff in UnityMenuModelPrivate::menuItemRemoved(int, void*) (event=0xbedfeb04, receiver=<optimized out>)
at /usr/include/arm-linux-gnueabihf/qt5/QtCore/qcoreapplication.h:237
#13 0xffffffff in UnityMenuModelPrivate::menuItemRemoved(int, void*) (position=<optimized out>, user_data=0xc5c160)
at /build/buildd/qmenumodel-0.2.9+15.04.20150108/libqmenumodel/src/unitymenumodel.cpp:260
#14 0xffffffff in gtk_menu_tracker_model_changed (tracker=0xade18b48, tracker=0xade18b48, n_items=1, offset=0, change_point=0xade18b34)
at /build/buildd/qmenumodel-0.2.9+15.04.20150108/libqmenumodel/src/gtk/gtkmenutracker.c:257
#15 0xffffffff in gtk_menu_tracker_model_changed (model=0x1185660 [GDBusMenuModel], position=0, removed=1, added=0, user_data=0xade18b48)
at /build/buildd/qmenumodel-0.2.9+15.04.20150108/libqmenumodel/src/gtk/gtkmenutracker.c:354
#16 0xffffffff in ffi_call_VFP () at /usr/lib/arm-linux-gnueabihf/libffi.so.6
---Type <return> to continue, or q <return> to quit---
#17 0xffffffff in ffi_call () at /usr/lib/arm-linux-gnueabihf/libffi.so.6
#22 0xffffffff in <emit signal ??? on instance 0x1185660 [GDBusMenuModel]> (instance=<optimized out>, signal_id=<optimized out>, detail=0)
at /build/buildd/glib2.0-2.44.0/./gobject/gsignal.c:3361
#18 0xffffffff in g_cclosure_marshal_generic (closure=<optimized out>, return_gvalue=<optimized out>, n_param_values=4, param_values=<optimized out>, invocation_hint=0xbedfede8, marshal_data=0x0)
at /build/buildd/glib2.0-2.44.0/./gobject/gclosure.c:1448
#19 0xffffffff in g_closure_invoke (closure=0xed0ac0, return_value=0x0, n_param_values=4, param_values=0xbedfee30, invocation_hint=0xbedfede8)
at /build/buildd/glib2.0-2.44.0/./gobject/gclosure.c:768
#20 0xffffffff in signal_emit_unlocked_R (node=node@entry=0x85f3b8, detail=detail@entry=0, instance=0x1185660,
instance@entry=0xb6226000, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0xbedfee30)
at /build/buildd/glib2.0-2.44.0/./gobject/gsignal.c:3549
#21 0xffffffff in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=detail@entry=3202346924, var_args=...,
var_args@entry=...)
at /build/buildd/glib2.0-2.44.0/./gobject/gsignal.c:3305
#23 0xffffffff in g_menu_model_items_changed (model=<optimized out>, position=position@entry=0, removed=removed@entry=1, added=added@entry=0)
at /build/buildd/glib2.0-2.44.0/./gio/gmenumodel.c:688
---Type <return> to continue, or q <return> to quit---
#24 0xffffffff in g_dbus_menu_group_changed (added=0, removed=1, position=0, items=0xb95310, proxy=<optimized out>)
at /build/buildd/glib2.0-2.44.0/./gio/gdbusmenumodel.c:832
#25 0xffffffff in g_dbus_menu_group_changed (group=0x1185640, menu_id=0, position=0, removed=1, added=added@entry=0xade16408)
at /build/buildd/glib2.0-2.44.0/./gio/gdbusmenumodel.c:635
#26 0xffffffff in g_dbus_menu_path_signal (connection=<optimized out>, sender_name=<optimized out>, object_path=<optimized out>, interface_name=<optimized out>, signal_name=0xade13e60 "Changed", parameters=0xade0fd00, user_data=0xbea6c0)
at /build/buildd/glib2.0-2.44.0/./gio/gdbusmenumodel.c:298
#27 0xffffffff in emit_signal_instance_in_idle_cb (data=<optimized out>)
at /build/buildd/glib2.0-2.44.0/./gio/gdbusconnection.c:3753
#28 0xffffffff in g_main_context_dispatch (context=0x6fd958)
at /build/buildd/glib2.0-2.44.0/./glib/gmain.c:3122
#29 0xffffffff in g_main_context_dispatch (context=context@entry=0x6fd958)
at /build/buildd/glib2.0-2.44.0/./glib/gmain.c:3737
#30 0xffffffff in g_main_context_iterate (context=context@entry=0x6fd958, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
at /build/buildd/glib2.0-2.44.0/./glib/gmain.c:3808
#31 0xffffffff in g_main_context_iteration (context=0x6fd958, may_block=1)
at /build/buildd/glib2.0-2.44.0/./glib/gmain.c:3869
#32 0xffffffff in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
---Type <return> to continue, or q <return> to quit---
#33 0xffffffff in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
#34 0xffffffff in QCoreApplication::exec() ()
at /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
#35 0x000156a0 in main(int, char const**) (argc=1, argv=0xbedff4a4)
at /home/phablet/u8/trunk/src/main.cpp:121
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qmenumodel/+bug/1450494/+subscriptions
References