bugs.l3ib.org - http://bugs.l3ib.org/ bugs.l3ib.org - nitrogen: Recently opened tasks 2010-08-16T17:48:46Z FS#32: Command line cannot correctly distinguish xinerama for --save http://bugs.l3ib.org/index.php?do=details&task_id=32 2010-08-16T17:48:46Z Dave Foster It wrote it as :0.0 instead of the xin codes. check it oot. FS#31: Nitrogen can't compile on OpenBSD http://bugs.l3ib.org/index.php?do=details&task_id=31 2010-08-15T10:16:53Z Cleptho I can't compile nitrogen 1.5.1 on OpenBSD. Following is the output of make : g++ -g -O2 -o nitrogen main.o SetBG.o Thumbview.o Config.o NWindow.o md5.o ArgParser.o ImageCombo.o Inotify.o Util.o NPrefsWindow.o -L/usr/local/lib -lglib-2.0 -lintl -liconv -L/usr/local/lib -L/usr/X11R6/lib -R/usr/X11R6/lib -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXext -lXdamage -lXfixes -latk-1.0 -lcairo -lpixman-1 -lglitz -lpng -lxcb-render-util -lxcb-render -lXrender -lxcb -lpthread-stubs -lXau -lXdmcp -lgio-2.0 -lpangoft2-1.0 -lX11 -lpango-1.0 -lm -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lfontconfig -lexpat -lfreetype -lz -L/usr/local/lib -L/usr/X11R6/lib -R/usr/X11R6/lib -pthread -lgtkmm-2.4 -latkmm-1.6 -lgdkmm-2.4 -lgiomm-2.4 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXext -lXdamage -lXfixes -latk-1.0 -lcairo -lpixman-1 -lglitz -lpng -lxcb-render-util -lxcb-render -lXrender -lxcb -lpthread-stubs -lXau -lXdmcp -lgio-2.0 -lpangoft2-1.0 -lX11 -lpango-1.0 -lm -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lfontconfig -lexpat -lfreetype -lz -L/usr/local/lib -pthread -lgthread-2.0 -lglib-2.0 -lintl -liconv /usr/local/lib/libglib-2.0.so.1803.0: warning: vsprintf() is often misused, please use vsnprintf() /usr/local/lib/libglib-2.0.so.1803.0: warning: strcpy() is almost always misused, please use strlcpy() Thumbview.o(.text+0x168b): In function `Thumbview::cache_file(Glib::ustring)': /home/cleptho/Downloads/nitrogen-1.5.1/src/Thumbview.cc:418: warning: sprintf() is often misused, please use snprintf() Thumbview.o(.text+0x1696):/home/cleptho/Downloads/nitrogen-1.5.1/src/Thumbview.cc:419: warning: strcat() is almost always misused, please use strlcat() main.o(.text+0x10c2): In function `main': /home/cleptho/Downloads/nitrogen-1.5.1/src/main.cc:183: undefined reference to `Thumbview::set_current_display_mode(DisplayMode)' main.o(.text+0x10e1):/home/cleptho/Downloads/nitrogen-1.5.1/src/main.cc:185: undefined reference to `Thumbview::set_icon_captions(int)' Thumbview.o(.text+0x2ff2): In function `Thumbview::Thumbview()': /usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_iview_activated(Gtk::TreePath const&)' Thumbview.o(.text+0x3166):/usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_view_activated(Gtk::TreePath const&, Gtk::TreeViewColumn*)' Thumbview.o(.text+0x40de): In function `Thumbview::Thumbview()': /usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_iview_activated(Gtk::TreePath const&)' Thumbview.o(.text+0x4252):/usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_view_activated(Gtk::TreePath const&, Gtk::TreeViewColumn*)' NWindow.o(.text+0x2108): In function `NWindow::sighandle_btn_prefs()': /home/cleptho/Downloads/nitrogen-1.5.1/src/NWindow.cc:436: undefined reference to `Thumbview::set_current_display_mode(DisplayMode)' collect2: ld returned 1 exit status gmake[2]: *** [nitrogen] Error 1 gmake[2]: Leaving directory `/home/cleptho/Downloads/nitrogen-1.5.1/src' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/home/cleptho/Downloads/nitrogen-1.5.1' gmake: *** [all-recursive-am] Error 2 The problem appears to be that in src/Thumbview.h, the "class Thumbview;" and "class Thumbview : public Gtk::ScrolledWindow" are considered differently, therefore the class is considered as being declared but not defined. I tried shuffling classes around, but the are inter-dependent... Could you separate the class so that they do not depend on each other?
Following is the output of make :
g++ -g -O2 -o nitrogen main.o SetBG.o Thumbview.o Config.o NWindow.o md5.o ArgParser.o ImageCombo.o Inotify.o Util.o NPrefsWindow.o -L/usr/local/lib -lglib-2.0 -lintl -liconv -L/usr/local/lib -L/usr/X11R6/lib -R/usr/X11R6/lib -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXext -lXdamage -lXfixes -latk-1.0 -lcairo -lpixman-1 -lglitz -lpng -lxcb-render-util -lxcb-render -lXrender -lxcb -lpthread-stubs -lXau -lXdmcp -lgio-2.0 -lpangoft2-1.0 -lX11 -lpango-1.0 -lm -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lfontconfig -lexpat -lfreetype -lz -L/usr/local/lib -L/usr/X11R6/lib -R/usr/X11R6/lib -pthread -lgtkmm-2.4 -latkmm-1.6 -lgdkmm-2.4 -lgiomm-2.4 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXext -lXdamage -lXfixes -latk-1.0 -lcairo -lpixman-1 -lglitz -lpng -lxcb-render-util -lxcb-render -lXrender -lxcb -lpthread-stubs -lXau -lXdmcp -lgio-2.0 -lpangoft2-1.0 -lX11 -lpango-1.0 -lm -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lfontconfig -lexpat -lfreetype -lz -L/usr/local/lib -pthread -lgthread-2.0 -lglib-2.0 -lintl -liconv
/usr/local/lib/libglib-2.0.so.1803.0: warning: vsprintf() is often misused, please use vsnprintf()
/usr/local/lib/libglib-2.0.so.1803.0: warning: strcpy() is almost always misused, please use strlcpy()
Thumbview.o(.text+0x168b): In function `Thumbview::cache_file(Glib::ustring)':
/home/cleptho/Downloads/nitrogen-1.5.1/src/Thumbview.cc:418: warning: sprintf() is often misused, please use snprintf()
Thumbview.o(.text+0x1696):/home/cleptho/Downloads/nitrogen-1.5.1/src/Thumbview.cc:419: warning: strcat() is almost always misused, please use strlcat()
main.o(.text+0x10c2): In function `main':
/home/cleptho/Downloads/nitrogen-1.5.1/src/main.cc:183: undefined reference to `Thumbview::set_current_display_mode(DisplayMode)'
main.o(.text+0x10e1):/home/cleptho/Downloads/nitrogen-1.5.1/src/main.cc:185: undefined reference to `Thumbview::set_icon_captions(int)'
Thumbview.o(.text+0x2ff2): In function `Thumbview::Thumbview()':
/usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_iview_activated(Gtk::TreePath const&)'
Thumbview.o(.text+0x3166):/usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_view_activated(Gtk::TreePath const&, Gtk::TreeViewColumn*)'
Thumbview.o(.text+0x40de): In function `Thumbview::Thumbview()':
/usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_iview_activated(Gtk::TreePath const&)'
Thumbview.o(.text+0x4252):/usr/local/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:232: undefined reference to `Thumbview::sighandle_view_activated(Gtk::TreePath const&, Gtk::TreeViewColumn*)'
NWindow.o(.text+0x2108): In function `NWindow::sighandle_btn_prefs()':
/home/cleptho/Downloads/nitrogen-1.5.1/src/NWindow.cc:436: undefined reference to `Thumbview::set_current_display_mode(DisplayMode)'
collect2: ld returned 1 exit status
gmake[2]: *** [nitrogen] Error 1
gmake[2]: Leaving directory `/home/cleptho/Downloads/nitrogen-1.5.1/src'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/home/cleptho/Downloads/nitrogen-1.5.1'
gmake: *** [all-recursive-am] Error 2

