sc/source/core/data/documen8.cxx    |   24 +++++++++++++++---------
 sc/source/core/data/formulacell.cxx |   12 +++++++++---
 2 files changed, 24 insertions(+), 12 deletions(-)

New commits:
commit c1a9b1b48a5483a9794ec75aec33e77d2eec7a97
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sun Nov 30 10:34:50 2025 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sun Nov 30 16:20:55 2025 +0100

    cid#1660275 Uncaught exception
    
    Change-Id: Iae44fdb0ec62b851f5683af4fdaa37fca3d652b4
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194835
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins

diff --git a/sc/source/core/data/formulacell.cxx 
b/sc/source/core/data/formulacell.cxx
index 7597e5f1a136..296689b35fba 100644
--- a/sc/source/core/data/formulacell.cxx
+++ b/sc/source/core/data/formulacell.cxx
@@ -1486,13 +1486,19 @@ struct TemporaryCellGroupMaker
             mCell->GetDocument().GetRecursionHelper().AddTemporaryGroupCell( 
mCell );
         }
     }
-    ~TemporaryCellGroupMaker() COVERITY_NOEXCEPT_FALSE
+    ~TemporaryCellGroupMaker()
     {
-        if( mEnabled )
-            
mCell->GetDocument().GetRecursionHelper().CleanTemporaryGroupCells();
+        suppress_fun_call_w_exception(ImplDestroy());
     }
     ScFormulaCell* mCell;
     const bool mEnabled;
+
+private:
+    void ImplDestroy()
+    {
+        if( mEnabled )
+            
mCell->GetDocument().GetRecursionHelper().CleanTemporaryGroupCells();
+    }
 };
 
 } // namespace
commit fc9b5f1f17ac8991741cea56e650ba353d7953f1
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sun Nov 30 10:33:22 2025 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sun Nov 30 16:20:46 2025 +0100

    cid#1659836 Uncaught exception
    
    and
    
    cid#1659954 Uncaught exception
    cid#1659957 Uncaught exception
    
    Change-Id: Ie92b14b3f102b2fd80b3c8d798080d7d6885094d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194834
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>

diff --git a/sc/source/core/data/documen8.cxx b/sc/source/core/data/documen8.cxx
index 07574c35d741..3dfa33500b60 100644
--- a/sc/source/core/data/documen8.cxx
+++ b/sc/source/core/data/documen8.cxx
@@ -488,16 +488,9 @@ public:
         mrDoc.EnableIdle(false);
     }
 
-    ~IdleCalcTextWidthScope() COVERITY_NOEXCEPT_FALSE
+    ~IdleCalcTextWidthScope()
     {
-        SfxPrinter* pDev = mrDoc.GetPrinter();
-        if (pDev)
-            pDev->SetMapMode(maOldMapMode);
-
-        if (mbProgress)
-            ScProgress::DeleteInterpretProgress();
-
-        mrDoc.EnableIdle(true);
+        suppress_fun_call_w_exception(ImplDestroy());
     }
 
     SCTAB Tab() const { return mrCalcPos.Tab(); }
@@ -525,6 +518,19 @@ public:
     bool hasProgressBar() const { return mbProgress; }
 
     ScStyleSheetPool* getStylePool() { return mpStylePool; }
+
+private:
+    void ImplDestroy()
+    {
+        SfxPrinter* pDev = mrDoc.GetPrinter();
+        if (pDev)
+            pDev->SetMapMode(maOldMapMode);
+
+        if (mbProgress)
+            ScProgress::DeleteInterpretProgress();
+
+        mrDoc.EnableIdle(true);
+    }
 };
 
 }

Reply via email to