Settings segfaults if user cancels the password dialog by pressing Escape
Settings segfaults if the user cancels the password dialog in Users panel
Version: current master
How to reproduce:
- g-c-c -> Details -> Users
- Click on the password change button
- Press 'Escape'
Result: gnome-control-center segfaults
where:
$ G_DEBUG=fatal-criticals gdb gnome-control-center
...
0x00007ffff7ce70ad in _g_log_abort (breakpoint=1) at ../../../../jhbuild/checkout/glib/glib/gmessages.c:554
554 G_BREAKPOINT ();
(gdb) where
#0 0x00007ffff7ce70ad in _g_log_abort (breakpoint=1) at ../../../../jhbuild/checkout/glib/glib/gmessages.c:554
#1 0x00007ffff7ce81b3 in g_logv (log_domain=0x7ffff648b539 "accountsservice", log_level=G_LOG_LEVEL_CRITICAL,
format=<optimized out>, args=args@entry=0x7fffffffc068)
at ../../../../jhbuild/checkout/glib/glib/gmessages.c:1371
#2 0x00007ffff7ce846d in g_log (log_domain=log_domain@entry=0x7ffff648b539 "accountsservice",
log_level=log_level@entry=G_LOG_LEVEL_CRITICAL,
format=format@entry=0x7ffff7d33b8f "%s: assertion '%s' failed")
at ../../../../jhbuild/checkout/glib/glib/gmessages.c:1413
#3 0x00007ffff7ce8a19 in g_return_if_fail_warning (log_domain=log_domain@entry=0x7ffff648b539 "accountsservice",
pretty_function=pretty_function@entry=0x7ffff648cf40 <__func__.30207> "act_user_get_user_name",
expression=expression@entry=0x7ffff648c42b "ACT_IS_USER (user)")
at ../../../../jhbuild/checkout/glib/glib/gmessages.c:2767
#4 0x00007ffff647aafa in act_user_get_user_name (user=<optimized out>)
at ../../../../jhbuild/checkout/accountsservice/src/libaccountsservice/act-user.c:714
#5 0x0000555555664174 in update_password_strength (self=self@entry=0x5555561e2750)
at ../../../../jhbuild/checkout/gnome-control-center/panels/user-accounts/cc-password-dialog.c:82
#6 0x00005555556642bb in update_sensitivity (self=self@entry=0x5555561e2750)
at ../../../../jhbuild/checkout/gnome-control-center/panels/user-accounts/cc-password-dialog.c:209
#7 0x0000555555664741 in old_password_entry_timeout (self=self@entry=0x5555561e2750)
at ../../../../jhbuild/checkout/gnome-control-center/panels/user-accounts/cc-password-dialog.c:365
#8 0x00005555556647ae in old_password_entry_focus_out_cb (self=self@entry=0x5555561e2750)
at ../../../../jhbuild/checkout/gnome-control-center/panels/user-accounts/cc-password-dialog.c:385
#9 0x00007ffff7584892 in _gtk_marshal_BOOLEAN__BOXED (closure=closure@entry=0x555556509dc0,
--Type <RET> for more, q to quit, c to continue without paging--
lue@entry=0x7fffffffc360, n_param_values=n_param_values@entry=2, param_values=param_values@entry=0x7fffffffc3f0,
invocation_hint=invocation_hint@entry=0x7fffffffc390, marshal_data=marshal_data@entry=0x0) at gtk/gtkmarshalers.c:84
#10 0x00007ffff7dc41ba in g_closure_invoke (closure=0x555556509dc0, return_value=return_value@entry=0x7fffffffc360, n_param_values=2,
param_values=param_values@entry=0x7fffffffc3f0, invocation_hint=invocation_hint@entry=0x7fffffffc390)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:810
#11 0x00007ffff7dd570d in signal_emit_unlocked_R (node=node@entry=0x555555a160b0, detail=detail@entry=0, instance=instance@entry=0x555555b3ee60,
emission_return=emission_return@entry=0x7fffffffc4c0, instance_and_params=instance_and_params@entry=0x7fffffffc3f0)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3705
#12 0x00007ffff7dda022 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>,
var_args=var_args@entry=0x7fffffffc578) at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3401
#13 0x00007ffff7dda6fd in g_signal_emit (instance=instance@entry=0x555555b3ee60, signal_id=<optimized out>, detail=detail@entry=0)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#14 0x00007ffff785890c in gtk_widget_event_internal (widget=widget@entry=0x555555b3ee60, event=event@entry=0x5555564260d0)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:7789
#15 0x00007ffff785ac8c in gtk_widget_event (widget=widget@entry=0x555555b3ee60, event=event@entry=0x5555564260d0)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:7359
#16 0x00007ffff786c971 in gtk_widget_send_focus_change (widget=widget@entry=0x555555b3ee60, event=event@entry=0x5555564260d0)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:16221
#17 0x00007ffff78702f6 in do_focus_change (widget=0x555555b3ee60, in=0) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwindow.c:8447
#18 0x00007ffff78705ea in gtk_window_real_set_focus (window=<optimized out>, focus=0x0) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwindow.c:8734
#19 0x00007ffff7dc71a2 in g_cclosure_marshal_VOID__OBJECTv (closure=0x555555a14460, return_value=<optimized out>, instance=<optimized out>,
args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x555555a144d0)
at ../../../../jhbuild/checkout/glib/gobject/gmarshal.c:1910
#20 0x00007ffff7dc43e1 in _g_closure_invoke_va (closure=closure@entry=0x555555a14460, return_value=return_value@entry=0x0,
instance=instance@entry=0x5555561e2750, args=args@entry=0x7fffffffc988, n_params=1, param_types=0x555555a144d0)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#21 0x00007ffff7dd9c98 in g_signal_emit_valist (instance=0x5555561e2750, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffc988)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3300
#22 0x00007ffff7dda6fd in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#23 0x00007ffff78763c1 in gtk_window_dispose (object=0x5555561e2750) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwindow.c:3160
#24 0x00007ffff7dca7b8 in g_object_run_dispose (object=0x5555561e2750) at ../../../../jhbuild/checkout/glib/gobject/gobject.c:1130
#25 0x00007ffff7dc43e1 in _g_closure_invoke_va (closure=closure@entry=0x5555561bf8c0, return_value=return_value@entry=0x0,
instance=instance@entry=0x5555561ab500, args=args@entry=0x7fffffffcc88, n_params=0, param_types=0x0)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#26 0x00007ffff7dd9c98 in g_signal_emit_valist (instance=0x5555561ab500, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffcc88)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3300
#27 0x00007ffff7dda6fd in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=detail@entry=0)
--Type <RET> for more, q to quit, c to continue without paging--
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#28 0x00007ffff75d0c0a in gtk_button_clicked (button=<optimized out>) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkbutton.c:1541
#29 0x00007ffff75d0c7d in gtk_button_do_release (button=0x5555561ab500, emit_clicked=<optimized out>)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkbutton.c:1845
#30 0x00007ffff7dc43e1 in _g_closure_invoke_va (closure=closure@entry=0x555555fae660, return_value=return_value@entry=0x0,
instance=instance@entry=0x5555561ab500, args=args@entry=0x7fffffffcf58, n_params=0, param_types=0x0)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#31 0x00007ffff7dd9c98 in g_signal_emit_valist (instance=0x5555561ab500, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffcf58)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3300
#32 0x00007ffff7dda6fd in g_signal_emit (instance=instance@entry=0x5555561ab500, signal_id=<optimized out>, detail=detail@entry=0)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#33 0x00007ffff75d001c in multipress_released_cb (gesture=0x5555561ac5b0, n_press=<optimized out>, x=<optimized out>, y=<optimized out>,
widget=<optimized out>) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkbutton.c:666
#34 0x00007ffff758adb2 in _gtk_marshal_VOID__INT_DOUBLE_DOUBLEv (closure=closure@entry=0x5555561b8590, return_value=return_value@entry=0x0,
instance=instance@entry=0x5555561ac5b0, args=args@entry=0x7fffffffd268, marshal_data=marshal_data@entry=0x0, n_params=n_params@entry=3,
param_types=0x555555faf360) at gtk/gtkmarshalers.c:4804
#35 0x00007ffff7dc43e1 in _g_closure_invoke_va (closure=closure@entry=0x5555561b8590, return_value=return_value@entry=0x0,
instance=instance@entry=0x5555561ac5b0, args=args@entry=0x7fffffffd268, n_params=3, param_types=0x555555faf360)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#36 0x00007ffff7dd9c98 in g_signal_emit_valist (instance=0x5555561ac5b0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd268)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3300
#37 0x00007ffff7dda6fd in g_signal_emit (instance=instance@entry=0x5555561ac5b0, signal_id=<optimized out>, detail=detail@entry=0)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#38 0x00007ffff76aa143 in gtk_gesture_multi_press_end (gesture=0x5555561ac5b0, sequence=<optimized out>)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkgesturemultipress.c:287
#39 0x00007ffff7dc6ecb in g_cclosure_marshal_VOID__BOXEDv (closure=0x555555faf8b0, return_value=<optimized out>, instance=<optimized out>,
args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x555555faf8e0)
at ../../../../jhbuild/checkout/glib/gobject/gmarshal.c:1686
#40 0x00007ffff7dc43e1 in _g_closure_invoke_va (closure=closure@entry=0x555555faf8b0, return_value=return_value@entry=0x0,
instance=instance@entry=0x5555561ac5b0, args=args@entry=0x7fffffffd5c8, n_params=1, param_types=0x555555faf8e0)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#41 0x00007ffff7dd9c98 in g_signal_emit_valist (instance=0x5555561ac5b0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd5c8)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3300
#42 0x00007ffff7dda6fd in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#43 0x00007ffff76a6971 in _gtk_gesture_check_recognized (gesture=gesture@entry=0x5555561ac5b0, sequence=sequence@entry=0x0)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkgesture.c:387
#44 0x00007ffff76a84fb in gtk_gesture_handle_event (controller=<optimized out>, event=0x555556426170)
--Type <RET> for more, q to quit, c to continue without paging--
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkgesture.c:815
#45 0x00007ffff76abaab in gtk_gesture_single_handle_event (controller=0x5555561ac5b0, event=0x555556426170)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkgesturesingle.c:222
#46 0x00007ffff766b8a6 in gtk_event_controller_handle_event (controller=0x5555561ac5b0, event=event@entry=0x555556426170)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkeventcontroller.c:230
#47 0x00007ffff7856543 in _gtk_widget_run_controllers (widget=0x5555561ab500, event=0x555556426170, phase=GTK_PHASE_BUBBLE)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:7424
#48 0x00007ffff7584982 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x555555a191f0, return_value=0x7fffffffd940, instance=<optimized out>,
args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x555555a19220) at gtk/gtkmarshalers.c:130
#49 0x00007ffff7dc43e1 in _g_closure_invoke_va (closure=closure@entry=0x555555a191f0, return_value=return_value@entry=0x7fffffffd940,
instance=instance@entry=0x5555561ab500, args=args@entry=0x7fffffffda38, n_params=1, param_types=0x555555a19220)
at ../../../../jhbuild/checkout/glib/gobject/gclosure.c:873
#50 0x00007ffff7dd9c98 in g_signal_emit_valist (instance=0x5555561ab500, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffda38)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3300
#51 0x00007ffff7dda6fd in g_signal_emit (instance=instance@entry=0x5555561ab500, signal_id=<optimized out>, detail=detail@entry=0)
at ../../../../jhbuild/checkout/glib/gobject/gsignal.c:3447
#52 0x00007ffff785890c in gtk_widget_event_internal (widget=widget@entry=0x5555561ab500, event=event@entry=0x555556426170)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:7789
#53 0x00007ffff785ac8c in gtk_widget_event (widget=widget@entry=0x5555561ab500, event=event@entry=0x555556426170)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkwidget.c:7359
#54 0x00007ffff76f802f in propagate_event_up (widget=widget@entry=0x5555561ab500, event=event@entry=0x555556426170, topmost=topmost@entry=0x0)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkmain.c:2582
#55 0x00007ffff76f84a1 in propagate_event (widget=widget@entry=0x5555561ab500, event=event@entry=0x555556426170, captured=captured@entry=0,
topmost=topmost@entry=0x0) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkmain.c:2654
#56 0x00007ffff76f9dbb in gtk_propagate_event (widget=widget@entry=0x5555561ab500, event=event@entry=0x555556426170)
at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkmain.c:2719
#57 0x00007ffff76fa43b in gtk_main_do_event (event=0x555556426170) at ../../../../jhbuild/checkout/gtk+-3/gtk/gtkmain.c:1915
#58 0x00007ffff74221cd in _gdk_event_emit (event=event@entry=0x555556426170) at ../../../../jhbuild/checkout/gtk+-3/gdk/gdkevents.c:73
#59 0x00007ffff747d8ba in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>)
at ../../../../jhbuild/checkout/gtk+-3/gdk/x11/gdkeventsource.c:367
#60 0x00007ffff7cde1e2 in g_main_dispatch (context=context@entry=0x555555a05240) at ../../../../jhbuild/checkout/glib/glib/gmain.c:3173
#61 0x00007ffff7ce0fa8 in g_main_context_dispatch (context=0x555555a05240) at ../../../../jhbuild/checkout/glib/glib/gmain.c:3838
#62 0x00007ffff7ce1148 in g_main_context_iterate (context=context@entry=0x555555a05240, block=block@entry=1, dispatch=dispatch@entry=1,
self=<optimized out>) at ../../../../jhbuild/checkout/glib/glib/gmain.c:3911
#63 0x00007ffff7ce11cf in g_main_context_iteration (context=context@entry=0x555555a05240, may_block=may_block@entry=1)
at ../../../../jhbuild/checkout/glib/glib/gmain.c:3972
#64 0x00007ffff7edafbd in g_application_run (application=0x555555ca9320, argc=<optimized out>, argv=0x7fffffffded8)
at ../../../../jhbuild/checkout/glib/gio/gapplication.c:2538