summaryrefslogtreecommitdiffstats
path: root/kdesktop/bgmanager.cc
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-11-10 18:31:45 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-11-10 18:31:45 -0600
commitb0c4ab328e98e611c61ce2b34b4535e0120781bd (patch)
tree2b1c3f772ec0629962330ad7f352c9c67258befb /kdesktop/bgmanager.cc
parent2f49eb806a81e2a1d136d54a4aca1875115592f1 (diff)
downloadtdebase-b0c4ab328e98e611c61ce2b34b4535e0120781bd.tar.gz
tdebase-b0c4ab328e98e611c61ce2b34b4535e0120781bd.zip
Break potential infinite loop on DCOP wallpaper export call
This resolves Bug 2176
Diffstat (limited to 'kdesktop/bgmanager.cc')
-rw-r--r--kdesktop/bgmanager.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/kdesktop/bgmanager.cc b/kdesktop/bgmanager.cc
index 4b3bca252..adb25d216 100644
--- a/kdesktop/bgmanager.cc
+++ b/kdesktop/bgmanager.cc
@@ -602,7 +602,6 @@ void KBackgroundManager::slotCrossFadeTimeout()
}
if (mAlpha <= 0.0 || mBenchmark.elapsed() > 300 ) {
- bool do_cleanup = true;
mAlpha = 1;
m_crossTimer->stop();
KPixmap pixm(mNextScreen);
@@ -626,12 +625,10 @@ void KBackgroundManager::slotCrossFadeTimeout()
*/
void KBackgroundManager::slotImageDone(int desk)
{
- bool t_useViewports = 1;
TQSize s(m_pKwinmodule->numberOfViewports(m_pKwinmodule->currentDesktop()));
m_numberOfViewports = s.width() * s.height();
if (m_numberOfViewports < 1) {
m_numberOfViewports = 1;
- t_useViewports = 0;
}
KPixmap *pm = new KPixmap();
@@ -897,8 +894,11 @@ void KBackgroundManager::changeWallpaper()
void KBackgroundManager::setExport(int _export)
{
// kdDebug() << "KBackgroundManager enabling exports.\n";
+ bool changed = (_export != m_bExport);
applyExport(_export);
- slotChangeDesktop(0);
+ if (changed) {
+ slotChangeDesktop(0);
+ }
}
// DCOP exported