summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-04-07 21:29:01 +0000
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2014-04-07 21:29:01 +0000
commit1de6538f734e6e0800bc92ada7a3d8f8afd6268b (patch)
tree484d4a3723e40d99d4ff97260a1e235bd6279f5e
parent5f270bc23fa613d6a1327b09188d8e96a514a461 (diff)
downloadtdebase-1de6538f734e6e0800bc92ada7a3d8f8afd6268b.tar.gz
tdebase-1de6538f734e6e0800bc92ada7a3d8f8afd6268b.zip
Fix Konqueror popup menu hang when tdeioslave localurl job is not responding properly
-rw-r--r--libkonq/konq_popupmenu.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/libkonq/konq_popupmenu.cc b/libkonq/konq_popupmenu.cc
index c5042b873..b5e3be44d 100644
--- a/libkonq/konq_popupmenu.cc
+++ b/libkonq/konq_popupmenu.cc
@@ -429,8 +429,7 @@ void KonqPopupMenu::setup(KonqPopupFlags kpf)
connect(localURLJob, TQT_SIGNAL(localURL(TDEIO::LocalURLJob*, const KURL&, bool)), this, TQT_SLOT(slotLocalURL(TDEIO::LocalURLJob*, const KURL&, bool)));
connect(localURLJob, TQT_SIGNAL(destroyed()), this, TQT_SLOT(slotLocalURLKIODestroyed()));
while (!d->localURLSlotFired) {
- usleep(100);
- tqApp->eventLoop()->processEvents(TQEventLoop::ExcludeUserInput);
+ kapp->eventLoop()->enterLoop();
}
if (d->localURLResultIsLocal) {
realURL = d->localURLResultURL;
@@ -1231,6 +1230,7 @@ void KonqPopupMenu::slotLocalURL(TDEIO::LocalURLJob *job, const KURL& url, bool
d->localURLSlotFired = true;
d->localURLResultURL = url;
d->localURLResultIsLocal = isLocal;
+ kapp->eventLoop()->exitLoop();
}
void KonqPopupMenu::slotLocalURLKIODestroyed()
@@ -1239,6 +1239,7 @@ void KonqPopupMenu::slotLocalURLKIODestroyed()
d->localURLSlotFired = true;
d->localURLResultURL = KURL();
d->localURLResultIsLocal = false;
+ kapp->eventLoop()->exitLoop();
}
}