aboutsummaryrefslogtreecommitdiff
path: root/lib/gui/epixmap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gui/epixmap.cpp')
-rw-r--r--lib/gui/epixmap.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/gui/epixmap.cpp b/lib/gui/epixmap.cpp
index dc998531..ca3e4562 100644
--- a/lib/gui/epixmap.cpp
+++ b/lib/gui/epixmap.cpp
@@ -14,8 +14,12 @@ void ePixmap::setPixmap(gPixmap *pixmap)
void ePixmap::setPixmapFromFile(const char *filename)
{
- loadPNG(m_pixmap, filename);
-
+ // use direct filename for absolute path or relative to enigma2 DATADIR otherwise
+ if (filename[0] == '/')
+ loadPNG(m_pixmap, filename);
+ else
+ loadPNG(m_pixmap, strcat(DATADIR "/enigma2/", filename));
+
// TODO
getDesktop()->makeCompatiblePixmap(*m_pixmap);
event(evtChangedPixmap);