The problem appears to be that in src/Thumbview.h, the "class Thumbview;" and "class Thumbview : public Gtk::ScrolledWindow" are considered differently, therefore the class is considered as being declared but not defined.
I tried shuffling classes around, but the are inter-dependent...

Could you separate the class so that they do not depend on each other?]]>
FS#30: crash using invalid wid http://bugs.l3ib.org/index.php?do=details&task_id=30 2010-08-12T18:05:27Z Kah Waey nitrogen attempts to use an invalid wid and crashes. I reproducibly create the circumstances by: running nautilus, which will set the desktop. chmod a-x /usr/bin/nautilus which will prevent it from respawning killall nautilus Running nitrogen --restore at this point will cause the crash. The crash happens from SetBG::get_rootwindowtype(Glib::RefPtr<Gdk::Window>) on call to : XGetTextProperty(xdisp, wid, &tprop, propatom) You can see that the wid is invalid by using xprop -id (id#)
I reproducibly create the circumstances by:

running nautilus, which will set the desktop.

chmod a-x /usr/bin/nautilus
which will prevent it from respawning

killall nautilus

Running
nitrogen --restore
at this point will cause the crash.

The crash happens from
SetBG::get_rootwindowtype(Glib::RefPtr<Gdk::Window>)
on call to : XGetTextProperty(xdisp, wid, &tprop, propatom)

