diff options
author | Jan-Marek Glogowski <glogow@fbihome.de> | 2014-03-13 21:55:31 +0100 |
---|---|---|
committer | Jan-Marek Glogowski <glogow@fbihome.de> | 2014-08-20 09:44:43 +0200 |
commit | 78b591faa2b0c85bef0b98acbfcd9580dc8b72e8 (patch) | |
tree | d62a5a4f944d8b7389ff7e22c0533069680cbf1a | |
parent | eeae1447d07e7f6479ce5e890a5595140f660924 (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.cxx | 17 |
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 ); } } |