vcl/unx/gtk3_kde5/kde5_filepicker_ipc.cxx |    3 +++
 1 file changed, 3 insertions(+)

New commits:
commit 4a242e736be63f4ca40963f6690d9f0619bad29a
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Wed Sep 12 10:51:25 2018 +0200
Commit:     Thorsten Behrens <thorsten.behr...@cib.de>
CommitDate: Fri Sep 21 15:18:42 2018 +0200

    tdf#119814 Fix UI freeze with gtk3_kde5 filepicker
    
    Previously, the loop inside 'runCommands()' was triggered
    every time 'm_stdinNotifier' got activated.
    
    This could lead to both the soffice and the separate
    lo_kde5filepicker process blocking indefinitely, when
    during the execution of 'KDE5FilePicker::execute()', the
    processing of another event started which would then
    be blocked in the 'readCommand()' call; finally causing
    both processes to wait for input from stdin that would
    never appear (s. backtrace attached to tdf#119814).
    
    Since the loop inside 'runCommands()' runs until all
    commands have been processed, it's sufficient to
    start it once when 'm_stdinNotifier' is activated for the
    first time.
    
    Change-Id: Ie9180dbaf7e3f7ec033ad6d53fabe1b1ee363465
    Reviewed-on: https://gerrit.libreoffice.org/60380
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    (cherry picked from commit e95930d96459cc653342e78617db9498255569d0)
    Reviewed-on: https://gerrit.libreoffice.org/60407
    Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de>

diff --git a/vcl/unx/gtk3_kde5/kde5_filepicker_ipc.cxx 
b/vcl/unx/gtk3_kde5/kde5_filepicker_ipc.cxx
index 26c19f6b4c9b..aeb864eae2ef 100644
--- a/vcl/unx/gtk3_kde5/kde5_filepicker_ipc.cxx
+++ b/vcl/unx/gtk3_kde5/kde5_filepicker_ipc.cxx
@@ -65,6 +65,9 @@ FilePickerIpc::~FilePickerIpc() = default;
 
 void FilePickerIpc::readCommands()
 {
+    // don't trigger again, loop runs until all is done
+    disconnect(m_stdinNotifier, &QSocketNotifier::activated, this, 
&FilePickerIpc::readCommands);
+
     while (readCommand())
     {
         // read next command
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to