site  contact  subhomenews

Retrovol bug

May 01, 2010 — BarryK
I noticed in Quirky/Wary, I think others also reported it, that sometimes the Retrovol icon does not appear in the Fbpanel tray. Only sometimes, mostly it does appear. I'm using Retrovol version 0.5.

I have just had this phenomenon happen to me, and I looked in /tmp/xerrs.log. Retrovol has a segmentation fault, with this error:

Invalid unclassed pointer in cast to 'GtkImage'

I'll post a pm to pizzasgood.


Version 0.6 uploaded
Username: Pizzasgood I think the bug you're describing might come from restarting Fbpanel. Retrovol had issues if the tray program exited while it was running. Basically, the tray icon is a window, and when the tray exits, the tray icon's window closes. I've now adjusted it to hide the window instead of closing it, and then attempt to reshow the window during the periodic update routine in case a new tray has been launched. Seems to work. This version also fixes a couple other minor bugs and adds balance support (in the sense that alsamixer does it - instead of directly controlling balance you just change the volume of either the left or right channel, by holding the Shift or Ctrl keys, respectively). It's also a bit more resilient in the event that it becomes a zombie process."3 May 2010, 7:57"01555"'Re Retrovol"BarryK"pizzasgood, No, the crash occurred at first startup of the desktop. When 'fixmenus' is run, it calls 'pfbpanel' to update the Fbpanel menu and that does restart fbpanel, however the script first kills the tray applets, restarts fbpanel then restarts the tray applets. Here is the code in /usr/sbin/pfbpanel: [code] if [ "`pidof fbpanel`" != "" ];then #hack, need to kill then restart the notification-tray applets... killall retrovol killall blinky_tray killall freememapplet_tray killall traytemp killall vattery killall powerapplet_tray #now kill and restart the panel... killall fbpanel fbpanel & sleep 1 [ "`which freememapplet_tray`" != "" ] && freememapplet_tray & sleep 0.1 [ "`which blinky_tray`" != "" ] && blinky_tray & sleep 0.1 if [ "`which retrovol`" != "" ];then if [ "`retrovol -help 2>&1 | grep '\-show'`" != "" ];then retrovol & #100119 tray volume control by pizzasgood. else retrovol -hide & #100413 versions after 0.2. fi fi sleep 0.1 [ -f /root/Startup/traytemp ] && /root/Startup/traytemp & sleep 0.1 [ -f /root/Startup/vattery ] && /root/Startup/vattery & [ -f /root/Startup/powerapplet_tray ] && /root/Startup/powerapplet_tray & else if [ "$2" = start ]; then fbpanel & fi fi [/code] Username: 3 May 2010, 8:44
"01555"'Retrovol"Pizzasgood"Maybe it's related to /var/cache/fontconfig. When I boot a fresh iso in qemu, it had the error you mention at first, but then it goes away if I manually run retrovol or restart X or reboot. But if I delete /var/cache/fontconfig, sometimes it comes back. When I killed X, wrote an infinite while loop that ran in the background deleting everything in that directory, and then restarted X with that loop running, retrovol consistently didn't work. The same happened if I powered down, mounted the save file, and removed the directory. So I think maybe there's a race condition somewhere that sometimes results in retrovol attempting to run before the font cache is set up properly if it wasn't already?"4 May 2010, 9:01"01555"'

Tags: quirky