You can see that the wid is invalid by using
xprop -id (id#)
]]>
FS#29: NITROGEN_LIBS is missing -lX11 http://bugs.l3ib.org/index.php?do=details&task_id=29 2010-05-27T08:35:53Z Sandro Mathys NITROGEN_LIBS in the Makefile is missing -lX11 so trying to build nitrogen (with dependency tracking disabled) will result in: /usr/bin/ld: SetBG.o: undefined reference to symbol &#039;XFreeStringList&#039; /usr/bin/ld: note: &#039;XFreeStringList&#039; is defined in DSO /usr/lib/libX11.so.6 so try adding it to the linker command line /usr/lib/libX11.so.6: could not read symbols: Invalid operation After adding -lX11 nitrogen builds just fine.
/usr/bin/ld: SetBG.o: undefined reference to symbol 'XFreeStringList'
/usr/bin/ld: note: 'XFreeStringList' is defined in DSO /usr/lib/libX11.so.6 so try adding it to the linker command line
/usr/lib/libX11.so.6: could not read symbols: Invalid operation

After adding -lX11 nitrogen builds just fine.]]>
FS#27: Custom C(XX)FLAGS make Nitrogen 1.5 crashes when previewing/applying a background http://bugs.l3ib.org/index.php?do=details&task_id=27 2010-02-04T12:45:40Z Marc Arens Nitrogen works properly when i use the std. C(XX)FLAGS of -g -O2. I can preview and apply backgrounds as expected. But when i compile nitrogen with &quot;-O2 -march=athlon-xp -fomit-frame-pointer -pipe&quot; nitrogen segfaults when i try to preview the selected background via doubleclick or when i try to apply the selected background via the apply button. I don&#039;t know very much about gdb but got this backtrace for you (gdb) bt #0 SetBG::get_rootwindowtype (rootwin=...) at SetBG.cc:403 #1 0x0805f61d in SetBG::set_bg (disp=..., file=..., mode=SetBG::SET_SCALE, bgcolor=...) at SetBG.cc:68 #2 0x08070e00 in NWindow::set_bg (this=0xbfffe26c, file=...) at NWindow.cc:209 #3 0x08071655 in NWindow::sighandle_dblclick_item (this=0x80ed7e8, path=...) at NWindow.cc:108 #4 0x080626ad in sigc::internal::signal_emit1&lt;void, Gtk::TreePath const&amp;, sigc::nil&gt;::emit (this=0x0, path=...) at /usr/include/sigc++-2.0/sigc++/signal.h:1006 #5 sigc::signal1&lt;void, Gtk::TreePath const&amp;, sigc::nil&gt;::emit (this=0x0, path=...) at /usr/include/sigc++-2.0/sigc++/signal.h:2773 #6 sigc::signal1&lt;void, Gtk::TreePath const&amp;, sigc::nil&gt;::operator() (this=0x0, path=...) at /usr/include/sigc++-2.0/sigc++/signal.h:2781 #7 Thumbview::sighandle_iview_activated (this=0x0, path=...) at Thumbview.cc:771 #8 0xb76bd354 in ?? () from /usr/lib/libgtkmm-2.4.so.1 #9 0xb7855d6a in g_cclosure_marshal_VOID__BOXED () from /usr/lib/libgobject-2.0.so.0 #10 0x08104020 in ?? () #11 0x081399d8 in ?? () #12 0x08108858 in ?? () #13 0xb7879ff4 in ?? () from /usr/lib/libgobject-2.0.so.0 #14 0xbfffe4fc in ?? () #15 0x081088b8 in ?? () #16 0x00000000 in ?? () (gdb) Software used: gtkmm 2.16.0 gtk+ 2.16.6 nitrogen 1.5 (reported version set to git because 1.5 wasn&#039;t available for selection)
But when i compile nitrogen with "-O2 -march=athlon-xp -fomit-frame-pointer -pipe" nitrogen segfaults when i try to preview the selected background via doubleclick or when i try to apply the selected background via the apply button.

