Criticals upon exiting the application
Hello,
I'm currently bumping gnote to 3.38.0 in Alpine Linux and I've noticed that it throws some criticals after closing the application:
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_ref: assertion 'G_IS_OBJECT (object)' failed
(gnote:13654): GLib-GObject-WARNING **: 10:23:12.568: invalid unclassed pointer in cast to 'GObject'
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_freeze_notify: assertion 'G_IS_OBJECT (object)' failed
(gnote:13654): Gtk-CRITICAL **: 10:23:12.568: gtk_widget_has_default: assertion 'GTK_IS_WIDGET (widget)' failed
(gnote:13654): Gtk-CRITICAL **: 10:23:12.568: gtk_widget_get_receives_default: assertion 'GTK_IS_WIDGET (widget)' failed
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_ref: assertion 'G_IS_OBJECT (object)' failed
(gnote:13654): Gtk-CRITICAL **: 10:23:12.568: gtk_widget_get_display: assertion 'GTK_IS_WIDGET (widget)' failed
(gnote:13654): Gdk-CRITICAL **: 10:23:12.568: gdk_display_get_device_manager: assertion 'GDK_IS_DISPLAY (display)' failed
(gnote:13654): Gdk-CRITICAL **: 10:23:12.568: gdk_device_manager_list_devices: assertion 'GDK_IS_DEVICE_MANAGER (device_manager)' failed
(gnote:13654): Gdk-CRITICAL **: 10:23:12.568: gdk_device_manager_list_devices: assertion 'GDK_IS_DEVICE_MANAGER (device_manager)' failed
(gnote:13654): Gdk-CRITICAL **: 10:23:12.568: gdk_device_manager_list_devices: assertion 'GDK_IS_DEVICE_MANAGER (device_manager)' failed
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
(gnote:13654): GLib-GObject-WARNING **: 10:23:12.568: invalid unclassed pointer in cast to 'GObject'
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_notify: assertion 'G_IS_OBJECT (object)' failed
(gnote:13654): Gtk-CRITICAL **: 10:23:12.568: gtk_widget_has_default: assertion 'GTK_IS_WIDGET (widget)' failed
(gnote:13654): GLib-GObject-WARNING **: 10:23:12.568: invalid unclassed pointer in cast to 'GObject'
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_thaw_notify: assertion 'G_IS_OBJECT (object)' failed
(gnote:13654): GLib-GObject-CRITICAL **: 10:23:12.568: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Here's the backtrace with G_DEBUG=fatal_warnings
:
#0 g_logv (log_domain=0x7ffff68c83a7 "GLib-GObject", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1377
#1 0x00007ffff67b151f in g_log (log_domain=log_domain@entry=0x7ffff68c83a7 "GLib-GObject", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7ffff6808c53 "%s: assertion '%s' failed")
at ../glib/gmessages.c:1415
#2 0x00007ffff67b1d09 in g_return_if_fail_warning
(log_domain=log_domain@entry=0x7ffff68c83a7 "GLib-GObject", pretty_function=pretty_function@entry=0x7ffff68cba98 <__func__.27> "g_object_ref", expression=expression@entry=0x7ffff68ca7db "G_IS_OBJECT (object)")
at ../glib/gmessages.c:2771
#3 0x00007ffff68a1b9c in g_object_ref (_object=_object@entry=0x7ffff42907b0) at ../gobject/gobject.c:3368
#4 0x00007ffff6f9a1b9 in gtk_window_real_set_focus (window=<optimized out>, focus=0x0) at ../gtk/gtkwindow.c:8711
#5 0x00007ffff7c47fc6 in Gtk::Window_Class::set_focus_callback(_GtkWindow*, _GtkWidget*) () at /usr/lib/libgtkmm-3.0.so.1
#6 0x00007ffff68a047d in g_cclosure_marshal_VOID__OBJECTv
(closure=0x7ffff48fc970, return_value=<optimized out>, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x7ffff4a6ad30)
at ../gobject/gmarshal.c:1910
#7 0x00007ffff689d3be in _g_closure_invoke_va
(closure=closure@entry=0x7ffff48fc970, return_value=return_value@entry=0x0, instance=instance@entry=0x7ffff42f62a0, args=args@entry=0x7fffffffd810, n_params=1, param_types=0x7ffff4a6ad30)
at ../gobject/gclosure.c:873
#8 0x00007ffff68b59e8 in g_signal_emit_valist (instance=0x7ffff42f62a0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd810) at ../gobject/gsignal.c:3403
#9 0x00007ffff68b5bdf in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at ../gobject/gsignal.c:3550
#10 0x00007ffff6fa20be in gtk_window_dispose (object=0x7ffff42f62a0 [gtkmm__GtkApplicationWindow]) at ../gtk/gtkwindow.c:3162
#11 0x00007ffff6cd3cb2 in gtk_application_window_dispose (object=0x7ffff42f62a0 [gtkmm__GtkApplicationWindow]) at ../gtk/gtkapplicationwindow.c:804
#12 0x00007ffff68a3509 in g_object_run_dispose (object=0x7ffff42f62a0 [gtkmm__GtkApplicationWindow]) at ../gobject/gobject.c:1226
#13 0x00007ffff7c48207 in Gtk::Window::_release_c_instance() () at /usr/lib/libgtkmm-3.0.so.1
#14 0x00007ffff7b9261d in () at /usr/lib/libgtkmm-3.0.so.1
#15 0x00005555555d50f9 in gnote::MainWindow::~MainWindow() (__vtt_parm=0x55555561ede8 <VTT for gnote::NoteRecentChanges+8>, this=0x7ffff42e2780, __in_chrg=<optimized out>) at mainwindow.hpp:33
#16 gnote::NoteRecentChanges::~NoteRecentChanges() (this=0x7ffff42e2780, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at recentchanges.cpp:139
#17 0x00005555555d5179 in gnote::NoteRecentChanges::~NoteRecentChanges() (this=0x7ffff42e2780, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at recentchanges.cpp:139
#18 0x00007ffff7c44a1e in () at /usr/lib/libgtkmm-3.0.so.1
#22 0x00007ffff68b5bdf in <emit signal ??? on instance 0x7ffff42f62a0 [gtkmm__GtkApplicationWindow]> (instance=instance@entry=0x7ffff42f62a0, signal_id=<optimized out>, detail=detail@entry=0)
at ../gobject/gsignal.c:3550
#19 0x00007ffff689d172 in g_closure_invoke
(closure=0x7ffff3fcad00, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fffffffdb60, invocation_hint=invocation_hint@entry=0x7fffffffdae0)
at ../gobject/gclosure.c:810
#20 0x00007ffff68af922 in signal_emit_unlocked_R
(node=node@entry=0x7ffff48f2880, detail=detail@entry=0, instance=instance@entry=0x7ffff42f62a0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffdb60)
at ../gobject/gsignal.c:3808
#21 0x00007ffff68b566f in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffdce0) at ../gobject/gsignal.c:3494
#23 0x00007ffff6f8ce0a in gtk_widget_hide (widget=0x7ffff42f62a0 [gtkmm__GtkApplicationWindow]) at ../gtk/gtkwidget.c:4949
#24 0x00005555555d1886 in gnote::NoteRecentChanges::close_window() (this=0x7ffff42e2780) at recentchanges.cpp:399
#25 0x00005555555cf45d in gnote::NoteRecentChanges::on_delete(_GdkEventAny*) (this=<optimized out>) at recentchanges.cpp:417
#26 0x00007ffff7c3eecb in () at /usr/lib/libgtkmm-3.0.so.1
#31 0x00007ffff68b5bdf in <emit signal ??? on instance 0x7ffff42f62a0 [gtkmm__GtkApplicationWindow]> (instance=instance@entry=0x7ffff42f62a0, signal_id=<optimized out>, detail=detail@entry=0)
at ../gobject/gsignal.c:3550
#27 0x00007ffff6ca4bab in _gtk_marshal_BOOLEAN__BOXED
(closure=closure@entry=0x7ffff3fc1e20, return_value=return_value@entry=0x7fffffffe040, n_param_values=n_param_values@entry=2, param_values=param_values@entry=0x7fffffffe0a0, invocation_hint=invocation_hint@entry=0x7fffffffe020, marshal_data=marshal_data@entry=0x0) at gtk/gtkmarshalers.c:84
#28 0x00007ffff689d172 in g_closure_invoke
(closure=0x7ffff3fc1e20, return_value=return_value@entry=0x7fffffffe040, n_param_values=2, param_values=param_values@entry=0x7fffffffe0a0, invocation_hint=invocation_hint@entry=0x7fffffffe020)
at ../gobject/gclosure.c:810
#29 0x00007ffff68af922 in signal_emit_unlocked_R
(node=<optimized out>, detail=detail@entry=0, instance=instance@entry=0x7ffff42f62a0, emission_return=emission_return@entry=0x7fffffffe190, instance_and_params=instance_and_params@entry=0x7fffffffe0a0)
at ../gobject/gsignal.c:3808
#30 0x00007ffff68b51f9 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffe240) at ../gobject/gsignal.c:3504
#32 0x00007ffff6f82cc4 in gtk_widget_event_internal (widget=0x7ffff42f62a0 [gtkmm__GtkApplicationWindow], event=0x7ffff48ea4a0) at ../gtk/gtkwidget.c:7808
#33 0x00007ffff6f85262 in gtk_widget_event_internal (event=<optimized out>, widget=<optimized out>) at ../gtk/gtkwidget.c:7687
#34 gtk_widget_event (widget=<optimized out>, event=<optimized out>) at ../gtk/gtkwidget.c:7378
#35 0x00000000f48ea4a0 in ()
#36 0x00007ffff59e1e10 in ()
#37 0x0000000000000000 in ()