Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • gtk gtk
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,552
    • Issues 1,552
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 222
    • Merge requests 222
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOMEGNOME
  • gtkgtk
  • Issues
  • #1327
Closed
Open
Issue created Sep 11, 2018 by Philippe Normand@philn

GtkApplication: d-bus impl doesn't assume inhibit reason is allow-none

While testing my app with flatpak-builder I found some critical warnings are raised: https://github.com/flathub/flathub/pull/617

#0  0x00007ffff59ff910 in g_log (log_domain=log_domain@entry=0x7ffff5a41a6e "GLib", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7ffff5a4b967 "%s: assertion '%s' failed") at gmessages.c:1428
#1  0x00007ffff5a001c9 in g_return_if_fail_warning (log_domain=log_domain@entry=0x7ffff5a41a6e "GLib", pretty_function=pretty_function@entry=0x7ffff5aa0950 <__func__.6039> "g_variant_new_string", expression=expression@entry=0x7ffff5aa26b2 "string != NULL") at gmessages.c:2809
#2  0x00007ffff5a2e57a in g_variant_new_string (string=string@entry=0x0) at gvariant.c:1256
#3  0x00007ffff6e99a5a in gtk_application_impl_dbus_inhibit (impl=0x7fffec54f510 [GtkApplicationImplX11], window=<optimized out>, flags=(GTK_APPLICATION_INHIBIT_SUSPEND | GTK_APPLICATION_INHIBIT_IDLE), reason=0x0) at gtkapplication-dbus.c:544
#4  0x000055555559ca80 in  ()
#5  0x00005555555a497f in  ()
#6  0x000055555557c6ac in  ()
#7  0x000055555558ed54 in  ()
#8  0x000055555558e04f in  ()
#12 0x00007ffff5ceed9f in <emit signal ??? on instance 0x7fffec4ef0f0 [GSimpleAction]> (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>) at gsignal.c:3447
    #9  0x00007ffff5cd35f5 in g_closure_invoke (closure=0x7fffe997bb00, return_value=return_value@entry=0x0, n_param_values=2, param_values=param_values@entry=0x7fffffffcdd0, invocation_hint=invocation_hint@entry=0x7fffffffcd50) at gclosure.c:804
    #10 0x00007ffff5ce5ef2 in signal_emit_unlocked_R (node=node@entry=0x7fffe98ebc80, detail=detail@entry=0, instance=instance@entry=0x7fffec4ef0f0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffcdd0) at gsignal.c:3635
    #11 0x00007ffff5cee9b8 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_args@entry=0x7fffffffcf90) at gsignal.c:3391
#13 0x00007ffff6bc356e in gtk_action_muxer_activate_action (action_group=0x7fffe992d980, action_name=0x7fffe983e531 "app.fullscreen", parameter=0x0) at gtkactionmuxer.c:412
#14 0x00007ffff6bc35a4 in gtk_action_muxer_activate_action (action_group=0x7fffe9860180, action_name=0x7fffe983e531 "app.fullscreen", parameter=0x0) at gtkactionmuxer.c:414
#15 0x00007ffff6bc35a4 in gtk_action_muxer_activate_action (action_group=0x7fffe99614c0, action_name=0x7fffe983e531 "app.fullscreen", parameter=0x0) at gtkactionmuxer.c:414
#16 0x00007ffff6bdd145 in gtk_application_accels_activate (accels=<optimized out>, action_group=action_group@entry=0x7fffe99614c0, key=102, modifier=GDK_META_MASK) at gtkapplicationaccels.c:448
#17 0x00007ffff6e709b1 in gtk_window_activate_key (window=window@entry=0x7fffe985a2a0 [GtkApplicationWindow], event=event@entry=0x7fffe580fb60) at gtkwindow.c:11986
#18 0x00007ffff6e70ac1 in gtk_window_key_press_event (widget=0x7fffe985a2a0 [GtkApplicationWindow], event=0x7fffe580fb60) at gtkwindow.c:8190
#19 0x00007ffff6cfeb91 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x7fffec4d89a0, return_value=0x7fffffffd3a0, instance=0x7fffe985a2a0, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x7fffec670468) at gtkmarshalers.c:130
#20 0x00007ffff5cd3824 in _g_closure_invoke_va (closure=closure@entry=0x7fffec4d89a0, return_value=return_value@entry=0x7fffffffd3a0, instance=instance@entry=0x7fffe985a2a0, args=args@entry=0x7fffffffd470, n_params=<optimized out>, param_types=0x7fffec670468) at gclosure.c:867
#21 0x00007ffff5cee171 in g_signal_emit_valist (instance=0x7fffe985a2a0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd470) at gsignal.c:3300
#22 0x00007ffff5ceed9f in g_signal_emit (instance=instance@entry=0x7fffe985a2a0, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3447
#23 0x00007ffff6e4c4cc in gtk_widget_event_internal (widget=0x7fffe985a2a0 [GtkApplicationWindow], event=0x7fffe580fb60) at gtkwidget.c:7744
#24 0x00007ffff6cfbbf9 in propagate_event (widget=0x7fffe985a2a0 [GtkApplicationWindow], event=0x7fffe580fb60, captured=<optimized out>, topmost=0x0) at gtkmain.c:2675
#25 0x00007ffff6cfdbde in gtk_main_do_event (event=0x7fffe580fb60) at gtkmain.c:1915
#26 0x00007ffff6817dd5 in _gdk_event_emit (event=event@entry=0x7fffe580fb60) at gdkevents.c:73
#27 0x00007ffff6849072 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at gdkeventsource.c:367
#28 0x00007ffff59f8ab7 in g_main_context_dispatch (context=0x7fffec638d80) at gmain.c:3176
#29 0x00007ffff59f8ab7 in g_main_context_dispatch (context=context@entry=0x7fffec638d80) at gmain.c:3829
#30 0x00007ffff59f8d28 in g_main_context_iterate (context=context@entry=0x7fffec638d80, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3902
#31 0x00007ffff59f8ddc in g_main_context_iteration (context=context@entry=0x7fffec638d80, may_block=may_block@entry=1) at gmain.c:3963
#32 0x00007ffff5fb785d in g_application_run (application=0x7fffec553220 [GtkApplication], argc=1, argv=0x7fffe983e160) at gapplication.c:2470
#33 0x000055555559c6ac in  ()
#34 0x000055555558a103 in  ()
#35 0x000055555559dd83 in  ()
#36 0x00005555557122a3 in  ()
#37 0x0000555555734bba in  ()
#38 0x000055555570eae6 in  ()
#39 0x000055555558a614 in  ()
#40 0x00007ffff45ff291 in __libc_start_main (main=0x55555558a5f0, argc=1, argv=0x7fffffffe058, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe048) at /usr/src/debug/glibc/2.24-r0/git/csu/libc-start.c:289
#41 0x00005555555754da in  ()

The reason parameter of gtk_application_inhibit is marked as allow-none but the d-bus impl uses it as it is: https://gitlab.gnome.org/GNOME/gtk/blob/gtk-3-24/gtk/gtkapplication-dbus.c#L628

Assignee
Assign to
Time tracking