framework/source/services/autorecovery.cxx |    4 ++++
 1 file changed, 4 insertions(+)

New commits:
commit c3cb2f956d760ba6ddd9a882e952b2bd7c1af145
Author:     Justin Luth <jl...@mail.com>
AuthorDate: Wed Aug 9 07:07:28 2023 -0400
Commit:     Justin Luth <jl...@mail.com>
CommitDate: Thu Aug 10 22:23:03 2023 +0200

    partial Revert "tdf#144512 autorecovery: always wait for user idle...
    
    ... with timed save" in order to restore useful comments
    
    This reverts 24.2 commit 75d7464e7eb94df1ad9904ad750b27d99d91abc5,
    where the ResettableMutexGuard's safety is cancelled by a g.clear()
      // } /* SAFE */
    and re-instated with a g.reset()
      // /* SAFE */ {
    
    Thanks Mike for explaining the obvious to me.
    
    Change-Id: I98016a50221b734a38d14bce0a958c6af9e57944
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155514
    Tested-by: Jenkins
    Reviewed-by: Justin Luth <jl...@mail.com>

diff --git a/framework/source/services/autorecovery.cxx 
b/framework/source/services/autorecovery.cxx
index 48c8978c9ab1..213ba729be97 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -2974,11 +2974,13 @@ AutoRecovery::ETimerType AutoRecovery::implts_saveDocs( 
      bool        bAllow
             continue;
         }
 
+        // } /* SAFE */
         g.clear();
         // changing of aInfo and flushing it is done inside implts_saveOneDoc!
         implts_saveOneDoc(sBackupPath, aInfo, xExternalProgress);
         implts_informListener(eJob, 
AutoRecovery::implst_createFeatureStateEvent(eJob, OPERATION_UPDATE, &aInfo));
         g.reset();
+        // /* SAFE */ {
 
         *pIt = aInfo;
     }
@@ -2990,11 +2992,13 @@ AutoRecovery::ETimerType AutoRecovery::implts_saveDocs( 
      bool        bAllow
         pIt = dangerousDoc;
         AutoRecovery::TDocumentInfo aInfo = *pIt;
 
+        // } /* SAFE */
         g.clear();
         // changing of aInfo and flushing it is done inside implts_saveOneDoc!
         implts_saveOneDoc(sBackupPath, aInfo, xExternalProgress);
         implts_informListener(eJob, 
AutoRecovery::implst_createFeatureStateEvent(eJob, OPERATION_UPDATE, &aInfo));
         g.reset();
+        // /* SAFE */ {
 
         *pIt = aInfo;
     }

Reply via email to