! 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 segfaults on startup
Status:
RESOLVED: FIXED
Product:
Xfce4-panel
Component:
Notification Area

Comments

Description flan_suse 2010-12-16 19:08:33 CET
I just recently updated to Xfce 4.7.6 prerelease on OpenSUSE 11.3, through the Xfce repository.

I have Tomboy notes set to launch on login, and on 4.6.x it always started minimized and sat in the tray area (notication area.) This is the normal behavior for Tomboy when it starts without any arguments. (Exec=tomboy)

But now with Xfce 4.7.6, it suffers the same issues as KDE4.

*Sometimes* Tomboy will start in the tray, as it should.

*Sometimes* Tomboy will start in a window, which it should not.

*Sometimes* the Tomboy icon will not even appear in the Notification Area. It's not even set to "hidden". But the process *is* running.

This is random with each time I login. There is no clear pattern to this behavior.

One workaround is to add the Tomboy GNOME applet, but this requires pulling in a ton of GNOME dependencies, and it starts up slower as opposed to having Tomboy set in Xfce's autostart options. And using the GNOME applet method uses extra resources.
Comment 1 flan_suse 2010-12-16 19:19:38 CET
I want to add that using "tomboy --tray-icon" makes no difference.

This doesn't seem to have anything to do with Autostart. If I using ALT + F2 or the terminal to run the command "tomboy" or "tomboy --tray-icon", the same randomness occurs.
Comment 2 Nick Schermer editbugs 2010-12-28 21:00:50 CET
A lot of tray issues were fixed in ad5a85c, but from the looks of it it doesn't sound like a tray issue.
Comment 3 flan_suse 2010-12-29 15:54:14 CET
(In reply to comment #2)
> A lot of tray issues were fixed in ad5a85c, but from the looks of it it doesn't
> sound like a tray issue.

If this is a not a tray issue, then what changed from 4.6.x to 4.7.6 to cause this new behaviour?

I don't mean to sound uptight, but if this remains in 4.8.x, it will ruin the flow of what once worked without any issues. In 4.7.6, whenever I log in I have to cross my fingers and hope everything works normally. If it doesn't, I either have to kill the tomboy process from a terminal, or close the main window if it pops up in my face.

I had to downgrade back to 4.6.2 for the time being, where it works normally and consistently every time I login or launch tomboy.

If it's any clue, this same thing happens with KDE 4.

The "normal" tray/icon behaviour if on GNOME, Xfce 4.6, and LXDE. It is inconsistent on Xfce 4.7.6 (soon to be stable 4.8.x) and KDE 4.
Comment 4 Nick Schermer editbugs 2010-12-29 19:58:37 CET
Well lots have changes in the system tray in the last days, so maybe you can give it a shot. Uploaded a git snapshot here: http://foo-projects.org/~nick/packages/xfce4-panel-4.7.6git-a2c5461.tar.bz2
Comment 5 Nick Schermer editbugs 2010-12-29 21:08:14 CET
Better try this package: http://foo-projects.org/~nick/packages/xfce4-panel-4.7.6git-c37dd16.tar.bz2
Comment 6 flan_suse 2010-12-30 06:50:17 CET
(In reply to comment #5)
> Better try this package:
> http://foo-projects.org/~nick/packages/xfce4-panel-4.7.6git-c37dd16.tar.bz2

Whether building from that package or from the latest git (clone), trying to add the Notification Area plugin to any panel results in a memory corruption crash. Is it because xfce4-panel is built from the latest source, while the other packages are from the repository? (All other xfce packages are back on the latest versions from the Xfce Repository, 4.7.6)
Comment 7 flan_suse 2010-12-30 06:51:44 CET
Created attachment 3311 
xfce4-panel crashes

xfce4-panel crashes when trying to add the Notification Area plugin to any panel
Comment 8 flan_suse 2010-12-30 07:00:48 CET
I want to also add something new that I discovered about the Notification Area (on 4.7.6 which doesn't crash, from the Xfce repo.)

On those times when running "tomboy" appears to do nothing (no tray icon, but "ps" reveals the tomboy process is running), I can actually get the tray icon to appear if I play around with the Notification Area settings. All I have to do is change the number of rows, and then the tray icon will suddenly appear. I'm even able to access Tomboy's context menu from its tray icon, like normal. The only difference is that the icon appears to be half of its normal size, even with only 1 row.

I would test this out on the latest git, but as commented above, xfce4-panel crashes when I try to add the Notification Area plugin.
Comment 9 flan_suse 2010-12-30 19:57:29 CET
Another follow up. I discovered one more thing that might provide a clue.

For version 4.7.6, if I set the Notification Area to display 2 (or more) rows, running "tomboy" (or any application that uses a tray icon) will *always* exihibit normal behaviour, just like in Xfce 4.6.2. This also works with autostart as well.

I'm guessing that when I leave the Notification Area to show only 1 row, it exposes a bug that prevents Tomboy from seeing itself in the tray, and so Tomboy delays for a moment and decides to present the main window, instead. This might explain why the window/trayicon behaviour seemed random at first.

But right now having 2 rows in the Notification Area, the behaviour is always consistent. Running "tomboy" starts in the tray, even if it's an autostart application.
Comment 10 Nick Schermer editbugs 2010-12-31 00:25:00 CET
If our other packages are from Xfce 4.7.6, everything should be fine. Could you provide a backtrace from a panel compiled with debugging (--enable-debug=full).
Comment 11 flan_suse 2011-01-01 05:24:19 CET
(In reply to comment #10)
> If our other packages are from Xfce 4.7.6, everything should be fine. Could you
> provide a backtrace from a panel compiled with debugging (--enable-debug=full).

I compiled what I pulled from git with --enable-debug=full, but with this latest version, xfce4-panel segfaults when it attempts to launch. I can't even get far enough to try and add a notification area (systray) to the panel.

The version I compile is very recent.

xfce4-panel 4.7.6git-ead61e7

I'll attach the output from "strace -o xfce4-panel-segfault.log xfce4-panel"
Comment 12 flan_suse 2011-01-01 05:28:21 CET
Created attachment 3312 
xfce4-panel segfaults

This segfault occurs even if I clear the $HOME/.config/xfce4/panel/ directory.

xfce4-panel 4.7.6git-ead61e7
Comment 13 Nick Schermer editbugs 2011-01-01 18:34:31 CET
Strace is not very helpful in this case, you should run the panel in gdb. (PANEL_DEBUG=1 gdb xfce4-panel; run; <wait for crash>; bt; quit; attach the output in a file to this bug), that way I can track down the problem.
Comment 14 flan_suse 2011-01-02 16:24:51 CET
Created attachment 3313 
GNU debugger output for xfce4-panel crash

This is the output for: "PANEL_DEBUG=1 gdb xfce4-panel"
Comment 15 Nick Schermer editbugs 2011-01-02 17:02:15 CET
Mm strange crash, could you provide a valgrind output too, maybe its a crash due to some memory corruption.

export G_SLICE=always-malloc
export G_DEBUG=gc-friendly
valgrind --leak-check=full --show-reachable=no --leak-resolution=high --log-file=$HOME/xfce4-panel-valgrind.log xfce4-panel
Comment 16 flan_suse 2011-01-03 03:54:29 CET
Created attachment 3316 
Valgrind output for xfce4-panel crash

Log file produced from the command "valgrind --leak-check=full --show-reachable=no --leak-resolution=high --log-file=$HOME/xfce4-panel-valgrind.log xfce4-panel"
Comment 17 flan_suse 2011-01-03 03:55:29 CET
(In reply to comment #16)
> Created attachment 3316 
> Valgrind output for xfce4-panel crash
> 
> Log file produced from the command "valgrind --leak-check=full
> --show-reachable=no --leak-resolution=high
> --log-file=$HOME/xfce4-panel-valgrind.log xfce4-panel"

I also did the two exports prior to running the valgrind command.
Comment 18 Nick Schermer editbugs 2011-01-10 14:35:07 CET
Valgrind says it is indeed a crash due to memory corruption, but the corruption seems to occur somewhere in glib. You use a stable glib release so it seems strange (and somewhat unlikely), but maybe you can try a newer version, see if it helps.
Comment 19 flan_suse 2011-01-16 05:18:14 CET
(In reply to comment #18)
> Valgrind says it is indeed a crash due to memory corruption, but the corruption
> seems to occur somewhere in glib. You use a stable glib release so it seems
> strange (and somewhat unlikely), but maybe you can try a newer version, see if
> it helps.

Looks like that was it. I updated my glib packages, re-cloned xfce-panel from git, and then installed it once again. This time the panel starts and there is no more issue with the systray/Noitification Area.

Thanks for your time, and it seems this bug is resolved. Tomboy also behaves normally as it should (remaining in the systray when first launched with no arguments.)

Bug #7001

Reported by:
flan_suse
Reported on: 2010-12-16
Last modified on: 2011-01-16

People

Assignee:
Nick Schermer
CC List:
0 users

Version

Attachments

xfce4-panel crashes (8.80 KB, text/x-log)
2010-12-30 06:51 CET , flan_suse
no flags
xfce4-panel segfaults (1.68 MB, text/plain)
2011-01-01 05:28 CET , flan_suse
no flags
GNU debugger output for xfce4-panel crash (26.06 KB, text/plain)
2011-01-02 16:24 CET , flan_suse
no flags
Valgrind output for xfce4-panel crash (218.21 KB, text/plain)
2011-01-03 03:54 CET , flan_suse
no flags

Additional information