sw/source/core/inc/unoport.hxx | 3 +-- sw/source/core/unocore/unoredline.cxx | 13 +++++++++---- 2 files changed, 10 insertions(+), 6 deletions(-)
New commits: commit cca02a2fbdbcc6f178c05543b0315fe8e1ade812 Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Mon Sep 14 18:59:05 2020 +0200 Commit: Michael Stahl <michael.st...@cib.de> CommitDate: Tue Sep 15 11:15:00 2020 +0200 sw: don't throw if disposed in SwXRedlinePortion::getPropertyValue() No other SwXTextPortion method does that, so avoid it here for consistency, just return void. Change-Id: Iae9b6b12e21609e315a9f269feb0703657bbf3cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102691 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@cib.de> diff --git a/sw/source/core/inc/unoport.hxx b/sw/source/core/inc/unoport.hxx index 7817d7d16d36..69c407d5b135 100644 --- a/sw/source/core/inc/unoport.hxx +++ b/sw/source/core/inc/unoport.hxx @@ -273,8 +273,7 @@ class SwXRedlinePortion : public SwXTextPortion private: SwRangeRedline const& m_rRedline; - /// @throws css::uno::RuntimeException - void Validate(); + bool Validate(); using SwXTextPortion::GetPropertyValue; diff --git a/sw/source/core/unocore/unoredline.cxx b/sw/source/core/unocore/unoredline.cxx index 615b1b04c4b4..4ba69d93b553 100644 --- a/sw/source/core/unocore/unoredline.cxx +++ b/sw/source/core/unocore/unoredline.cxx @@ -197,7 +197,10 @@ static uno::Sequence<beans::PropertyValue> lcl_GetSuccessorProperties(const SwRa uno::Any SwXRedlinePortion::getPropertyValue( const OUString& rPropertyName ) { SolarMutexGuard aGuard; - Validate(); + if (!Validate()) + { + return uno::Any(); + } uno::Any aRet; if(rPropertyName == UNO_NAME_REDLINE_TEXT) { @@ -225,7 +228,7 @@ uno::Any SwXRedlinePortion::getPropertyValue( const OUString& rPropertyName ) return aRet; } -void SwXRedlinePortion::Validate() +bool SwXRedlinePortion::Validate() { SwUnoCursor& rUnoCursor = GetCursor(); //search for the redline @@ -233,9 +236,11 @@ void SwXRedlinePortion::Validate() const SwRedlineTable& rRedTable = pDoc->getIDocumentRedlineAccess().GetRedlineTable(); bool bFound = false; for(size_t nRed = 0; nRed < rRedTable.size() && !bFound; nRed++) + { bFound = &m_rRedline == rRedTable[nRed]; - if(!bFound) - throw uno::RuntimeException(); + } + return bFound; + // don't throw; the only caller can return void instead } uno::Sequence< sal_Int8 > SAL_CALL SwXRedlinePortion::getImplementationId( ) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits