vcl/unx/kde4/KDEXLib.cxx | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-)
New commits: commit 7317d3132ab816a4bfa394fd93f55e0d12e6d6e6 Author: Jan-Marek Glogowski <glo...@fbihome.de> Date: Thu Mar 13 21:55:31 2014 +0100 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 (cherry picked from commit daf011870efae282244c0298494820d9a0c6d3bc) Change-Id: I4075fc26d54e5abb2e1cdb535d84f16c8fd3df09 Reviewed-on: https://gerrit.libreoffice.org/8705 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Caolán McNamara <caol...@redhat.com> diff --git a/vcl/unx/kde4/KDEXLib.cxx b/vcl/unx/kde4/KDEXLib.cxx index 6bd6c1a..e08856e 100644 --- a/vcl/unx/kde4/KDEXLib.cxx +++ b/vcl/unx/kde4/KDEXLib.cxx @@ -301,9 +301,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()) @@ -317,21 +314,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 ); } }
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits