Version: 0.9.3 (using KDE 3.5.9)
Installed from: Ubuntu Packages
If the path to an image file contains a single quote character ('),
digikam is not able to set it as the desktop background image.
Steps To Reproduce
- Create an album with a single quote character (') in its name, or
add a photo with a single quote character in its name. E.g.
- Try to set it as the desktop background using the "Set As
Background" entry in the Image menu.
With strace, I found the following errors when trying to set the
[pid 8172] write(2, "/bin/sh: ", 9) = 9
[pid 8172] write(2, "Syntax error: Unterminated quote"..., 40) = 40
Further investigation with strace revealed that digikam uses dcop to
set the background image - something to the effect of:
dcop kdesktop KBackgroundIface setWallpaper ...
I'm not sure if this is the correct place for the fix, but I found
the following code in imageviewer.cpp:
QString com=QString("dcop kdesktop KBackgroundIface setWallpaper '%1' %2 >/dev/null 2>/dev/null")
The problem seems pretty obvious from that snippet. I'll try and
submit a patch later.
The code to set an image as desktop wallpaper is embeded in a kipi-plugin, not in digiKam core. Code is here:
Look the method Plugin_WallPaper::setWallpaper() for details
What's news about this file ?
this plugin is currently disabled
yes, because a Plasma do not have yet an interface to push image over background desktop. I don't know yet about KDE 4.3 (can be fixed).
DBUS Interface must be called "org.kde.desktop.Background.xml"...
*** This bug has been marked as a duplicate of bug 217950 ***
Fixed with bug #217950