Created attachment 6116 GLib-ERROR **: gmem.c:103: failed to allocate $ xfce4-power-manager --version Xfce Power Manager 1.4.4git-6edeb70 Part of the Xfce Goodies Project http://goodies.xfce.org Licensed under the GNU GPL. ~~~~~~~~~~~~~~~~~~~~~~~~~~~ $ xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/show-tray-icon true ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ $ xfce4-power-manager --debug ... (xfce4-power-manager:23454): GLib-ERROR **: gmem.c:103: failed to allocate 18446744073681245697 bytes Trace/breakpoint trap
... TRACE[xfpm-manager.c:747] xfpm_manager_show_tray_icon(): Showing tray icon (xfce4-power-manager:26167): GLib-ERROR **: gmem.c:103: failed to allocate 18446744073691778305 bytes Trace/breakpoint trap is introduced with: Migrate to UPower's icon-names http://git.xfce.org/xfce/xfce4-power-manager/commit/?id=9efe26e ~~~~~~~~~~~~ seg-fault before that: ... TRACE[xfpm-manager.c:759] xfpm_manager_show_tray_icon(): Showing tray icon Segmentation fault Update default icon and drop ac-adapter from Makefile http://git.xfce.org/xfce/xfce4-power-manager/commit/?id=0f2c4a3 ~~~~~~~~~~~~~~~~~~~~~~~~~~ the last working properly: Fix scroll-event on the plugin for brightness changes http://git.xfce.org/xfce/xfce4-power-manager/commit/?id=2eeb6ba
Unfortunately, we can't reproduce this, can you provide a backtrace as well?
Created attachment 6130 gdb xfce4-power-manager How to reproduce this: Show systray icon -> enable.
Created attachment 6139 Don't crash when UPower returns "" for the icon-name Interesting, looking at the backtrace, upower returns "" for the device icon. Can you try this patch out? I've also added some addition runtime debug messages to help figure out what's going on.
... ../power-manager-button.c: In function 'power_manager_button_size_changed_cb': ../power-manager-button.c:942:450: error: 'return' with a value, in function returning void [-Werror] g_return_val_if_fail (POWER_MANAGER_IS_BUTTON (button), FALSE); ^ ../power-manager-button.c:943:443: error: 'return' with a value, in function returning void [-Werror] g_return_val_if_fail (XFCE_IS_PANEL_PLUGIN (plugin), FALSE); ^ cc1: all warnings being treated as errors Makefile:597: recipe for target 'libxfce4powermanager_la-power-manager-button.lo' failed ...
Created attachment 6143 Undefine XFCE_PLUGIN when building the systray Well we got farther along. Can you add this patch on top of the other. It should fix the issues you're currently seeing. Let's hope you don't run into anymore. Thanks for your patience with this. Can you also provide the output of upower -d? I'm just curious about the device not returning a proper icon name.
$ git clone git://git.xfce.org/xfce/xfce4-power-manager $ cd xfce4-power-manager $ curl -s http://bug-attachment.xfce.org/attachment.cgi?id=6139 | patch -p1 $ curl -s http://bug-attachment.xfce.org/attachment.cgi?id=6143 | patch -p1 $ ./autogen.sh $ make ... ../power-manager-button.c: In function 'power_manager_button_size_changed_cb': ../power-manager-button.c:942:62: error: macro "g_return_if_fail" passed 2 arguments, but takes just 1 g_return_if_fail (POWER_MANAGER_IS_BUTTON (button), FALSE); ^ ../power-manager-button.c:942:5: error: 'g_return_if_fail' undeclared (first use in this function) g_return_if_fail (POWER_MANAGER_IS_BUTTON (button), FALSE); ^ ../power-manager-button.c:942:5: note: each undeclared identifier is reported only once for each function it appears in ../power-manager-button.c:943:59: error: macro "g_return_if_fail" passed 2 arguments, but takes just 1 g_return_if_fail (XFCE_IS_PANEL_PLUGIN (plugin), FALSE); ^ ... make: *** [all] Error 2
Created attachment 6144 xfpm_version_micro 4 & 1 arg
(In reply to Eric Koegel from comment #6) > Created attachment 6143 > Undefine XFCE_PLUGIN when building the systray > > Well we got farther along. Can you add this patch on top of the other. It > should fix the issues you're currently seeing. Let's hope you don't run into > anymore. Thanks for your patience with this. Can you also provide the output > of upower -d? I'm just curious about the device not returning a proper icon > name. $ upower --dump Device: /org/freedesktop/UPower/devices/DisplayDevice power supply: no updated: Sun 29 Mar 2015 09:55:12 AM CEST (5005 seconds ago) has history: no has statistics: no unknown warning-level: none icon-name: '' Daemon: daemon-version: 0.99.2 on-battery: no lid-is-closed: no lid-is-present: no critical-action: HybridSleep
Created attachment 6145 Xfce power manager version 1.4.4git-c009d91+3 debug log Now builds and runs OK, but systray icon still doesn't appear.
Created attachment 6146 Use the default icon if UPower doesn't provide one Ok, I've pushed those 3 patches to master since they fix crashes/build errors. Can you try out this latest patch, it should ensure we always provide an icon for display (which is required for the systray icon to show up).
git 2eeb6ba TRACE[xfpm-xfconf.c:202] xfpm_xfconf_property_changed_cb(): Property modified: /xfce4-power-manager/show-tray-icon ** (xfce4-power-manager:13178): WARNING **: No outputs have backlight property TRACE[xfpm-manager.c:759] xfpm_manager_show_tray_icon(): Showing tray icon (xfce4-power-manager:13178): Gtk-CRITICAL **: gtk_widget_get_style_context: assertion 'GTK_IS_WIDGET (widget)' failed (xfce4-power-manager:13178): Gtk-CRITICAL **: gtk_icon_info_load_symbolic_for_context: assertion 'context != NULL' failed TRACE[xfpm-manager.c:733] xfpm_manager_tray_update_icon(): updating icon TRACE[xfpm-manager.c:717] xfpm_manager_tray_update_tooltip(): updating tooltip Systray icon OK. ~~~~~~~~~~~~~~~~ git 4530e6a + http://bug-attachment.xfce.org/attachment.cgi?id=6146 TRACE[xfpm-xfconf.c:202] xfpm_xfconf_property_changed_cb(): Property modified: /xfce4-power-manager/show-tray-icon ** (xfce4-power-manager:14162): WARNING **: No outputs have backlight property TRACE[xfpm-manager.c:747] xfpm_manager_show_tray_icon(): Showing tray icon TRACE[../panel-plugins/power-manager-plugin/power-manager-button.c:457] power_manager_button_add_device(): entering for /org/freedesktop/UPower/devices/DisplayDevice TRACE[../panel-plugins/power-manager-plugin/power-manager-button.c:368] power_manager_button_update_device_icon_and_details(): entering for /org/freedesktop/UPower/devices/DisplayDevice TRACE[xfpm-power-common.c:190] get_device_icon_name(): icon_suffix (null), icon_base_length 2147483647, upower_icon TRACE[xfpm-manager.c:721] xfpm_manager_tray_update_icon(): updating icon TRACE[xfpm-manager.c:705] xfpm_manager_tray_update_tooltip(): updating tooltip Systray icon still doesn't appear.
Created attachment 6176 Never use symbolic icons in the systray and always set an icon Ok, I've taken another look at this. If I understand this bugreport correctly, the crash could also stem from the trayicon itself not having an icon set because UPower doesn't provide one. Either way, what I've done is 1) always force colored icons for the trayicon (which is good either way, because symbolic icons don't work there, but unrelated to this bugreport) and 2) made sure there's always a fallback set in case we don't get a proper icon name by UPower. Please test and let me know how it goes. Either way, because of 1) this patch should probably go into master.
Created attachment 6177 Never use symbolic icons in the systray and always set an icon Hm, on second thought in order to completely fix the crash we probably need a combination of my and Eric's patch. Attached the consolidated new patch.
Created attachment 6178 Never use symbolic icons in the systray and always set an icon Only noticed after attaching the patch that it was crashy, this one should work (finally).
Created attachment 6179 Never use symbolic icons in the systray and always set an icon OK, final patch for tonight (I promise). I hope this time I got it right. :)
Created attachment 6195 xfpm debug Maestro Ochosi, systray icon works OK with the last patch http://bug-attachment.xfce.org/attachment.cgi?id=6179 ...
Created attachment 6196 xfce4-panel debug xfpm ... however, by the way, plugin's icon is lost. The icon placeholder is in the place and working, only the icon itself is missing.
Alright, so we got one problem down, one remaining. I'll take a look at it, but I might meanwhile push this patch to master already, since it fixes a crash. Thanks for testing!
Created attachment 6197 xpm icon for systray and plugin
Created attachment 6198 Never use symbolic icons in the systray and always set an icon Alright, thanks for testing and looking into this yourself. I've cleaned up and finalized the patch, please give it one last try and then I'll push it and do a release.
This is good to go, just one more detail. :) In the Xfce Panel's "Add New Items" dialogue, do you see "Power Manager Plugin" icon? Here is absent. http://docs.xfce.org/xfce/xfce4-panel/add-new-items
Great - finally! :) Pushed as commit f6ceafb12f43ab7968455cadefdac48383022820 Good catch, that was still using an old icon name there. I fixed that now too. Pushed as commit 9fa2620414150ccf3753fe00e3a2021e4d3f2ce1
Maestro, last commit http://git.xfce.org/xfce/xfce4-power-manager/commit/?id=045712f has once again lost the plugin's icon. :) Uuuuuh! It's time for a song! https://www.youtube.com/watch?v=3khTntOxX-k
But hey, nobody's perfect. ;)
Created attachment 6200 Use symbolic icon for the panel plugin as fallback Before that commit, the plugin was using a non-symbolic icon, so not sure what's wrong there to be frank. Could you test whether the attached patch resolves things for you? I really hate debugging stuff I cannot test myself... :(
(In reply to Simon Steinbeiss from comment #26) > Created attachment 6200 > Use symbolic icon for the panel plugin as fallback > > Before that commit, the plugin was using a non-symbolic icon, so not sure > what's wrong there to be frank. Could you test whether the attached patch > resolves things for you? Tested and nope, but this will do the trick: diff --git a/panel-plugins/power-manager-plugin/power-manager-button.c b/panel-plugins/power-manager-plugin/power-manager-button.c index edc31c6..71b07ae 100644 --- a/panel-plugins/power-manager-plugin/power-manager-button.c +++ b/panel-plugins/power-manager-plugin/power-manager-button.c @@ -409,7 +409,7 @@ power_manager_button_update_device_icon_and_details (PowerManagerButton *button, g_free (button->priv->panel_icon_name); #ifdef XFCE_PLUGIN g_object_get (device, - "icon-name", &icon_name, + icon_name, NULL); if (icon_name == NULL) icon_name = g_strdup (PANEL_DEFAULT_ICON); OR just remove "&icon_name" OR remove "&icon_name" and replace "icon-name" with PANEL_DEFAULT_ICON etc. > > I really hate debugging stuff I cannot test myself... :( What you mean by "cannot test myself"? :) I tested this on both, Fedora 21 and Vivid Vervet dev branch.
Created attachment 6201 Debug output of icon name for panel plugin Sorry, but the code proposal is bollocks. (You're basically suggesting not to get the symbolic icon from upower.) Also, I'm starting to suspect that you simply don't have the (symbolic) icon needed for the plugin or that something is broken there. It works just fine for me with git master. > What you mean by "cannot test myself"? :) > I tested this on both, Fedora 21 and Vivid Vervet dev branch. That means I cannot reproduce it at all, the icon always shows up as it should. (I only have a laptop though and no desktop to test this with.) I've attached a very simple patch that will output the icon name used for the plugin when starting the xfce4-panel from the terminal. Please add that on top of git master and report the name of the icon back. Thanks!
(In reply to Simon Steinbeiss from comment #28) > Created attachment 6201 > Debug output of icon name for panel plugin > > Sorry, but the code proposal is bollocks. (You're basically suggesting not > to get the symbolic icon from upower.) I'm just answering what works here, if it is "bollocks" to you, so be it. Thanks for your attention. > Also, I'm starting to suspect that you simply don't have the (symbolic) icon > needed for the plugin or that something is broken there. It works just fine > for me with git master. Can you be less specific? What do you mean by "simply don't have the (symbolic) icon"? Something like this? $ dpkg -S /usr/share/icons/gnome/scalable/apps/gnome-power-manager-symbolic.svg gnome-icon-theme-symbolic: /usr/share/icons/gnome/scalable/apps/gnome-power-manager-symbolic.svg $ rpm -qf /usr/share/icons/gnome/scalable/apps/gnome-power-manager-symbolic.svg gnome-icon-theme-symbolic-3.12.0-2.fc21.noarch > > > What you mean by "cannot test myself"? :) > > I tested this on both, Fedora 21 and Vivid Vervet dev branch. > > That means I cannot reproduce it at all, the icon always shows up as it > should. (I only have a laptop though and no desktop to test this with.) > So this is the battle: Laptop vs Desktop > I've attached a very simple patch that will output the icon name used for > the plugin when starting the xfce4-panel from the terminal. Please add that > on top of git master and report the name of the icon back. Thanks! ... xfce4-panel(external): register dbus path /org/xfce/Panel/Wrapper/6 xfce4-panel(module): new item (type=external-wrapper, name=power-manager-plugin, id=6) xfce4-panel(external): power-manager-plugin-6: child spawned; pid=8170, argc=8 xfce4-panel(application): saving /panels/panel-0: ids=true, providers=false xfce4-panel(external): power-manager-plugin-6: child is embedded; 7 properties in queue ** (wrapper-1.0:8170): WARNING **: No outputs have backlight property Where do you see the icon name? :)
(In reply to poma from comment #29) > I'm just answering what works here, if it is "bollocks" to you, so be it. > Thanks for your attention. No need to take this personal, just saying that the suggestion doesn't make any sense and is (in part) syntactically wrong ;) > Can you be less specific? > What do you mean by "simply don't have the (symbolic) icon"? The droids you're looking for are battery-full-charged-symbolic.svg etc. and they should be in the status/ subfolder (as opposed to apps). > So this is the battle: Laptop vs Desktop Nope, no battle. Just the simple explanation as to why my UPower always returns an icon name and for you it seemingly doesn't. > Where do you see the icon name? :) Nowhere, that's odd though, works just fine for me. Have you installed the plugin in the correct directory/prefix, i.e. are you sure you're using the latest version there?
(In reply to Simon Steinbeiss from comment #30) > (In reply to poma from comment #29) > > I'm just answering what works here, if it is "bollocks" to you, so be it. > > Thanks for your attention. > > No need to take this personal, just saying that the suggestion doesn't make > any sense and is (in part) syntactically wrong ;) > Maestro Ochosi, can I at least get an A from commitment then, if cannot for "nonsensical" and "syntactically wrong" whatever that means, and guess what - working code here, unlike your uber "sensical" and "syntactically correct"?, guess what - none working code here. No need to take this personal. :) > > Can you be less specific? > > What do you mean by "simply don't have the (symbolic) icon"? > > The droids you're looking for are battery-full-charged-symbolic.svg etc. and > they should be in the status/ subfolder (as opposed to apps). > $ rpm -qf $(find -name battery-full-charged-symbolic.svg) | sort adwaita-icon-theme-3.14.1-1.fc21.noarch elementary-icon-theme-3.1-2.fc21.noarch faenza-icon-theme-1.3.1-3.fc19.noarch faenza-icon-theme-1.3.1-3.fc19.noarch faenza-icon-theme-1.3.1-3.fc19.noarch faenza-icon-theme-1.3.1-3.fc19.noarch faience-icon-theme-0.5-3.fc21.noarch faience-icon-theme-0.5-3.fc21.noarch gnome-icon-theme-symbolic-3.12.0-2.fc21.noarch mate-icon-theme-1.8.0-2.fc21.noarch monochrome-icon-theme-14.04-2.20141217bzr408.fc21.noarch monochrome-icon-theme-14.04-2.20141217bzr408.fc21.noarch monochrome-icon-theme-14.04-2.20141217bzr408.fc21.noarch monochrome-icon-theme-14.04-2.20141217bzr408.fc21.noarch monochrome-icon-theme-14.04-2.20141217bzr408.fc21.noarch monochrome-icon-theme-14.04-2.20141217bzr408.fc21.noarch numix-icon-theme-2.3.2-1.1.noarch numix-icon-theme-2.3.2-1.1.noarch numix-icon-theme-2.3.2-1.1.noarch numix-icon-theme-2.3.2-1.1.noarch xfce4-power-manager-1.4.4-9.git20150416.fc21.x86_64 > > So this is the battle: Laptop vs Desktop > > Nope, no battle. Just the simple explanation as to why my UPower always > returns an icon name and for you it seemingly doesn't. > UPower is the source of all evil here. > > Where do you see the icon name? :) > > Nowhere, that's odd though, works just fine for me. Have you installed the > plugin in the correct directory/prefix, i.e. are you sure you're using the > latest version there? $ rpm -ql xfce4-power-manager | grep plugin /usr/lib64/xfce4/panel/plugins/libxfce4powermanager.so /usr/share/xfce4/panel/plugins/power-manager-plugin.desktop $ rpm -q --changelog xfce4-power-manager * Thu Apr 16 2015 poma <poma@gmail.com> - 1.4.4-9 - Update to latest git snapshot 9fa2620 Not the last one, but prior to it, the one that actually works OK here! :)
Pardon me, $ rpm -ql xfce4-power-manager | grep battery-full-charged-symbolic.svg /usr/share/icons/hicolor/scalable/status/battery-full-charged-symbolic.svg
$ cat /etc/fedora-release Fedora release 21 (Twenty One) For testing purposes, all "icon-themes" containing "battery-full-charged*" are removed from the "/usr/share/icons/": Adwaita ContrastHigh elegant elementary elementary-xfce elementary-xfce-dark Faience Faience-Claire gnome HighContrast KFaenza mate matefaenza matefaenzadark matefaenzagray Monochrome-dark Monochrome-light No "icon-theme" is installed in the "/usr/local/share/icons/". ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ $ git clone git://git.xfce.org/xfce/xfce4-power-manager $ cd xfce4-power-manager/ $ git log -1 commit 045712f6e03a1f1a67d62e23a8db8980e20c7659 Author: Simon Steinbeiss <simon.steinbeiss@elfenbeinturm.at> Date: Thu Apr 16 11:50:50 2015 +0200 Fix panel plugin not using symbolic icon anymore Regression of commit f6ceafb12f43ab7968455cadefdac48383022820 $ ./autogen.sh $ make $ su # make install /usr/local/bin/xfce4-power-manager /usr/local/bin/xfce4-power-manager-settings /usr/local/lib/xfce4/panel/plugins/libxfce4powermanager.la /usr/local/lib/xfce4/panel/plugins/libxfce4powermanager.so /usr/local/share/icons/hicolor/32x32/status/battery-full-charged.png /usr/local/share/icons/hicolor/48x48/status/battery-full-charged.png /usr/local/share/icons/hicolor/scalable/status/battery-full-charged.svg /usr/local/share/icons/hicolor/scalable/status/battery-full-charged-symbolic.svg Result: 1. systray ................ placeholder PRESENT / icon NON-EXISTENT 2. Add New Items \ Power Manager Plugin ... item NON-EXISTENT therefore the icon 3. plugin ................. placeholder NON-EXISTENT therefore the icon, see 2. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ $ git clone git://git.xfce.org/xfce/xfce4-power-manager $ cd xfce4-power-manager/ $ git log -1 commit 045712f6e03a1f1a67d62e23a8db8980e20c7659 Author: Simon Steinbeiss <simon.steinbeiss@elfenbeinturm.at> Date: Thu Apr 16 11:50:50 2015 +0200 Fix panel plugin not using symbolic icon anymore Regression of commit f6ceafb12f43ab7968455cadefdac48383022820 $ ./autogen.sh --prefix=/usr $ make $ su # make install /usr/bin/xfce4-power-manager /usr/bin/xfce4-power-manager-settings /usr/lib64/xfce4/panel/plugins/libxfce4powermanager.la /usr/lib64/xfce4/panel/plugins/libxfce4powermanager.so /usr/share/icons/hicolor/32x32/status/battery-full-charged.png /usr/share/icons/hicolor/48x48/status/battery-full-charged.png /usr/share/icons/hicolor/scalable/status/battery-full-charged.svg /usr/share/icons/hicolor/scalable/status/battery-full-charged-symbolic.svg Result: 1. systray ................ placeholder PRESENT / icon PRESENT 2. Add New Items \ Power Manager Plugin ... item PRESENT / icon NON-EXISTENT 3. plugin ................. placeholder PRESENT / icon NON-EXISTENT
Please, for keeping some overview, submit a new bugreport with only the icon issue. The original problem / bug is solved. I will attach another patch to the new bugreport that outputs more warnings. Note that I might also release the power manager as is to see how many others encounter this issue as well.
Another note: before/when submitting the new bugreport, please test with the last commit I just pushed to master, it might fix things for you.
(In reply to Simon Steinbeiss from comment #34) > Please, for keeping some overview, submit a new bugreport with only the icon > issue. The original problem / bug is solved. > Eric has already solved the problem with the crashing, before you joined here. Afterparty is solely related to the problem of icons that are not displayed.
(In reply to Simon Steinbeiss from comment #35) > Another note: before/when submitting the new bugreport, please test with the > last commit I just pushed to master, it might fix things for you. Last commit doesn't solve the problem. Is xfpm's icon set, all xfpm needs?
You can check yourself http://goo.gl/Gm4ffO Arrivederci, Roma.
.