I don't know very much about gdb but got this backtrace for you

(gdb) bt
#0 SetBG::get_rootwindowtype (rootwin=...) at SetBG.cc:403
#1 0x0805f61d in SetBG::set_bg (disp=..., file=..., mode=SetBG::SET_SCALE, bgcolor=...) at SetBG.cc:68
#2 0x08070e00 in NWindow::set_bg (this=0xbfffe26c, file=...) at NWindow.cc:209
#3 0x08071655 in NWindow::sighandle_dblclick_item (this=0x80ed7e8, path=...) at NWindow.cc:108
#4 0x080626ad in sigc::internal::signal_emit1<void, Gtk::TreePath const&, sigc::nil>::emit (this=0x0,
path=...) at /usr/include/sigc++-2.0/sigc++/signal.h:1006
#5 sigc::signal1<void, Gtk::TreePath const&, sigc::nil>::emit (this=0x0, path=...)
at /usr/include/sigc++-2.0/sigc++/signal.h:2773
#6 sigc::signal1<void, Gtk::TreePath const&, sigc::nil>::operator() (this=0x0, path=...)
at /usr/include/sigc++-2.0/sigc++/signal.h:2781
#7 Thumbview::sighandle_iview_activated (this=0x0, path=...) at Thumbview.cc:771
#8 0xb76bd354 in ?? () from /usr/lib/libgtkmm-2.4.so.1
#9 0xb7855d6a in g_cclosure_marshal_VOID__BOXED () from /usr/lib/libgobject-2.0.so.0
#10 0x08104020 in ?? ()
#11 0x081399d8 in ?? ()
#12 0x08108858 in ?? ()
#13 0xb7879ff4 in ?? () from /usr/lib/libgobject-2.0.so.0
#14 0xbfffe4fc in ?? ()
#15 0x081088b8 in ?? ()
#16 0x00000000 in ?? ()
(gdb)

