Hi again,
After investigation, it happens that the source of the problem is that the screensaver-shuttingdown code (which is compiled-in on the packaged mplayer) probes for the kde screensaver by calling dcop. This should work on "pure" gnome desktop, as this command doesn't exists and returns quickly, and also on kde desktop, as this command run and return quickly. Yet, on a Gnome desktop with KDE libs installed on the hard disk, the "dcop" binary exists, although no dcopserver may be running.
Checking for a running dcopserver before calling dcop should fix the problem
Suggested fix is : from upstream libvo/x11_common.c file, changing
Hi again, shuttingdown code (which is compiled-in on the packaged mplayer) probes for the kde screensaver by calling dcop. This should work on "pure" gnome desktop, as this command doesn't exists and returns quickly, and also on kde desktop, as this command run and return quickly. Yet, on a Gnome desktop with KDE libs installed on the hard disk, the "dcop" binary exists, although no dcopserver may be running.
After investigation, it happens that the source of the problem is that the screensaver-
Checking for a running dcopserver before calling dcop should fix the problem
Suggested fix is : from upstream libvo/x11_common.c file, changing
kdescreensaver_ was_running =
(system
("dcop kdesktop KScreensaverIface isEnabled 2>/dev/null | sed 's/1/true/g' | grep true 2>/dev/null >/dev/null")
== 0);
to
kdescreensaver_ was_running =
( "pidof dcopserver && dcop kdesktop KScreensaverIface isEnabled 2>/dev/null | sed 's/1/true/g' | grep true 2>/dev/null >/dev/null")
(system
== 0);