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-08-20 09:44:43 +0200
commit78b591faa2b0c85bef0b98acbfcd9580dc8b72e8 (patch)
treed62a5a4f944d8b7389ff7e22c0533069680cbf1a
parenteeae1447d07e7f6479ce5e890a5595140f660924 (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 (cherry picked from commit daf011870efae282244c0298494820d9a0c6d3bc)
-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 73c2ebeee583..c4b8d929f400 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 );
}
}