Software used:
gtkmm 2.16.0
gtk+ 2.16.6
nitrogen 1.5 (reported version set to git because 1.5 wasn't available for selection)]]>
FS#18: modifiy the apply button so that it doesn't close Nitrogen http://bugs.l3ib.org/index.php?do=details&task_id=18 2010-02-04T12:47:19Z Matthew Horsell Hi, Would it be possible to change the behavour of the apply button, At the mometn when you apply a wallpaper it close nitrogen. If you are just trying to preview the current selection this is a bit of a pain. Thanks Matthew Would it be possible to change the behavour of the apply button,
At the mometn when you apply a wallpaper it close nitrogen. If you are just trying to preview the current selection this is a bit of a pain.

Thanks
Matthew]]>
FS#13: vertical thumbnails display incorrectly http://bugs.l3ib.org/index.php?do=details&task_id=13 2008-07-31T07:50:17Z Dave Foster vertical images have their thumbnails displayed incorrectly (chopped vertically). make sure our thumbnailing code is correct. FS#12: Incorrect rendering on dual monitors at different resolutions http://bugs.l3ib.org/index.php?do=details&task_id=12 2008-07-29T18:41:38Z Helge W. Larsen I&#039;m having problems rendering backgrounds on my dual monitor setup (initialized through xrandr): screen 1, right: 1400x1050 screen 2, left: 1680x1050 For some reason Nitrogen doesn&#039;t want to work correctly after screen 2 has been attached. The rendered image for screen 2 (left) is cut off at 1400 pixels and repeated until the end of the background at screen 1. Nitrogen does does not react at all when I want to change the background for screen 1, and fullscreen just shows the cut off left part of the image repeated on both screens. Reason: It looks like it starts rendering from the left but for some reason stops at 1400 pixels wide, which is the old desktop width before attaching the left monitor. This cut-off image is then repeated until the end of the desktop. Swapping the two monitors (screen 2 right of screen 2) produces the same symptom. The background is correctly rendered on screen 1 (1400x1050), but screen 2 (1680x1050) shows the tiled version of screen 1 and Nitrogen can&#039;t change the background individually for that screen. Workaround: I can workaround the bug by using another program (like &#039;feh&#039; or &#039;hsetroot&#039;) to draw a background image (both of these programs display fullscreen correctly), after which &#039;nitrogen --restore&#039; starts functioning. Fix: It looks like the bitmap buffer or whatever is used to store the root background stays at 1400x1050 size even after the second monitor is attached. Nitrogen correctly detects the screen resolutions but fails to resize this &quot;buffer&quot; to the combined 3080x1050 pixels, which is indicated by the fact that it works perfectly after another program has rendered an image as the background. Tested with version 1.3 from: http://projects.l3ib.org/nitrogen/files/nitrogen-1.3-rc.tar.gz screen 1, right: 1400x1050
screen 2, left: 1680x1050

For some reason Nitrogen doesn't want to work correctly after screen 2 has been attached. The rendered image for screen 2 (left) is cut off at 1400 pixels and repeated until the end of the background at screen 1. Nitrogen does does not react at all when I want to change the background for screen 1, and fullscreen just shows the cut off left part of the image repeated on both screens.

Reason:
It looks like it starts rendering from the left but for some reason stops at 1400 pixels wide, which is the old desktop width before attaching the left monitor. This cut-off image is then repeated until the end of the desktop.
Swapping the two monitors (screen 2 right of screen 2) produces the same symptom. The background is correctly rendered on screen 1 (1400x1050), but screen 2 (1680x1050) shows the tiled version of screen 1 and Nitrogen can't change the background individually for that screen.

Workaround:
I can workaround the bug by using another program (like 'feh' or 'hsetroot') to draw a background image (both of these programs display fullscreen correctly), after which 'nitrogen --restore' starts functioning.

Fix:
It looks like the bitmap buffer or whatever is used to store the root background stays at 1400x1050 size even after the second monitor is attached.
Nitrogen correctly detects the screen resolutions but fails to resize this "buffer" to the combined 3080x1050 pixels, which is indicated by the fact that it works perfectly after another program has rendered an image as the background.

Tested with version 1.3 from:
http://projects.l3ib.org/nitrogen/files/nitrogen-1.3-rc.tar.gz]]>
FS#9: Nitrogen exits with a PixbufError message http://bugs.l3ib.org/index.php?do=details&task_id=9 2008-03-27T06:10:25Z Kristaps Esterlins Distro - Slackware 12.0 $ nitrogen terminate called after throwing an instance of &#039;Gdk::PixbufError&#039; Aborted Version - 1.2
$ nitrogen
terminate called after throwing an instance of 'Gdk::PixbufError'
Aborted

Version - 1.2

]]>
FS#1: Add history buttons http://bugs.l3ib.org/index.php?do=details&task_id=1 2007-12-19T12:00:31Z Dave Foster Nitrogen&#039;s main window should have back/forward buttons so you can easily switch between ones you may have picked in a browsing session.