sw/source/writerfilter/dmapper/NumberingManager.cxx |   21 ++++++++------------
 sw/source/writerfilter/dmapper/SettingsTable.cxx    |    2 -
 2 files changed, 10 insertions(+), 13 deletions(-)

New commits:
commit 617daad25e701c5c1a9774ebec4845e156ea0155
Author:     Xisco Fauli <xiscofa...@libreoffice.org>
AuthorDate: Thu Apr 17 01:27:53 2025 +0200
Commit:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
CommitDate: Wed Apr 23 16:30:06 2025 +0200

    sw: fix warning C6011: Dereferencing NULL pointer 'rSprm.getValue()'
    
    Change-Id: I4ebd78319b0d47b34ab311a2f57a921bc8369aac
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184302
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>
    (cherry picked from commit 6c8f4322ac2dad1d8ba4f4a8ad83edfcd00d0d63)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184311
    Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com>

diff --git a/sw/source/writerfilter/dmapper/NumberingManager.cxx 
b/sw/source/writerfilter/dmapper/NumberingManager.cxx
index 7f5a415a425b..f7ce330816cf 100644
--- a/sw/source/writerfilter/dmapper/NumberingManager.cxx
+++ b/sw/source/writerfilter/dmapper/NumberingManager.cxx
@@ -826,6 +826,7 @@ void ListsManager::lcl_sprm( Sprm& rSprm )
     static bool bIsStartVisited = false;
     const Value* pValue = rSprm.getValue();
     sal_Int32 nIntValue = pValue ? pValue->getInt() : 0;
+    OUString sStringValue = pValue ? pValue->getString() : OUString();
     switch( nSprmId )
     {
         case NS_ooxml::LN_CT_Numbering_abstractNum:
@@ -934,13 +935,12 @@ void ListsManager::lcl_sprm( Sprm& rSprm )
         break;
         case NS_ooxml::LN_CT_Num_abstractNumId:
         {
-            sal_Int32 nAbstractNumId = rSprm.getValue()->getInt();
             ListDef* pListDef = dynamic_cast< ListDef* >( 
m_pCurrentDefinition.get( ) );
             if ( pListDef != nullptr )
             {
                 // The current def should be a ListDef
                 pListDef->SetAbstractDefinition(
-                       GetAbstractList( nAbstractNumId ) );
+                       GetAbstractList( nIntValue ) );
             }
         }
         break;
@@ -990,15 +990,15 @@ void ListsManager::lcl_sprm( Sprm& rSprm )
             if (ListLevel::Pointer pCurrentLevel = 
m_pCurrentDefinition->GetCurrentLevel())
             {
                 SvxNumberFormat::LabelFollowedBy value = 
SvxNumberFormat::LISTTAB;
-                if( rSprm.getValue()->getString() == "tab" )
+                if( sStringValue == "tab" )
                     value = SvxNumberFormat::LISTTAB;
-                else if( rSprm.getValue()->getString() == "space" )
+                else if( sStringValue == "space" )
                     value = SvxNumberFormat::SPACE;
-                else if( rSprm.getValue()->getString() == "nothing" )
+                else if( sStringValue == "nothing" )
                     value = SvxNumberFormat::NOTHING;
                 else
                     SAL_WARN( "writerfilter", "Unknown ST_LevelSuffix value "
-                        << rSprm.getValue()->getString());
+                        << sStringValue);
                 pCurrentLevel->SetValue( nSprmId, value );
             }
         }
@@ -1066,11 +1066,10 @@ void ListsManager::lcl_sprm( Sprm& rSprm )
         break;
         case NS_ooxml::LN_CT_Lvl_pStyle:
         {
-            OUString sStyleName = rSprm.getValue( )->getString( );
             if (ListLevel::Pointer pLevel = 
m_pCurrentDefinition->GetCurrentLevel())
             {
                 StyleSheetTablePtr pStylesTable = 
m_rDMapper.GetStyleSheetTable( );
-                const StyleSheetEntryPtr pStyle = 
pStylesTable->FindStyleSheetByISTD( sStyleName );
+                const StyleSheetEntryPtr pStyle = 
pStylesTable->FindStyleSheetByISTD( sStringValue );
                 pLevel->SetParaStyle( pStyle );
             }
         }
@@ -1095,14 +1094,12 @@ void ListsManager::lcl_sprm( Sprm& rSprm )
         break;
         case NS_ooxml::LN_CT_AbstractNum_numStyleLink:
         {
-            OUString sStyleName = rSprm.getValue( )->getString( );
-            m_pCurrentDefinition->SetNumStyleLink(sStyleName);
+            m_pCurrentDefinition->SetNumStyleLink(sStringValue);
         }
         break;
         case NS_ooxml::LN_CT_AbstractNum_styleLink:
         {
-            OUString sStyleName = rSprm.getValue()->getString();
-            m_pCurrentDefinition->SetStyleLink(sStyleName);
+            m_pCurrentDefinition->SetStyleLink(sStringValue);
         }
         break;
         case NS_ooxml::LN_EG_RPrBase_rFonts: //contains font properties
diff --git a/sw/source/writerfilter/dmapper/SettingsTable.cxx 
b/sw/source/writerfilter/dmapper/SettingsTable.cxx
index 7ec07453d4f6..cba9292e93d3 100644
--- a/sw/source/writerfilter/dmapper/SettingsTable.cxx
+++ b/sw/source/writerfilter/dmapper/SettingsTable.cxx
@@ -313,7 +313,7 @@ void SettingsTable::lcl_sprm(Sprm& rSprm)
     break;
     case NS_ooxml::LN_CT_Settings_trackRevisions:
     {
-        m_pImpl->m_bRecordChanges = bool(rSprm.getValue( )->getInt( ) );
+        m_pImpl->m_bRecordChanges = bool(nIntValue);
     }
     break;
     case NS_ooxml::LN_CT_Settings_revisionView:

Reply via email to