summaryrefslogtreecommitdiffstats
path: root/kdm/kfrontend/themer
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-08-13 03:58:08 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-08-13 03:58:08 +0000
commit3156b910d9e5250170fd01c3e4234cf585c45f3f (patch)
tree458031d328db6ee1b3791fb03d0e5c3ed3a68c51 /kdm/kfrontend/themer
parentfd8aae5abc3d2af171dbeba053cdb2c783123bdb (diff)
downloadtdebase-3156b910d9e5250170fd01c3e4234cf585c45f3f.tar.gz
tdebase-3156b910d9e5250170fd01c3e4234cf585c45f3f.zip
Fix kdm startup when compositor is not enabled
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1246838 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kdm/kfrontend/themer')
-rw-r--r--kdm/kfrontend/themer/kdmpixmap.cpp17
1 files changed, 11 insertions, 6 deletions
diff --git a/kdm/kfrontend/themer/kdmpixmap.cpp b/kdm/kfrontend/themer/kdmpixmap.cpp
index 436483c48..6bb1fc57d 100644
--- a/kdm/kfrontend/themer/kdmpixmap.cpp
+++ b/kdm/kfrontend/themer/kdmpixmap.cpp
@@ -246,9 +246,14 @@ KdmPixmap::drawContents( TQPainter *p, const TQRect &r )
scaledImage = pClass->pixmap.convertToImage();
} else {
kdDebug() << timestamp() << " convertFromImage smoothscale\n";
- TQImage tempImage = pClass->pixmap.convertToImage();
- kdDebug() << timestamp() << " convertToImage done\n";
- scaledImage = tempImage.smoothScale( area.width(), area.height() );
+ if (pClass->pixmap.isNull()) {
+ scaledImage = TQImage();
+ }
+ else {
+ TQImage tempImage = pClass->pixmap.convertToImage();
+ kdDebug() << timestamp() << " convertToImage done\n";
+ scaledImage = tempImage.smoothScale( area.width(), area.height() );
+ }
kdDebug() << timestamp() << " done\n";
}
} else {
@@ -256,7 +261,7 @@ KdmPixmap::drawContents( TQPainter *p, const TQRect &r )
{
scaledImage = pClass->pixmap.convertToImage();
// enforce rgba values for the latter
- scaledImage = scaledImage.convertDepth( 32 );
+ if (!scaledImage.isNull()) scaledImage = scaledImage.convertDepth( 32 );
}
else
pClass->readyPixmap = pClass->pixmap;
@@ -265,7 +270,7 @@ KdmPixmap::drawContents( TQPainter *p, const TQRect &r )
if (haveTint || haveAlpha) {
// blend image(pix) with the given tint
- scaledImage = scaledImage.convertDepth( 32 );
+ if (!scaledImage.isNull()) scaledImage = scaledImage.convertDepth( 32 );
int w = scaledImage.width();
int h = scaledImage.height();
float tint_red = float( pClass->tint.red() ) / 255;
@@ -293,7 +298,7 @@ KdmPixmap::drawContents( TQPainter *p, const TQRect &r )
// Apply the alpha in the same manner as above, exept we are now
// using the hardware blending engine for all painting
scaledImage = pClass->readyPixmap;
- scaledImage = scaledImage.convertDepth( 32 );
+ if (!scaledImage.isNull()) scaledImage = scaledImage.convertDepth( 32 );
int w = scaledImage.width();
int h = scaledImage.height();