Created attachment 2120 Patch that does what I *think* was intended. Here's the screen output: gcc -I.. -I.. -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/xfce4/xfconf-0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/xfce4 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/atk-1.0 -I/usr/include/xfce4 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/xfce4/xfconf-0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/atk-1.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/libwnck-1.0 -I/usr/include/gtk-2.0 -I/usr/include/startup-notification-1.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -O2 -march=i486 -mtune=i686 -Wl,-O1 -Wl,--as-needed -o xfce4-settings-helper xfce4_settings_helper-main.o xfce4_settings_helper-accessibility.o xfce4_settings_helper-displays.o xfce4_settings_helper-keyboards.o xfce4_settings_helper-keyboard-shortcuts.o xfce4_settings_helper-keyboard-layout.o xfce4_settings_helper-pointers.o xfce4_settings_helper-workspaces.o -pthread /usr/lib/libgthread-2.0.so -lpthread -lrt /usr/lib/libxfce4kbd-private.so /usr/lib/libxfcegui4.so /usr/lib/libxfce4util.so /usr/lib/libxfconf-0.so /usr/lib/libdbus-glib-1.so /usr/lib/libdbus-1.so /usr/lib/libXi.so /usr/lib/libXrandr.so /usr/lib/libwnck-1.so /usr/lib/libXRes.so /usr/lib/libXext.so /usr/lib/libgtk-x11-2.0.so /usr/lib/libstartup-notification-1.so /usr/lib/libSM.so /usr/lib/libICE.so /usr/lib/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so /usr/lib/libgdk_pixbuf-2.0.so /usr/lib/libgio-2.0.so /usr/lib/libpangocairo-1.0.so /usr/lib/libpangoft2-1.0.so /usr/lib/libcairo.so /usr/lib/libpixman-1.so -lpng12 /usr/lib/libXrender.so /usr/lib/libX11.so /usr/lib/libxcb-xlib.so /usr/lib/libxcb.so /usr/lib/libXau.so /usr/lib/libXdmcp.so /usr/lib/libpango-1.0.so -lm /usr/lib/libfontconfig.so /usr/lib/libfreetype.so -lz /usr/lib/libexpat.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so -ldl /usr/lib/libglib-2.0.so xfce4_settings_helper-workspaces.o: In function `xfce_workspaces_helper_set_workspace_names': workspaces.c:(.text+0x26d): undefined reference to `wnck_screen_get_workspaces' collect2: ld returned 1 exit status make[2]: *** [xfce4-settings-helper] Error 1 make[2]: Leaving directory `/tmp/xfce-build-dir/xfce4-settings-r29400/xfce4-settings-helper' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/xfce-build-dir/xfce4-settings-r29400' make: *** [all] Error 2 I think that was supposed to be wnck_screen_get_workspace_count() instead, and changing it to that result in a successful build. Whether it works or not, I can't say yet, but at least the bug is reported :)
Crap, sorry, I forgot to mention: This was working in 29335, but is broken in 29400. The breakage entered in 29342 with the patch for http://bugzilla.xfce.org/show_bug.cgi?id=4853
mm crap, didn't look close enough to the api versions. /me will fix this.
Don't bother. You broke other things with your patch, so I need to revert the entire checkin and fix the crash properly. Since I guess some people can't remember my policy, here it is again: don't commit non-trivial, non-release-critical changes to my code without getting my OK on it. For the record, you can't use wnck to set the workspace names on startup because there's a race condition that causes successive calls to wnck_workspace_change_name() to effectively unset all the previous workspace names. If you'd either a) talked to me about it, or b) looked through the commit logs, you'd know this. Manually setting _NET_DESKTOP_NAMES is the only way to do it safely, and avoids a roundtrip per workspace to boot. Double bonus.
And regardless, there was nothing to fix with your patch! The exact same bug was fixed (see bug #4813) 6 days before you checked anything in, and yet for some inexplicable reason, you marked 4813 as a dupe of 4853.
I completely missed this bug and the commit too. My bad, but that doesn't mean you're god and everything should be reviewed by you.
Yes, it does, for my code anyway. That's just common courtesy -- you don't commit non-trivial and/or non-release-critical code to files that other people maintain. That's been general Xfce policy as long as I've been around at least. Xfce SVN commit access is not a blank check to commit to any module, any file, when you feel like it. If you would like to discuss this further, please take it to private mail or xfce4-dev.
*** Bug 4861 has been marked as a duplicate of this bug. ***