! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Panel becomes unresponsive when application terminates while its menu is open
Status:
RESOLVED: FIXED
Product:
Xfce4-panel
Component:
Window Buttons

Comments

Description haarp 2017-05-28 22:33:55 CEST
1. Have an application running
2. Right-click on the app's window button to open menu
3. Have app terminate itself while menu stays open
4. Panel is now frozen unresponsive
Comment 1 Andre Miranda editbugs 2017-05-29 14:42:38 CEST
I can't reproduce with panel 4.13. Running sleep 3 && pkill <app> on a terminal to make the application close, the menu is dismissed and the panel continues to work without problems.
Comment 2 haarp 2017-06-11 13:19:28 CEST
I did some further testing. 4.10.1 is unaffected, 4.12.1 affected. I could not try 4.13 yet. So at least the 4.12 series has this problem.
Comment 3 Unit 193 2017-07-22 23:42:38 CEST
After the application with the menu open exits, you get:

(xfce4-panel:9746): GLib-GObject-WARNING **: instance with invalid (NULL) class pointer
(xfce4-panel:9746): GLib-GObject-CRITICAL **: g_signal_handlers_disconnect_matched: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
(xfce4-panel:9746): GLib-GObject-CRITICAL **: g_object_steal_data: assertion 'G_IS_OBJECT (object)' failed
(xfce4-panel:9746): GLib-GObject-CRITICAL **: g_object_set_data: assertion 'G_IS_OBJECT (object)' failed

Then when you mouse over the panel you get things like:

(xfce4-panel:9746): Gtk-CRITICAL **: IA__gtk_widget_is_sensitive: assertion 'GTK_IS_WIDGET (widget)' failed
(xfce4-panel:9746): Gtk-CRITICAL **: IA__gtk_propagate_event: assertion 'GTK_IS_WIDGET (widget)' failed

And when you run `xfce4-panel -r`,

(xfce4-panel:9746): GLib-WARNING **: GChildWatchSource: Exit status of a child process was requested but ECHILD was received by waitpid(). Most likely the process is ignoring SIGCHLD, or some other thread is invoking waitpid() with a nonpositive first argument; either behavior can break applications that use g_child_watch_add()/g_spawn_sync() either directly or indirectly.
Comment 4 Simon Steinbeiss editbugs 2017-07-23 23:26:01 CEST
I just tested this very simple routine (as suggested by Unit 193) with the xfce4-panel from git master (which is heading towards 4.13.1):

1. open a terminal
2. run "sleep 3s; exit"
3. right-click the item in the panel

With this testcase I cannot reproduce the bug in 4.13.
Comment 5 haarp 2017-08-22 15:52:01 CEST
Yes, I can confirm this is fixed in panel 4.13.1.
Comment 6 Simon Steinbeiss editbugs 2017-08-23 01:37:03 CEST
Thanks for testing, marking as fixed then.

Bug #13600

Reported by:
haarp
Reported on: 2017-05-28
Last modified on: 2017-08-23

People

Assignee:
Simon Steinbeiss
CC List:
3 users

Version

Version:
4.13.1

Attachments

Additional information