summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2014-03-13 21:55:31 +0100
committerJan-Marek Glogowski <glogow@fbihome.de>2014-03-14 23:35:47 +0100
commitdaf011870efae282244c0298494820d9a0c6d3bc (patch)
tree1c2ad5ef52ed81e30fe3519779a36473b9d45568
parent69e7f4491ec78384c46653d3cd8870c97cc9218a (diff)
Revert "Rewrite Qt4 based nested yield mutex locking."
This reverts the unx/kde4/KDEXLib.cxx part of commit 13a34f4c6307d1bd2443cbf3fbd83bfdd8cdbafb. Conflicts: vcl/unx/kde4/KDE4FilePicker.cxx vcl/unx/kde4/KDEXLib.cxx Change-Id: Ica8a0f678f080ae7d763bb7da7761d20ceec328c
-rw-r--r--vcl/unx/kde4/KDEXLib.cxx17
1 files changed, 3 insertions, 14 deletions
diff --git a/vcl/unx/kde4/KDEXLib.cxx b/vcl/unx/kde4/KDEXLib.cxx
index a31c7e0f433a..e936c69aae5b 100644
--- a/vcl/unx/kde4/KDEXLib.cxx
+++ b/vcl/unx/kde4/KDEXLib.cxx
@@ -265,9 +265,6 @@ void KDEXLib::socketNotifierActivated( int fd )
void KDEXLib::Yield( bool bWait, bool bHandleAllCurrentEvents )
{
- // Nested yield loop counter.
- static int loop_depth = 0;
-
if( eventLoopType == LibreOfficeEventLoop )
{
if( qApp->thread() == QThread::currentThread())
@@ -281,21 +278,13 @@ void KDEXLib::Yield( bool bWait, bool bHandleAllCurrentEvents )
// if we are the main thread (which is where the event processing is done),
// good, just do it
- if( qApp->thread() == QThread::currentThread()) {
- // Release the yield lock before entering a nested loop.
- if (loop_depth > 0)
- SalYieldMutexReleaser aReleaser;
- loop_depth++;
+ if( qApp->thread() == QThread::currentThread())
processYield( bWait, bHandleAllCurrentEvents );
- loop_depth--;
- }
- else {
+ else
+ {
// we were called from another thread;
// release the yield lock to prevent deadlock.
SalYieldMutexReleaser aReleaser;
-
- // if this deadlocks, event processing needs to go into a separate
- // thread or some other solution needs to be found
Q_EMIT processYieldSignal( bWait, bHandleAllCurrentEvents );
}
}