basctl/source/basicide/baside2.cxx | 6 basctl/source/basicide/baside2.hxx | 4 basctl/source/basicide/baside2b.cxx | 24 +- basctl/source/basicide/basides1.cxx | 2 basctl/source/basicide/basobj2.cxx | 8 basctl/source/basicide/macrodlg.cxx | 2 basic/qa/cppunit/basic_coverage.cxx | 2 basic/qa/cppunit/basictest.cxx | 6 basic/qa/cppunit/test_nested_struct.cxx | 10 basic/qa/cppunit/test_vba.cxx | 8 basic/source/basmgr/basmgr.cxx | 24 +- basic/source/classes/errobject.cxx | 3 basic/source/classes/eventatt.cxx | 21 - basic/source/classes/image.cxx | 2 basic/source/classes/sb.cxx | 23 +- basic/source/classes/sbunoobj.cxx | 154 +++++++------- basic/source/classes/sbxmod.cxx | 54 ++-- basic/source/comp/codegen.cxx | 2 basic/source/runtime/methods.cxx | 14 - basic/source/runtime/methods1.cxx | 4 basic/source/runtime/props.cxx | 2 basic/source/runtime/runtime.cxx | 113 +++++----- basic/source/sbx/sbxarray.cxx | 22 +- basic/source/sbx/sbxexec.cxx | 24 +- basic/source/sbx/sbxobj.cxx | 61 ++--- basic/source/sbx/sbxvar.cxx | 8 chart2/source/controller/dialogs/DataBrowser.cxx | 4 dbaccess/source/ui/misc/TableCopyHelper.cxx | 4 dbaccess/source/ui/querydesign/SelectionBrowseBox.cxx | 2 filter/source/msfilter/msdffimp.cxx | 8 filter/source/msfilter/svdfppt.cxx | 4 filter/source/msfilter/svxmsbas2.cxx | 2 idl/inc/basobj.hxx | 2 idl/inc/globals.hxx | 2 idl/inc/object.hxx | 2 idl/source/objects/object.cxx | 4 idl/source/objects/slot.cxx | 6 idl/source/objects/types.cxx | 4 idl/source/prj/parser.cxx | 22 +- include/basic/sbmeth.hxx | 2 include/basic/sbstar.hxx | 2 include/basic/sbxobj.hxx | 6 include/sfx2/lnkbase.hxx | 4 include/sfx2/viewfrm.hxx | 3 include/svl/lckbitem.hxx | 2 include/svx/gridctrl.hxx | 2 include/tools/inetmsg.hxx | 2 include/tools/ref.hxx | 5 include/tools/stream.hxx | 2 reportdesign/source/filter/xml/xmlfilter.cxx | 2 reportdesign/source/ui/dlg/GroupsSorting.cxx | 2 sc/qa/unit/bugfix-test.cxx | 2 sc/qa/unit/copy_paste_test.cxx | 4 sc/qa/unit/subsequent_export-test.cxx | 68 +++--- sc/source/core/data/validat.cxx | 2 sc/source/core/tool/interpr4.cxx | 10 sc/source/filter/excel/excel.cxx | 2 sc/source/filter/excel/excimp8.cxx | 2 sc/source/filter/excel/expop2.cxx | 6 sc/source/filter/excel/xestream.cxx | 2 sc/source/filter/ftools/ftools.cxx | 2 sc/source/filter/html/htmlpars.cxx | 4 sc/source/filter/oox/worksheetsettings.cxx | 3 sc/source/filter/xcl97/xcl97rec.cxx | 2 sc/source/filter/xml/xmlexprt.cxx | 2 sc/source/ui/app/drwtrans.cxx | 2 sc/source/ui/app/seltrans.cxx | 8 sc/source/ui/app/transobj.cxx | 4 sc/source/ui/docshell/docfunc.cxx | 2 sc/source/ui/docshell/docsh3.cxx | 2 sc/source/ui/docshell/externalrefmgr.cxx | 4 sc/source/ui/pagedlg/areasdlg.cxx | 2 sc/source/ui/unoobj/viewuno.cxx | 2 sc/source/ui/vba/vbaapplication.cxx | 6 sc/source/ui/view/drawvie4.cxx | 2 sc/source/ui/view/gridwin4.cxx | 2 sc/source/ui/view/viewdata.cxx | 2 sc/source/ui/view/viewfun2.cxx | 2 sc/source/ui/view/viewfun3.cxx | 6 sc/source/ui/view/viewfun5.cxx | 2 scripting/source/basprov/basmodnode.cxx | 4 scripting/source/basprov/basscript.cxx | 18 - sd/qa/unit/HtmlExportTest.cxx | 2 sd/qa/unit/export-tests-ooxml1.cxx | 46 ++-- sd/qa/unit/export-tests-ooxml2.cxx | 42 +-- sd/qa/unit/export-tests.cxx | 14 - sd/qa/unit/import-tests.cxx | 2 sd/source/core/drawdoc.cxx | 2 sd/source/filter/eppt/eppt.cxx | 6 sd/source/filter/ppt/pptin.cxx | 2 sd/source/filter/ppt/propread.cxx | 4 sd/source/ui/app/sdxfer.cxx | 2 sd/source/ui/slidesorter/controller/SlsClipboard.cxx | 2 sd/source/ui/slidesorter/controller/SlsSlotManager.cxx | 6 sd/source/ui/view/ViewClipboard.cxx | 2 sd/source/ui/view/sdview3.cxx | 4 sfx2/source/appl/macroloader.cxx | 4 sfx2/source/appl/xpackcreator.cxx | 2 sfx2/source/bastyp/progress.cxx | 18 - sfx2/source/doc/docfile.cxx | 2 sfx2/source/doc/doctempl.cxx | 2 sfx2/source/doc/printhelper.cxx | 10 sfx2/source/doc/sfxbasemodel.cxx | 74 +++--- sfx2/source/view/viewfrm.cxx | 6 sot/source/sdstor/storage.cxx | 4 sot/source/sdstor/ucbstorage.cxx | 8 starmath/qa/cppunit/test_cursor.cxx | 8 starmath/qa/cppunit/test_node.cxx | 2 starmath/qa/cppunit/test_nodetotextvisitors.cxx | 8 starmath/qa/cppunit/test_parse.cxx | 2 starmath/qa/extras/mmlexport-test.cxx | 2 starmath/qa/extras/mmlimport-test.cxx | 2 starmath/source/document.cxx | 2 starmath/source/smdetect.cxx | 2 starmath/source/unofilter.cxx | 2 svl/source/items/lckbitem.cxx | 4 svx/source/dialog/charmap.cxx | 6 svx/source/fmcomp/fmgridif.cxx | 2 svx/source/fmcomp/gridctrl.cxx | 12 - svx/source/gallery2/galtheme.cxx | 4 sw/source/core/crsr/bookmrk.cxx | 2 sw/source/core/doc/DocumentLinksAdministrationManager.cxx | 4 sw/source/core/docnode/section.cxx | 8 sw/source/core/fields/ddefld.cxx | 10 sw/source/core/graphic/ndgrf.cxx | 28 +- sw/source/filter/basflt/shellio.cxx | 2 sw/source/filter/ww8/wrtww8gr.cxx | 2 sw/source/filter/ww8/ww8glsy.cxx | 2 sw/source/filter/ww8/ww8par.cxx | 10 sw/source/filter/ww8/ww8par4.cxx | 6 sw/source/filter/ww8/ww8par5.cxx | 2 sw/source/ui/index/cnttab.cxx | 18 - sw/source/uibase/dbui/dbmgr.cxx | 14 - sw/source/uibase/uno/unomailmerge.cxx | 6 unotools/source/ucbhelper/ucblockbytes.cxx | 4 unotools/source/ucbhelper/ucbstreamhelper.cxx | 11 - vcl/quartz/salgdi.cxx | 8 vcl/source/outdev/font.cxx | 2 vcl/unx/generic/glyphs/freetype_glyphcache.cxx | 6 vcl/win/gdi/salfont.cxx | 14 - writerperfect/source/common/WPXSvInputStream.cxx | 2 141 files changed, 685 insertions(+), 684 deletions(-)
New commits: commit f004aa99514d385f3ee254bba735f5eaeb7d9ad8 Author: Jacek Fraczek <fraczek.ja...@gmail.com> Date: Wed Oct 5 22:00:51 2016 +0200 tdf#89307: Removed SvRef::operator T*() Conditional statements are using SvRef::Is() method. Changed static_cast<T*>(svRef<T>) occurances to svRef.get(). Added operator == and != to SvRef. SbxObject::Execute is using SbxVariableRef internally. SbxObject::FindQualified is using SbxVariableRef internally. Change-Id: I45b553e35d8fca9bf71163e6eefc60802a066395 Reviewed-on: https://gerrit.libreoffice.org/29621 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/basctl/source/basicide/baside2.cxx b/basctl/source/basicide/baside2.cxx index 11872eb..7ece041 100644 --- a/basctl/source/basicide/baside2.cxx +++ b/basctl/source/basicide/baside2.cxx @@ -285,7 +285,7 @@ void ModulWindow::CheckCompileBasic() if ( bDone ) { - GetBreakPoints().SetBreakPointsInBasic( m_xModule ); + GetBreakPoints().SetBreakPointsInBasic( m_xModule.get() ); } GetShell()->GetViewFrame()->GetWindow().LeaveWait(); @@ -1280,7 +1280,7 @@ void ModulWindow::BasicStarted() if ( rList.size() ) { rList.ResetHitCount(); - rList.SetBreakPointsInBasic( m_xModule ); + rList.SetBreakPointsInBasic( m_xModule.get() ); for ( sal_uInt16 nMethod = 0; nMethod < m_xModule->GetMethods()->Count(); nMethod++ ) { SbMethod* pMethod = static_cast<SbMethod*>(m_xModule->GetMethods()->Get( nMethod )); @@ -1400,7 +1400,7 @@ void ModulWindow::UpdateModule () OUString const aModule = getTextEngineText(*GetEditEngine()); // update module in basic - assert(m_xModule); + assert(m_xModule.Is()); // update module in module window SetModule(aModule); diff --git a/basctl/source/basicide/baside2.hxx b/basctl/source/basicide/baside2.hxx index 2397694..c8bf2e6 100644 --- a/basctl/source/basicide/baside2.hxx +++ b/basctl/source/basicide/baside2.hxx @@ -344,9 +344,9 @@ public: virtual void SetReadOnly (bool bReadOnly) override; virtual bool IsReadOnly() override; - StarBASIC* GetBasic() { XModule(); return m_xBasic; } + StarBASIC* GetBasic() { XModule(); return m_xBasic.get(); } - SbModule* GetSbModule() { return m_xModule; } + SbModule* GetSbModule() { return m_xModule.get(); } void SetSbModule( SbModule* pModule ) { m_xModule = pModule; } OUString GetSbModuleName(); diff --git a/basctl/source/basicide/baside2b.cxx b/basctl/source/basicide/baside2b.cxx index 57f04b0..c83bc7b 100644 --- a/basctl/source/basicide/baside2b.cxx +++ b/basctl/source/basicide/baside2b.cxx @@ -645,7 +645,7 @@ void EditorWindow::HandleAutoCorrect() else { //autocorrect procedures - SbxArray* pArr = rModulWindow.GetSbModule()->GetMethods(); + SbxArray* pArr = rModulWindow.GetSbModule()->GetMethods().get(); for( sal_uInt32 i=0; i < pArr->Count32(); ++i ) { if( pArr->Get32(i)->GetName().equalsIgnoreAsciiCase( sStr ) ) @@ -1724,7 +1724,7 @@ SbxDimArray* WatchItem::GetRootArray() WatchItem* pRootItem = GetRootItem(); SbxDimArray* pRet = nullptr; if( pRootItem ) - pRet = pRootItem->mpArray; + pRet = pRootItem->mpArray.get(); return pRet; } @@ -2132,7 +2132,7 @@ void WatchTreeListBox::RequestingChildren( SvTreeListEntry * pParent ) SvTreeListEntry* pEntry = pParent; WatchItem* pItem = static_cast<WatchItem*>(pEntry->GetUserData()); - SbxDimArray* pArray = pItem->mpArray; + SbxDimArray* pArray = pItem->mpArray.get(); SbxDimArray* pRootArray = pItem->GetRootArray(); bool bArrayIsRootArray = false; if( !pArray && pRootArray ) @@ -2141,7 +2141,7 @@ void WatchTreeListBox::RequestingChildren( SvTreeListEntry * pParent ) bArrayIsRootArray = true; } - SbxObject* pObj = pItem->mpObject; + SbxObject* pObj = pItem->mpObject.get(); if( pObj ) { createAllObjectProperties( pObj ); @@ -2231,7 +2231,7 @@ SbxBase* WatchTreeListBox::ImplGetSBXForEntry( SvTreeListEntry* pEntry, bool& rb WatchItem* pParentItem = pParentEntry ? static_cast<WatchItem*>(pParentEntry->GetUserData()) : nullptr; if( pParentItem ) { - SbxObject* pObj = pParentItem->mpObject; + SbxObject* pObj = pParentItem->mpObject.get(); SbxDimArray* pArray; if( pObj ) { @@ -2272,7 +2272,7 @@ bool WatchTreeListBox::EditingEntry( SvTreeListEntry* pEntry, Selection& ) if (IsSbxVariable(pSbx) || bArrayElement) { // Accept no objects and only end nodes of arrays for editing - if( !pItem->mpObject && (pItem->mpArray == nullptr || pItem->nDimLevel == pItem->nDimCount) ) + if( !pItem->mpObject.Is() && ( !pItem->mpArray.Is() || pItem->nDimLevel == pItem->nDimCount ) ) { aEditingRes = SvHeaderTabListBox::GetEntryText( pEntry, ITEM_ID_VALUE-1 ); aEditingRes = comphelper::string::strip(aEditingRes, ' '); @@ -2349,7 +2349,7 @@ OUString implCreateTypeStringForDimArray( WatchItem* pItem, SbxDataType eType ) { OUString aRetStr = getBasicTypeName( eType ); - SbxDimArray* pArray = pItem->mpArray; + SbxDimArray* pArray = pItem->mpArray.get(); if( !pArray ) pArray = pItem->GetRootArray(); if( pArray ) @@ -2427,7 +2427,7 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped ) // consider multidimensinal arrays! if (SbxDimArray* pNewArray = dynamic_cast<SbxDimArray*>(pVar->GetObject())) { - SbxDimArray* pOldArray = pItem->mpArray; + SbxDimArray* pOldArray = pItem->mpArray.get(); bool bArrayChanged = false; if( pNewArray != nullptr && pOldArray != nullptr ) @@ -2494,7 +2494,7 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped ) { if (SbxObject* pObj = dynamic_cast<SbxObject*>(pVar->GetObject())) { - if (pItem->mpObject && !pItem->maMemberList.empty()) + if ( pItem->mpObject.Is() && !pItem->maMemberList.empty() ) { bool bObjChanged = false; // Check if member list has changed SbxArray* pProps = pObj->GetProperties(); @@ -2522,7 +2522,7 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped ) else { aWatchStr = "Null"; - if( pItem->mpObject != nullptr ) + if( pItem->mpObject.Is() ) { bCollapse = true; pItem->clearWatchItem(); @@ -2533,7 +2533,7 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped ) } else { - if( pItem->mpObject != nullptr ) + if( pItem->mpObject.Is() ) { bCollapse = true; pItem->clearWatchItem(); @@ -2575,7 +2575,7 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped ) } else if( bBasicStopped ) { - if( pItem->mpObject || pItem->mpArray ) + if( pItem->mpObject.Is() || pItem->mpArray.Is() ) { implCollapseModifiedObjectEntry( pEntry, this ); pItem->mpObject = nullptr; diff --git a/basctl/source/basicide/basides1.cxx b/basctl/source/basicide/basides1.cxx index 5f41f79..59c3006 100644 --- a/basctl/source/basicide/basides1.cxx +++ b/basctl/source/basicide/basides1.cxx @@ -311,7 +311,7 @@ void Shell::ExecuteGlobal( SfxRequest& rReq ) pModule = pBasic->FindModule( aModName ); } else - pModule = pBasic->GetModules().front(); + pModule = pBasic->GetModules().front().get(); } DBG_ASSERT( pModule, "Kein Modul!" ); if ( pModule && !pModule->GetMethods()->Find( rInfo.GetMethod(), SbxClassType::Method ) ) diff --git a/basctl/source/basicide/basobj2.cxx b/basctl/source/basicide/basobj2.cxx index 0f383e4..5d939a7 100644 --- a/basctl/source/basicide/basobj2.cxx +++ b/basctl/source/basicide/basobj2.cxx @@ -227,7 +227,7 @@ namespace if ( pData->aDocument.isDocument() ) pUndoGuard.reset( new ::framework::DocumentUndoGuard( pData->aDocument.getDocument() ) ); - RunMethod(pData->xMethod); + RunMethod( pData->xMethod.get() ); } } @@ -374,7 +374,7 @@ Sequence< OUString > GetMethodNames( const ScriptDocument& rDocument, const OUSt { xModule = new SbModule( rModName ); xModule->SetSource32( aOUSource ); - pMod = xModule; + pMod = xModule.get(); } sal_uInt16 nCount = pMod->GetMethods()->Count(); @@ -424,9 +424,9 @@ bool HasMethod ( { xModule = new SbModule( rModName ); xModule->SetSource32( aOUSource ); - pMod = xModule; + pMod = xModule.get(); } - SbxArray* pMethods = pMod->GetMethods(); + SbxArray* pMethods = pMod->GetMethods().get(); if ( pMethods ) { SbMethod* pMethod = static_cast<SbMethod*>(pMethods->Find( rMethName, SbxClassType::Method )); diff --git a/basctl/source/basicide/macrodlg.cxx b/basctl/source/basicide/macrodlg.cxx index a14f984..dcbccac 100644 --- a/basctl/source/basicide/macrodlg.cxx +++ b/basctl/source/basicide/macrodlg.cxx @@ -361,7 +361,7 @@ SbMethod* MacroChooser::CreateMacro() pModule = pBasic->FindModule( aModName ); } else if ( !pBasic->GetModules().empty() ) - pModule = pBasic->GetModules().front(); + pModule = pBasic->GetModules().front().get(); if ( !pModule ) { diff --git a/basic/qa/cppunit/basic_coverage.cxx b/basic/qa/cppunit/basic_coverage.cxx index 34f6ae3..17612c4 100644 --- a/basic/qa/cppunit/basic_coverage.cxx +++ b/basic/qa/cppunit/basic_coverage.cxx @@ -77,7 +77,7 @@ void Coverage::run_test(const OUString& sFileURL) if( !testMacro.HasError() ) { SbxVariableRef pResult = testMacro.Run(); - if( pResult && pResult->GetInteger() == 1 ) + if( pResult.Is() && pResult->GetInteger() == 1 ) { bResult = true; } diff --git a/basic/qa/cppunit/basictest.cxx b/basic/qa/cppunit/basictest.cxx index 7b5aa22..2c4e86f 100644 --- a/basic/qa/cppunit/basictest.cxx +++ b/basic/qa/cppunit/basictest.cxx @@ -78,7 +78,7 @@ SbxVariableRef MacroSnippet::Run( const css::uno::Sequence< css::uno::Any >& rAr SbxVariableRef pReturn = nullptr; if ( !Compile() ) return pReturn; - SbMethod* pMeth = mpMod ? static_cast<SbMethod*>(mpMod->Find( "doUnitTest", SbxClassType::Method )) : nullptr; + SbMethod* pMeth = mpMod.Is() ? static_cast<SbMethod*>(mpMod->Find( "doUnitTest", SbxClassType::Method )) : nullptr; if ( pMeth ) { if ( rArgs.getLength() ) @@ -90,7 +90,7 @@ SbxVariableRef MacroSnippet::Run( const css::uno::Sequence< css::uno::Any >& rAr unoToSbxValue( pVar, rArgs[ i ] ); aArgs->Put( pVar, i + 1 ); } - pMeth->SetParameters( aArgs ); + pMeth->SetParameters( aArgs.get() ); } pReturn = new SbxMethod( *static_cast<SbxMethod*>(pMeth)); } @@ -105,7 +105,7 @@ SbxVariableRef MacroSnippet::Run() bool MacroSnippet::Compile() { - CPPUNIT_ASSERT_MESSAGE("module is NULL", mpMod != nullptr ); + CPPUNIT_ASSERT_MESSAGE("module is NULL", mpMod.get() != nullptr ); mpMod->Compile(); return !mbError; } diff --git a/basic/qa/cppunit/test_nested_struct.cxx b/basic/qa/cppunit/test_nested_struct.cxx index 2fc0600..b1f060d 100644 --- a/basic/qa/cppunit/test_nested_struct.cxx +++ b/basic/qa/cppunit/test_nested_struct.cxx @@ -182,7 +182,7 @@ void Nested_Struct::testAssign1Alt() myMacro.Compile(); CPPUNIT_ASSERT_MESSAGE("testAssign1Alt fails with compile error",!myMacro.HasError() ); SbxVariableRef pNew = myMacro.Run(); - uno::Any aRet = sbxToUnoValue( pNew ); + uno::Any aRet = sbxToUnoValue( pNew.get() ); table::TableBorder aBorder; aRet >>= aBorder; @@ -205,7 +205,7 @@ void Nested_Struct::testOldAssignAlt() myMacro.Compile(); CPPUNIT_ASSERT_MESSAGE("testOldAssign fails with compile error",!myMacro.HasError() ); SbxVariableRef pNew = myMacro.Run(); - uno::Any aRet = sbxToUnoValue( pNew ); + uno::Any aRet = sbxToUnoValue( pNew.get() ); table::TableBorder aBorder; aRet >>= aBorder; @@ -229,7 +229,7 @@ void Nested_Struct::testUnfixedVarAssignAlt() myMacro.Compile(); CPPUNIT_ASSERT_MESSAGE("testUnfixedVarAssignAlt fails with compile error",!myMacro.HasError() ); SbxVariableRef pNew = myMacro.Run(); - uno::Any aRet = sbxToUnoValue( pNew ); + uno::Any aRet = sbxToUnoValue( pNew.get() ); uno::Sequence< uno::Any > aResult; bool bRes = aRet >>= aResult; @@ -265,7 +265,7 @@ void Nested_Struct::testFixedVarAssignAlt() myMacro.Compile(); CPPUNIT_ASSERT_MESSAGE("testFixedVarAssignAlt fails with compile error",!myMacro.HasError() ); SbxVariableRef pNew = myMacro.Run(); - uno::Any aRet = sbxToUnoValue( pNew ); + uno::Any aRet = sbxToUnoValue( pNew.get() ); uno::Sequence< uno::Any > aResult; bool bRes = aRet >>= aResult; @@ -292,7 +292,7 @@ void Nested_Struct::testUnoAccess() myMacro.Compile(); CPPUNIT_ASSERT_MESSAGE("testUnoAccess fails with compile error",!myMacro.HasError() ); SbxVariableRef pNew = myMacro.Run(); - uno::Any aRet = sbxToUnoValue( pNew ); + uno::Any aRet = sbxToUnoValue( pNew.get() ); awt::WindowDescriptor aWinDesc; aRet >>= aWinDesc; diff --git a/basic/qa/cppunit/test_vba.cxx b/basic/qa/cppunit/test_vba.cxx index 7673f85..40ed225 100644 --- a/basic/qa/cppunit/test_vba.cxx +++ b/basic/qa/cppunit/test_vba.cxx @@ -75,12 +75,12 @@ void VBATest::testMiscVBAFunctions() MacroSnippet myMacro; myMacro.LoadSourceFromFile( sMacroURL ); SbxVariableRef pReturn = myMacro.Run(); - if ( pReturn ) + if ( pReturn.Is() ) { fprintf(stderr, "macro result for %s\n", macroSource[ i ] ); fprintf(stderr, "macro returned:\n%s\n", OUStringToOString( pReturn->GetOUString(), RTL_TEXTENCODING_UTF8 ).getStr() ); } - CPPUNIT_ASSERT_MESSAGE("No return variable huh?", pReturn != nullptr ); + CPPUNIT_ASSERT_MESSAGE("No return variable huh?", pReturn.get() != nullptr ); CPPUNIT_ASSERT_EQUAL_MESSAGE("Result not as expected", OUString("OK"), pReturn->GetOUString() ); } } @@ -146,12 +146,12 @@ void VBATest::testMiscOLEStuff() MacroSnippet myMacro; myMacro.LoadSourceFromFile( sMacroURL ); SbxVariableRef pReturn = myMacro.Run( aArgs ); - if ( pReturn ) + if ( pReturn.Is() ) { fprintf(stderr, "macro result for %s\n", macroSource[ i ] ); fprintf(stderr, "macro returned:\n%s\n", OUStringToOString( pReturn->GetOUString(), RTL_TEXTENCODING_UTF8 ).getStr() ); } - CPPUNIT_ASSERT_MESSAGE("No return variable huh?", pReturn != NULL ); + CPPUNIT_ASSERT_MESSAGE("No return variable huh?", pReturn.get() != NULL ); CPPUNIT_ASSERT_MESSAGE("Result not as expected", pReturn->GetOUString() == "OK" ); } #else diff --git a/basic/source/basmgr/basmgr.cxx b/basic/source/basmgr/basmgr.cxx index 66e16c5..37bf1aa 100644 --- a/basic/source/basmgr/basmgr.cxx +++ b/basic/source/basmgr/basmgr.cxx @@ -599,12 +599,12 @@ void BasicManager::SetLibraryContainerInfo( const LibraryContainerInfo& rInfo ) // No libs? Maybe an 5.2 document already loaded for (auto const& rpBasLibInfo : mpImpl->aLibs) { - StarBASIC* pLib = rpBasLibInfo->GetLib(); + StarBASIC* pLib = rpBasLibInfo->GetLib().get(); if( !pLib ) { bool bLoaded = ImpLoadLibrary( rpBasLibInfo.get(), nullptr ); if( bLoaded ) - pLib = rpBasLibInfo->GetLib(); + pLib = rpBasLibInfo->GetLib().get(); } if( pLib ) { @@ -973,7 +973,7 @@ bool BasicManager::ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurStora pLibInfo->SetPassword( aPassword ); } xBasicStream->SetCryptMaskKey(OString()); - CheckModules( pLibInfo->GetLib(), pLibInfo->IsReference() ); + CheckModules( pLibInfo->GetLib().get(), pLibInfo->IsReference() ); } return bLoaded; } @@ -1013,7 +1013,7 @@ bool BasicManager::ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic ) con { if( nullptr != dynamic_cast<const StarBASIC*>( &xNew ) ) { - StarBASIC* pNew = static_cast<StarBASIC*>(static_cast<SbxBase*>(xNew)); + StarBASIC* pNew = static_cast<StarBASIC*>(xNew.get()); // Use the Parent of the old BASICs if( rOldBasic.Is() ) { @@ -1050,7 +1050,7 @@ void BasicManager::CheckModules( StarBASIC* pLib, bool bReference ) for ( const auto& pModule: pLib->GetModules() ) { - DBG_ASSERT( pModule, "Module not received!" ); + DBG_ASSERT( pModule.get(), "Module not received!" ); if ( !pModule->IsCompiled() && !StarBASIC::GetErrorCode() ) { pModule->Compile(); @@ -1212,7 +1212,7 @@ bool BasicManager::RemoveLib( sal_uInt16 nLib, bool bDelBasicFromStorage ) } if ((*itLibInfo)->GetLib().Is()) { - GetStdLib()->Remove( (*itLibInfo)->GetLib() ); + GetStdLib()->Remove( (*itLibInfo)->GetLib().get() ); } mpImpl->aLibs.erase(itLibInfo); return true; // Remove was successful, del unimportant @@ -1228,7 +1228,7 @@ StarBASIC* BasicManager::GetLib( sal_uInt16 nLib ) const DBG_ASSERT( nLib < mpImpl->aLibs.size(), "Lib does not exist!" ); if ( nLib < mpImpl->aLibs.size() ) { - return mpImpl->aLibs[nLib]->GetLib(); + return mpImpl->aLibs[nLib]->GetLib().get(); } return nullptr; } @@ -1245,7 +1245,7 @@ StarBASIC* BasicManager::GetLib( const OUString& rName ) const { if (rpLib->GetLibName().equalsIgnoreAsciiCase(rName)) // Check if available... { - return rpLib->GetLib(); + return rpLib->GetLib().get(); } } return nullptr; @@ -1331,7 +1331,7 @@ StarBASIC* BasicManager::CreateLib( const OUString& rLibName ) pLibInfo->SetLib( pNew ); pLibInfo->SetLibName( rLibName ); pLibInfo->GetLib()->SetName( rLibName ); - return pLibInfo->GetLib(); + return pLibInfo->GetLib().get(); } // For XML import/export: @@ -1395,7 +1395,7 @@ BasicLibInfo* BasicManager::FindLibInfo( StarBASIC* pBasic ) { for (auto const& rpLib : mpImpl->aLibs) { - if (rpLib->GetLib() == pBasic) + if (rpLib->GetLib().get() == pBasic) { return rpLib.get(); } @@ -1443,7 +1443,7 @@ uno::Any BasicManager::SetGlobalUNOConstant( const OUString& rName, const uno::A SbxObjectRef xUnoObj = GetSbUnoObject( rName, _rValue ); xUnoObj->SetFlag( SbxFlagBits::DontStore ); - pStandardLib->Insert( xUnoObj ); + pStandardLib->Insert( xUnoObj.get() ); return aOldValue; } @@ -1992,7 +1992,7 @@ void DialogContainer_Impl::insertByName( const OUString& aName, const uno::Any& uno::Reference< script::XStarBasicDialogInfo > xMod; aElement >>= xMod; SbxObjectRef xDialog = implCreateDialog( xMod->getData() ); - mpLib->Insert( xDialog ); + mpLib->Insert( xDialog.get() ); } void DialogContainer_Impl::removeByName( const OUString& Name ) diff --git a/basic/source/classes/errobject.cxx b/basic/source/classes/errobject.cxx index 2391464..ddeb1ae 100644 --- a/basic/source/classes/errobject.cxx +++ b/basic/source/classes/errobject.cxx @@ -192,8 +192,7 @@ SbxErrObject::~SbxErrObject() uno::Reference< vba::XErrObject > const & SbxErrObject::getUnoErrObject() { - SbxVariable* pVar = getErrObject(); - SbxErrObject* pGlobErr = static_cast< SbxErrObject* >( pVar ); + SbxErrObject* pGlobErr = static_cast< SbxErrObject* >( getErrObject().get() ); return pGlobErr->m_xErr; } diff --git a/basic/source/classes/eventatt.cxx b/basic/source/classes/eventatt.cxx index c89e352..a90adf8 100644 --- a/basic/source/classes/eventatt.cxx +++ b/basic/source/classes/eventatt.cxx @@ -208,7 +208,7 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any aMacro = aMacro.copy( nLast ); } - SbxObject* p = maBasicRef; + SbxObject* p = maBasicRef.get(); SbxObject* pParent = p->GetParent(); SbxObject* pParentParent = pParent ? pParent->GetParent() : nullptr; @@ -253,14 +253,13 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any // Be still tolerant and make default search if no search basic exists if( bSearchLib && xLibSearchBasic.Is() ) { - StarBASICRef xLibBasic; sal_Int16 nCount = xLibSearchBasic->GetObjects()->Count(); for( sal_Int16 nObj = -1; nObj < nCount ; nObj++ ) { StarBASIC* pBasic; if( nObj == -1 ) { - pBasic = static_cast<StarBASIC*>(xLibSearchBasic); + pBasic = xLibSearchBasic.get(); } else { @@ -303,8 +302,8 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any for( sal_Int32 i = 0; i < nCnt; i++ ) { SbxVariableRef xVar = new SbxVariable( SbxVARIANT ); - unoToSbxValue( static_cast<SbxVariable*>(xVar), pArgs[i] ); - xArray->Put( xVar, sal::static_int_cast< sal_uInt16 >(i+1) ); + unoToSbxValue( xVar.get(), pArgs[i] ); + xArray->Put( xVar.get(), sal::static_int_cast< sal_uInt16 >(i+1) ); } } @@ -312,12 +311,12 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any SbxVariableRef xValue = pRet ? new SbxVariable : nullptr; if( xArray.Is() ) { - pMeth->SetParameters( xArray ); + pMeth->SetParameters( xArray.get() ); } - pMeth->Call( xValue ); + pMeth->Call( xValue.get() ); if( pRet ) { - *pRet = sbxToUnoValue( xValue ); + *pRet = sbxToUnoValue( xValue.get() ); } pMeth->SetParameters( nullptr ); } @@ -432,12 +431,12 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) // Get dialog SbxBaseRef pObj = rPar.Get( 1 )->GetObject(); - if( !(pObj && nullptr != dynamic_cast<const SbUnoObject*>( &pObj )) ) + if( !(pObj.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj )) ) { StarBASIC::Error( ERRCODE_BASIC_BAD_ARGUMENT ); return; } - SbUnoObject* pUnoObj = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj)); + SbUnoObject* pUnoObj = static_cast<SbUnoObject*>(pObj.get()); Any aAnyISP = pUnoObj->getUnoAny(); TypeClass eType = aAnyISP.getValueType().getTypeClass(); @@ -556,7 +555,7 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) Any aRetVal; aRetVal <<= xCntrl; SbxVariableRef refVar = rPar.Get(0); - unoToSbxValue( static_cast<SbxVariable*>(refVar), aRetVal ); + unoToSbxValue( refVar.get(), aRetVal ); } diff --git a/basic/source/classes/image.cxx b/basic/source/classes/image.cxx index 05ec8a2..7c079a8 100644 --- a/basic/source/classes/image.cxx +++ b/basic/source/classes/image.cxx @@ -462,7 +462,7 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer ) SbiCloseRecord( r, nPos ); } // User defined types - if (rTypes) + if ( rTypes.Is() ) { sal_uInt16 nTypes = rTypes->Count(); if (nTypes > 0 ) diff --git a/basic/source/classes/sb.cxx b/basic/source/classes/sb.cxx index b47c3a8..704169b 100644 --- a/basic/source/classes/sb.cxx +++ b/basic/source/classes/sb.cxx @@ -232,7 +232,7 @@ StarBASIC* lclGetDocBasicForModule( SbModule* pModule ) SbxObject* StarBASIC::getVBAGlobals( ) { - if ( !pVBAGlobals ) + if ( !pVBAGlobals.Is() ) { Any aThisDoc; if ( GetUNOConstant("ThisComponent", aThisDoc) ) @@ -253,7 +253,7 @@ SbxObject* StarBASIC::getVBAGlobals( ) const OUString aVBAHook("VBAGlobals"); pVBAGlobals = static_cast<SbUnoObject*>(Find( aVBAHook , SbxClassType::DontCare )); } - return pVBAGlobals; + return pVBAGlobals.get(); } // i#i68894# @@ -641,7 +641,7 @@ SbClassModuleObject::SbClassModuleObject( SbModule* pClassModule ) ResetFlag( SbxFlagBits::GlobalSearch ); // Copy the methods from original class module - SbxArray* pClassMethods = pClassModule->GetMethods(); + SbxArray* pClassMethods = pClassModule->GetMethods().get(); sal_uInt32 nMethodCount = pClassMethods->Count32(); sal_uInt32 i; for( i = 0 ; i < nMethodCount ; i++ ) @@ -1098,11 +1098,12 @@ void StarBASIC::Insert( SbxVariable* pVar ) void StarBASIC::Remove( SbxVariable* pVar ) { - if( dynamic_cast<const SbModule*>(pVar) != nullptr) + SbModule* pModule = dynamic_cast<SbModule*>(pVar); + if( pModule ) { // #87540 Can be last reference! - SbxVariableRef xVar = pVar; - pModules.erase(std::remove(pModules.begin(), pModules.end(), pVar)); + SbModuleRef xVar = pModule; + pModules.erase(std::remove(pModules.begin(), pModules.end(), xVar)); pVar->SetParent( nullptr ); EndListening( pVar->GetBroadcaster() ); } @@ -1290,12 +1291,12 @@ SbxVariable* StarBASIC::Find( const OUString& rName, SbxClassType t ) { if( rName.equalsIgnoreAsciiCase( RTLNAME ) ) { - pRes = pRtl; + pRes = pRtl.get(); } } if( !pRes ) { - pRes = static_cast<SbiStdObject*>(static_cast<SbxObject*>(pRtl))->Find( rName, t ); + pRes = static_cast<SbiStdObject*>(pRtl.get())->Find( rName, t ); } if( pRes ) { @@ -2106,12 +2107,12 @@ void BasicCollection::Notify( SfxBroadcaster& rCst, const SfxHint& rHint ) if( pVar->GetHashCode() == nAddHash && aVarName.equalsIgnoreAsciiCase( pAddStr ) ) { - pVar->SetInfo( xAddInfo ); + pVar->SetInfo( xAddInfo.get() ); } else if( pVar->GetHashCode() == nItemHash && aVarName.equalsIgnoreAsciiCase( pItemStr ) ) { - pVar->SetInfo( xItemInfo ); + pVar->SetInfo( xItemInfo.get() ); } } } @@ -2219,7 +2220,7 @@ void BasicCollection::CollAdd( SbxArray* pPar_ ) } } pNewItem->SetFlag( SbxFlagBits::ReadWrite ); - xItemArray->Insert32( pNewItem, nNextIndex ); + xItemArray->Insert32( pNewItem.get(), nNextIndex ); } else { diff --git a/basic/source/classes/sbunoobj.cxx b/basic/source/classes/sbunoobj.cxx index 8d24420..561767a 100644 --- a/basic/source/classes/sbunoobj.cxx +++ b/basic/source/classes/sbunoobj.cxx @@ -473,7 +473,7 @@ static SbxObject* lcl_getNativeObject( sal_uInt32 nIndex ) ObjectItem& rItem = rNativeObjectWrapperVector[ nIndex ]; xRetObj = rItem.m_xNativeObj; } - return xRetObj; + return xRetObj.get(); } // convert from Uno to Sbx @@ -632,7 +632,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue ) } else { - pVar->PutObject( xWrapper ); + pVar->PutObject( xWrapper.get() ); } } break; @@ -657,7 +657,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue ) SbxDimArrayRef xArray = pArray; SbxFlagBits nFlags = pVar->GetFlags(); pVar->ResetFlag( SbxFlagBits::Fixed ); - pVar->PutObject( static_cast<SbxDimArray*>(xArray) ); + pVar->PutObject( xArray.get() ); pVar->SetFlags( nFlags ); } else @@ -733,7 +733,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue ) } else { - pVar->PutObject( xWrapper ); + pVar->PutObject( xWrapper.get() ); } } break; @@ -787,7 +787,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue ) // return the Array SbxFlagBits nFlags = pVar->GetFlags(); pVar->ResetFlag( SbxFlagBits::Fixed ); - pVar->PutObject( static_cast<SbxDimArray*>(xArray) ); + pVar->PutObject( xArray.get() ); pVar->SetFlags( nFlags ); } @@ -862,7 +862,7 @@ Type getUnoTypeForSbxValue( const SbxValue* pVal ) if( eBaseType == SbxOBJECT ) { SbxBaseRef xObj = pVal->GetObject(); - if( !xObj ) + if( !xObj.Is() ) { aRetType = cppu::UnoType<XInterface>::get(); return aRetType; @@ -870,7 +870,7 @@ Type getUnoTypeForSbxValue( const SbxValue* pVal ) if( nullptr != dynamic_cast<const SbxDimArray*>( &xObj) ) { - SbxBase* pObj = static_cast<SbxBase*>(xObj); + SbxBase* pObj = xObj.get(); SbxDimArray* pArray = static_cast<SbxDimArray*>(pObj); short nDims = pArray->GetDims(); @@ -964,12 +964,12 @@ Type getUnoTypeForSbxValue( const SbxValue* pVal ) // No array, but ... else if( nullptr != dynamic_cast<const SbUnoObject*>( &xObj) ) { - aRetType = static_cast<SbUnoObject*>(static_cast<SbxBase*>(xObj))->getUnoAny().getValueType(); + aRetType = static_cast<SbUnoObject*>(xObj.get())->getUnoAny().getValueType(); } // SbUnoAnyObject? else if( nullptr != dynamic_cast<const SbUnoAnyObject*>( &xObj) ) { - aRetType = static_cast<SbUnoAnyObject*>(static_cast<SbxBase*>(xObj))->getValue().getValueType(); + aRetType = static_cast<SbUnoAnyObject*>(xObj.get())->getValue().getValueType(); } // Otherwise it is a No-Uno-Basic-Object -> default==deliver void } @@ -991,11 +991,11 @@ Any sbxToUnoValueImpl( const SbxValue* pVar, bool bBlockConversionToSmallestType if( xObj.Is() ) { if( nullptr != dynamic_cast<const SbUnoAnyObject*>( &xObj) ) - return static_cast<SbUnoAnyObject*>(static_cast<SbxBase*>(xObj))->getValue(); + return static_cast<SbUnoAnyObject*>(xObj.get())->getValue(); if( nullptr != dynamic_cast<const SbClassModuleObject*>( &xObj) ) { Any aRetAny; - SbClassModuleObject* pClassModuleObj = static_cast<SbClassModuleObject*>(static_cast<SbxBase*>(xObj)); + SbClassModuleObject* pClassModuleObj = static_cast<SbClassModuleObject*>(xObj.get()); SbModule* pClassModule = pClassModuleObj->getClassModule(); if( pClassModule->createCOMWrapperForIface( aRetAny, pClassModuleObj ) ) return aRetAny; @@ -1191,7 +1191,7 @@ Any sbxToUnoValue( const SbxValue* pVar, const Type& rType, Property* pUnoProper SbxBaseRef xObj = pVar->GetObject(); if( xObj.Is() && nullptr != dynamic_cast<const SbUnoAnyObject*>( &xObj) ) { - return static_cast<SbUnoAnyObject*>(static_cast<SbxBase*>(xObj))->getValue(); + return static_cast<SbUnoAnyObject*>(xObj.get())->getValue(); } } @@ -1244,13 +1244,13 @@ Any sbxToUnoValue( const SbxValue* pVar, const Type& rType, Property* pUnoProper } SbxBaseRef pObj = pVar->GetObject(); - if( pObj && nullptr != dynamic_cast<const SbUnoObject*>( &pObj) ) + if( pObj.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj) ) { - aRetVal = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj))->getUnoAny(); + aRetVal = static_cast<SbUnoObject*>(pObj.get())->getUnoAny(); } - else if( pObj && nullptr != dynamic_cast<const SbUnoStructRefObject*>( &pObj) ) + else if( pObj.Is() && nullptr != dynamic_cast<const SbUnoStructRefObject*>( &pObj) ) { - aRetVal = static_cast<SbUnoStructRefObject*>(static_cast<SbxBase*>(pObj))->getUnoAny(); + aRetVal = static_cast<SbUnoStructRefObject*>(pObj.get())->getUnoAny(); } else { @@ -1270,9 +1270,9 @@ Any sbxToUnoValue( const SbxValue* pVar, const Type& rType, Property* pUnoProper Reference< XIdlClass > xIdlClass; SbxBaseRef pObj = pVar->GetObject(); - if( pObj && nullptr != dynamic_cast<const SbUnoObject*>( &pObj) ) + if( pObj.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj) ) { - Any aUnoAny = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj))->getUnoAny(); + Any aUnoAny = static_cast<SbUnoObject*>( pObj.get() )->getUnoAny(); aUnoAny >>= xIdlClass; } @@ -1306,9 +1306,9 @@ Any sbxToUnoValue( const SbxValue* pVar, const Type& rType, Property* pUnoProper case TypeClass_SEQUENCE: { SbxBaseRef xObj = pVar->GetObject(); - if( xObj && nullptr != dynamic_cast<const SbxDimArray*>( &xObj) ) + if( xObj.Is() && nullptr != dynamic_cast<const SbxDimArray*>( &xObj) ) { - SbxBase* pObj = static_cast<SbxBase*>(xObj); + SbxBase* pObj = xObj.get(); SbxDimArray* pArray = static_cast<SbxDimArray*>(pObj); short nDims = pArray->GetDims(); @@ -2055,7 +2055,7 @@ void SbUnoObject::Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) { SbUnoStructRefObject* pSbUnoObject = new SbUnoStructRefObject( pProp->GetName(), aMember ); SbxObjectRef xWrapper = static_cast<SbxObject*>(pSbUnoObject); - pVar->PutObject( xWrapper ); + pVar->PutObject( xWrapper.get() ); } else { @@ -2532,7 +2532,7 @@ SbUnoMethod::~SbUnoMethod() SbxInfo* SbUnoMethod::GetInfo() { - if( !pInfo && m_xUnoMethod.is() ) + if( !pInfo.Is() && m_xUnoMethod.is() ) { SbiInstance* pInst = GetSbData()->pInst; if( pInst && pInst->IsCompatibility() ) @@ -2554,7 +2554,7 @@ SbxInfo* SbUnoMethod::GetInfo() } } } - return pInfo; + return pInfo.get(); } const Sequence<ParamInfo>& SbUnoMethod::getParamInfos() @@ -2589,7 +2589,7 @@ SbUnoProperty::SbUnoProperty // as needed establish an dummy array so that SbiRuntime::CheckArray() works static SbxArrayRef xDummyArray = new SbxArray( SbxVARIANT ); if( eSbxType & SbxARRAY ) - PutObject( xDummyArray ); + PutObject( xDummyArray.get() ); } SbUnoProperty::~SbUnoProperty() @@ -2637,7 +2637,7 @@ SbxVariable* SbUnoObject::Find( const OUString& rName, SbxClassType t ) // create the property and superimpose it auto pProp = tools::make_ref<SbUnoProperty>( rProp.Name, eSbxType, eRealSbxType, rProp, 0, false, ( rProp.Type.getTypeClass() == css::uno::TypeClass_STRUCT ) ); QuickInsert( pProp.get() ); - pRes = pProp; + pRes = pProp.get(); } else if( mxUnoAccess->hasMethod( aUName, MethodConcept::ALL - MethodConcept::DANGEROUS ) ) @@ -2650,7 +2650,7 @@ SbxVariable* SbUnoObject::Find( const OUString& rName, SbxClassType t ) auto xMethRef = tools::make_ref<SbUnoMethod>( rxMethod->getName(), unoToSbxType( rxMethod->getReturnType() ), rxMethod, false ); QuickInsert( xMethRef.get() ); - pRes = xMethRef; + pRes = xMethRef.get(); } // If nothing was found check via XNameAccess @@ -2707,14 +2707,14 @@ SbxVariable* SbUnoObject::Find( const OUString& rName, SbxClassType t ) // create a property and superimpose it auto xVarRef = tools::make_ref<SbUnoProperty>( aUName, SbxVARIANT, SbxVARIANT, aDummyProp, 0, true, false ); QuickInsert( xVarRef.get() ); - pRes = xVarRef; + pRes = xVarRef.get(); } else if( mxInvocation->hasMethod( aUName ) ) { // create SbUnoMethode and superimpose it auto xMethRef = tools::make_ref<SbUnoMethod>( aUName, SbxVARIANT, xDummyMethod, true ); QuickInsert( xMethRef.get() ); - pRes = xMethRef; + pRes = xMethRef.get(); } else { @@ -2723,7 +2723,7 @@ SbxVariable* SbUnoObject::Find( const OUString& rName, SbxClassType t ) { auto xMethRef = tools::make_ref<SbUnoMethod>( aUName, SbxVARIANT, xDummyMethod, true ); QuickInsert( xMethRef.get() ); - pRes = xMethRef; + pRes = xMethRef.get(); } } @@ -2941,7 +2941,7 @@ void RTL_Impl_CreateUnoStruct( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) // try to create Struct with the same name SbUnoObjectRef xUnoObj = Impl_CreateUnoStruct( aClassName ); - if( !xUnoObj ) + if( !xUnoObj.Is() ) { return; } @@ -2985,7 +2985,7 @@ void RTL_Impl_CreateUnoService( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) if( xUnoObj->getUnoAny().hasValue() ) { // return the object - refVar->PutObject( static_cast<SbUnoObject*>(xUnoObj) ); + refVar->PutObject( xUnoObj.get() ); } else { @@ -3037,7 +3037,7 @@ void RTL_Impl_CreateUnoServiceWithArguments( StarBASIC* pBasic, SbxArray& rPar, if( xUnoObj->getUnoAny().hasValue() ) { // return the object - refVar->PutObject( static_cast<SbUnoObject*>(xUnoObj) ); + refVar->PutObject( xUnoObj.get() ); } else { @@ -3062,7 +3062,7 @@ void RTL_Impl_GetProcessServiceManager( StarBASIC* pBasic, SbxArray& rPar, bool // Create a SbUnoObject out of it and return it SbUnoObjectRef xUnoObj = new SbUnoObject( OUString( "ProcessServiceManager" ), Any(xFactory) ); - refVar->PutObject( static_cast<SbUnoObject*>(xUnoObj) ); + refVar->PutObject( xUnoObj.get() ); } void RTL_Impl_HasInterfaces( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) @@ -3084,11 +3084,11 @@ void RTL_Impl_HasInterfaces( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) // get the Uno-Object SbxBaseRef pObj = rPar.Get( 1 )->GetObject(); - if( !(pObj && nullptr != dynamic_cast<const SbUnoObject*>( &pObj)) ) + if( !(pObj.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj)) ) { return; } - Any aAny = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj))->getUnoAny(); + Any aAny = static_cast<SbUnoObject*>(pObj.get())->getUnoAny(); auto x = o3tl::tryAccess<Reference<XInterface>>(aAny); if( !x ) { @@ -3148,11 +3148,11 @@ void RTL_Impl_IsUnoStruct( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) return; } SbxBaseRef pObj = rPar.Get( 1 )->GetObject(); - if( !(pObj && nullptr != dynamic_cast<const SbUnoObject*>( &pObj)) ) + if( !(pObj.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj)) ) { return; } - Any aAny = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj))->getUnoAny(); + Any aAny = static_cast<SbUnoObject*>(pObj.get())->getUnoAny(); TypeClass eType = aAny.getValueType().getTypeClass(); if( eType == TypeClass_STRUCT ) { @@ -3183,11 +3183,11 @@ void RTL_Impl_EqualUnoObjects( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) return; } SbxBaseRef pObj1 = xParam1->GetObject(); - if( !(pObj1 && nullptr != dynamic_cast<const SbUnoObject*>( &pObj1 )) ) + if( !(pObj1.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj1 )) ) { return; } - Any aAny1 = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj1))->getUnoAny(); + Any aAny1 = static_cast<SbUnoObject*>(pObj1.get())->getUnoAny(); TypeClass eType1 = aAny1.getValueType().getTypeClass(); if( eType1 != TypeClass_INTERFACE ) { @@ -3202,11 +3202,11 @@ void RTL_Impl_EqualUnoObjects( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) return; } SbxBaseRef pObj2 = xParam2->GetObject(); - if( !(pObj2 && nullptr != dynamic_cast<const SbUnoObject*>( &pObj2 )) ) + if( !(pObj2.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj2 )) ) { return; } - Any aAny2 = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj2))->getUnoAny(); + Any aAny2 = static_cast<SbUnoObject*>(pObj2.get())->getUnoAny(); TypeClass eType2 = aAny2.getValueType().getTypeClass(); if( eType2 != TypeClass_INTERFACE ) { @@ -3421,7 +3421,7 @@ SbxVariable* SbUnoClass::Find( const OUString& rName, SbxClassType ) { pRes = new SbxVariable( SbxVARIANT ); SbxObjectRef xWrapper = static_cast<SbxObject*>(new SbUnoClass( aNewName, xClass )); - pRes->PutObject( xWrapper ); + pRes->PutObject( xWrapper.get() ); } } else @@ -3443,7 +3443,7 @@ SbxVariable* SbUnoClass::Find( const OUString& rName, SbxClassType ) { pRes = new SbxVariable( SbxVARIANT ); SbxObjectRef xWrapper = static_cast<SbxObject*>(pNewClass); - pRes->PutObject( xWrapper ); + pRes->PutObject( xWrapper.get() ); } } @@ -3455,7 +3455,7 @@ SbxVariable* SbUnoClass::Find( const OUString& rName, SbxClassType ) { pRes = new SbxVariable( SbxVARIANT ); SbxObjectRef xWrapper = static_cast<SbxObject*>(pUnoService); - pRes->PutObject( xWrapper ); + pRes->PutObject( xWrapper.get() ); } } @@ -3467,7 +3467,7 @@ SbxVariable* SbUnoClass::Find( const OUString& rName, SbxClassType ) { pRes = new SbxVariable( SbxVARIANT ); SbxObjectRef xWrapper = static_cast<SbxObject*>(pUnoSingleton); - pRes->PutObject( xWrapper ); + pRes->PutObject( xWrapper.get() ); } } } @@ -3546,7 +3546,7 @@ SbxVariable* SbUnoService::Find( const OUString& rName, SbxClassType ) { // Create and insert SbUnoServiceCtor SbxVariableRef xSbCtorRef = new SbUnoServiceCtor( aName, xCtor ); - QuickInsert( static_cast<SbxVariable*>(xSbCtorRef) ); + QuickInsert( xSbCtorRef.get() ); } } pRes = SbxObject::Find( rName, SbxClassType::Method ); @@ -3766,7 +3766,7 @@ SbUnoSingleton::SbUnoSingleton( const OUString& aName_ ) : SbxObject( aName_ ) { SbxVariableRef xGetMethodRef = new SbxMethod( OUString( "get" ), SbxOBJECT ); - QuickInsert( static_cast<SbxVariable*>(xGetMethodRef) ); + QuickInsert( xGetMethodRef.get() ); } void SbUnoSingleton::Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) @@ -3861,7 +3861,7 @@ void BasicAllListener_Impl::firing_impl( const AllEventObject& Event, Any* pRet OUString aMethodName = aPrefixName; aMethodName = aMethodName + Event.MethodName; - SbxVariable * pP = xSbxObj; + SbxVariable * pP = xSbxObj.get(); while( pP->GetParent() ) { pP = pP->GetParent(); @@ -3876,11 +3876,11 @@ void BasicAllListener_Impl::firing_impl( const AllEventObject& Event, Any* pRet { // Convert elements SbxVariableRef xVar = new SbxVariable( SbxVARIANT ); - unoToSbxValue( static_cast<SbxVariable*>(xVar), pArgs[i] ); - xSbxArray->Put( xVar, sal::static_int_cast< sal_uInt16 >(i+1) ); + unoToSbxValue( xVar.get(), pArgs[i] ); + xSbxArray->Put( xVar.get(), sal::static_int_cast< sal_uInt16 >(i+1) ); } - pLib->Call( aMethodName, xSbxArray ); + pLib->Call( aMethodName, xSbxArray.get() ); // get the return value from the Param-Array, if requested if( pRet ) @@ -4138,7 +4138,7 @@ void SbRtl_CreateUnoListener( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) // return the object SbxVariableRef refVar = rPar.Get(0); - refVar->PutObject( p->xSbxObj ); + refVar->PutObject( p->xSbxObj.get() ); } @@ -4154,7 +4154,7 @@ void RTL_Impl_GetDefaultContext( StarBASIC* pBasic, SbxArray& rPar, bool bWrite Any aContextAny( comphelper::getProcessComponentContext() ); SbUnoObjectRef xUnoObj = new SbUnoObject( OUString( "DefaultContext" ), aContextAny ); - refVar->PutObject( static_cast<SbUnoObject*>(xUnoObj) ); + refVar->PutObject( xUnoObj.get() ); } @@ -4192,9 +4192,9 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) Reference< XIdlClass > xIdlClass; SbxBaseRef pObj = pVal->GetObject(); - if( pObj && nullptr != dynamic_cast<const SbUnoObject*>( &pObj) ) + if( pObj.Is() && nullptr != dynamic_cast<const SbUnoObject*>( &pObj) ) { - Any aUnoAny = static_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj))->getUnoAny(); + Any aUnoAny = static_cast<SbUnoObject*>(pObj.get())->getUnoAny(); aUnoAny >>= xIdlClass; } @@ -4210,7 +4210,7 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) Any aTypeAny( aType ); SbxVariableRef refVar = rPar.Get(0); SbxObjectRef xUnoAnyObject = new SbUnoAnyObject( aTypeAny ); - refVar->PutObject( xUnoAnyObject ); + refVar->PutObject( xUnoAnyObject.get() ); } return; } @@ -4240,7 +4240,7 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, bool bWrite ) SbxVariableRef refVar = rPar.Get(0); SbxObjectRef xUnoAnyObject = new SbUnoAnyObject( aConvertedVal ); - refVar->PutObject( xUnoAnyObject ); + refVar->PutObject( xUnoAnyObject.get() ); } @@ -4318,13 +4318,13 @@ void SAL_CALL ModuleInvocationProxy::setValue(const OUString& rProperty, const A // Setup parameter SbxArrayRef xArray = new SbxArray; SbxVariableRef xVar = new SbxVariable( SbxVARIANT ); - unoToSbxValue( static_cast<SbxVariable*>(xVar), rValue ); - xArray->Put( xVar, 1 ); + unoToSbxValue( xVar.get(), rValue ); + xArray->Put( xVar.get(), 1 ); // Call property method SbxVariableRef xValue = new SbxVariable; - pMeth->SetParameters( xArray ); - pMeth->Call( xValue ); + pMeth->SetParameters( xArray.get() ); + pMeth->Call( xValue.get() ); pMeth->SetParameters( nullptr ); // TODO: OutParameter? @@ -4356,8 +4356,8 @@ Any SAL_CALL ModuleInvocationProxy::getValue(const OUString& rProperty) // Call method SbxVariableRef xValue = new SbxVariable; - pMeth->Call( xValue ); - Any aRet = sbxToUnoValue( xValue ); + pMeth->Call( xValue.get() ); + Any aRet = sbxToUnoValue( xValue.get() ); return aRet; } @@ -4421,17 +4421,17 @@ Any SAL_CALL ModuleInvocationProxy::invoke( const OUString& rFunction, for( sal_Int32 i = 0 ; i < nParamCount ; i++ ) { SbxVariableRef xVar = new SbxVariable( SbxVARIANT ); - unoToSbxValue( static_cast<SbxVariable*>(xVar), pArgs[i] ); - xArray->Put( xVar, sal::static_int_cast< sal_uInt16 >(i+1) ); + unoToSbxValue( xVar.get(), pArgs[i] ); + xArray->Put( xVar.get(), sal::static_int_cast< sal_uInt16 >(i+1) ); } } // Call method SbxVariableRef xValue = new SbxVariable; if( xArray.Is() ) - pMeth->SetParameters( xArray ); - pMeth->Call( xValue ); - aRet = sbxToUnoValue( xValue ); + pMeth->SetParameters( xArray.get() ); + pMeth->Call( xValue.get() ); + aRet = sbxToUnoValue( xValue.get() ); pMeth->SetParameters( nullptr ); if( bSetRescheduleBack ) @@ -4549,7 +4549,7 @@ void registerComponentToBeDisposedForBasic void registerComListenerVariableForBasic( SbxVariable* pVar, StarBASIC* pBasic ) { StarBasicDisposeItem* pItem = lcl_getOrCreateItemForBasic( pBasic ); - SbxArray* pArray = pItem->m_pRegisteredVariables; + SbxArray* pArray = pItem->m_pRegisteredVariables.get(); pArray->Put( pVar, pArray->Count() ); } @@ -4560,7 +4560,7 @@ void disposeComVariablesForBasic( StarBASIC* pBasic ) { StarBasicDisposeItem* pItem = *it; - SbxArray* pArray = pItem->m_pRegisteredVariables; + SbxArray* pArray = pItem->m_pRegisteredVariables.get(); sal_uInt16 nCount = pArray->Count(); for( sal_uInt16 i = 0 ; i < nCount ; ++i ) { @@ -4602,7 +4602,7 @@ bool SbModule::createCOMWrapperForIface( Any& o_rRetAny, SbClassModuleObject* pP bool bSuccess = false; - SbxArray* pModIfaces = pClassData->mxIfaces; + SbxArray* pModIfaces = pClassData->mxIfaces.get(); sal_uInt16 nCount = pModIfaces->Count(); for( sal_uInt16 i = 0 ; i < nCount ; ++i ) { @@ -4786,8 +4786,8 @@ SbxVariable* SbUnoStructRefObject::Find( const OUString& rName, SbxClassType t ) aProp.Type = css::uno::Type( it->second->getTypeClass(), it->second->getTypeName() ); SbUnoProperty* pProp = new SbUnoProperty( rName, eSbxType, eRealSbxType, aProp, 0, false, ( aProp.Type.getTypeClass() == css::uno::TypeClass_STRUCT) ); SbxVariableRef xVarRef = pProp; - QuickInsert( static_cast<SbxVariable*>(xVarRef) ); - pRes = xVarRef; + QuickInsert( xVarRef.get() ); + pRes = xVarRef.get(); } } @@ -4815,15 +4815,15 @@ void SbUnoStructRefObject::implCreateDbgProperties() // Id == -1: display the implemented interfaces corresponding the ClassProvider SbxVariableRef xVarRef = new SbUnoProperty( OUString(ID_DBG_SUPPORTEDINTERFACES), SbxSTRING, SbxSTRING, aProp, -1, false, false ); - QuickInsert( static_cast<SbxVariable*>(xVarRef) ); + QuickInsert( xVarRef.get() ); // Id == -2: output the properties xVarRef = new SbUnoProperty( OUString(ID_DBG_PROPERTIES), SbxSTRING, SbxSTRING, aProp, -2, false, false ); - QuickInsert( static_cast<SbxVariable*>(xVarRef) ); + QuickInsert( xVarRef.get() ); // Id == -3: output the Methods xVarRef = new SbUnoProperty( OUString(ID_DBG_METHODS), SbxSTRING, SbxSTRING, aProp, -3, false, false ); - QuickInsert( static_cast<SbxVariable*>(xVarRef) ); + QuickInsert( xVarRef.get() ); } void SbUnoStructRefObject::implCreateAll() @@ -4846,7 +4846,7 @@ void SbUnoStructRefObject::implCreateAll() aProp.Type = css::uno::Type( it->second->getTypeClass(), it->second->getTypeName() ); SbUnoProperty* pProp = new SbUnoProperty( rName, eSbxType, eRealSbxType, aProp, 0, false, ( aProp.Type.getTypeClass() == css::uno::TypeClass_STRUCT) ); SbxVariableRef xVarRef = pProp; - QuickInsert( static_cast<SbxVariable*>(xVarRef) ); + QuickInsert( xVarRef.get() ); } // Create Dbg_-Properties diff --git a/basic/source/classes/sbxmod.cxx b/basic/source/classes/sbxmod.cxx index 6388ef7..b7d9d59 100644 --- a/basic/source/classes/sbxmod.cxx +++ b/basic/source/classes/sbxmod.cxx @@ -228,7 +228,7 @@ DocObjectWrapper::invoke( const OUString& aFunctionName, const Sequence< Any >& if ( m_xAggInv.is() && m_xAggInv->hasMethod( aFunctionName ) ) return m_xAggInv->invoke( aFunctionName, aParams, aOutParamIndex, aOutParam ); SbMethodRef pMethod = getMethod( aFunctionName ); - if ( !pMethod ) + if ( !pMethod.Is() ) throw RuntimeException(); // check number of parameters sal_Int32 nParamsCount = aParams.getLength(); @@ -259,8 +259,8 @@ DocObjectWrapper::invoke( const OUString& aFunctionName, const Sequence< Any >& for ( sal_Int32 i = 0; i < nParamsCount; ++i ) { SbxVariableRef xSbxVar = new SbxVariable( SbxVARIANT ); - unoToSbxValue( static_cast< SbxVariable* >( xSbxVar ), pParams[i] ); - xSbxParams->Put( xSbxVar, static_cast< sal_uInt16 >( i ) + 1 ); + unoToSbxValue( xSbxVar.get(), pParams[i] ); + xSbxParams->Put( xSbxVar.get(), static_cast< sal_uInt16 >( i ) + 1 ); // Enable passing by ref if ( xSbxVar->GetType() != SbxVARIANT ) @@ -268,12 +268,12 @@ DocObjectWrapper::invoke( const OUString& aFunctionName, const Sequence< Any >& } } if ( xSbxParams.Is() ) - pMethod->SetParameters( xSbxParams ); + pMethod->SetParameters( xSbxParams.get() ); // call method SbxVariableRef xReturn = new SbxVariable; - pMethod->Call( xReturn ); + pMethod->Call( xReturn.get() ); Any aReturn; // get output parameters if ( xSbxParams.Is() ) @@ -291,7 +291,7 @@ DocObjectWrapper::invoke( const OUString& aFunctionName, const Sequence< Any >& if ( pVar ) { SbxVariableRef xVar = pVar; - aOutParamMap.insert( OutParamMap::value_type( n - 1, sbxToUnoValue( xVar ) ) ); + aOutParamMap.insert( OutParamMap::value_type( n - 1, sbxToUnoValue( xVar.get() ) ) ); } } } @@ -309,7 +309,7 @@ DocObjectWrapper::invoke( const OUString& aFunctionName, const Sequence< Any >& } // get return value - aReturn = sbxToUnoValue( xReturn ); + aReturn = sbxToUnoValue( xReturn.get() ); pMethod->SetParameters( nullptr ); @@ -325,7 +325,7 @@ DocObjectWrapper::setValue( const OUString& aPropertyName, const Any& aValue ) t SbPropertyRef pProperty = getProperty( aPropertyName ); if ( !pProperty.Is() ) throw UnknownPropertyException(); - unoToSbxValue( static_cast<SbxVariable*>(pProperty), aValue ); + unoToSbxValue( pProperty.get(), aValue ); } Any SAL_CALL @@ -338,7 +338,7 @@ DocObjectWrapper::getValue( const OUString& aPropertyName ) throw (UnknownProper if ( !pProperty.Is() ) throw UnknownPropertyException(); - SbxVariable* pProp = static_cast<SbxVariable*>(pProperty); + SbxVariable* pProp = pProperty.get(); if ( pProp->GetType() == SbxEMPTY ) pProperty->Broadcast( SBX_HINT_DATAWANTED ); @@ -763,7 +763,7 @@ void SbModule::Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) xMethParameters->Put( pPar, i ); } - pMethVar->SetParameters( xMethParameters ); + pMethVar->SetParameters( xMethParameters.get() ); pMethVar->Get( aVals ); pMethVar->SetParameters( nullptr ); } @@ -801,7 +801,7 @@ void SbModule::Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) SbxArrayRef xArray = new SbxArray; xArray->Put( pMethVar, 0 ); // Method as parameter 0 xArray->Put( pVar, 1 ); - pMethVar->SetParameters( xArray ); + pMethVar->SetParameters( xArray.get() ); SbxValues aVals; pMethVar->Get( aVals ); @@ -1197,7 +1197,7 @@ void SbModule::Run( SbMethod* pMeth ) { // #57841 Clear Uno-Objects, which were helt in RTL functions, // at the end of the program, so that nothing were helt. - ClearUnoObjectsInRTL_Impl( xBasic ); + ClearUnoObjectsInRTL_Impl( xBasic.get() ); clearNativeObjectWrapperVector(); @@ -1242,7 +1242,7 @@ void SbModule::Run( SbMethod* pMeth ) { // #57841 Clear Uno-Objects, which were helt in RTL functions, // the end of the program, so that nothing were helt. - ClearUnoObjectsInRTL_Impl( xBasic ); + ClearUnoObjectsInRTL_Impl( xBasic.get() ); delete GetSbData()->pInst; GetSbData()->pInst = nullptr; @@ -1309,7 +1309,7 @@ void SbModule::RemoveVars() // which would cause basic to be re-run in the middle of the init ( and remember RemoveVars is called from compile and we don't want code to run as part of the compile ) SbxVariableRef p = SbModule::Find( rModuleVariableName, SbxClassType::Property ); if( p.Is() ) - Remove (p); + Remove( p.get() ); } } @@ -1838,7 +1838,7 @@ void SbModule::LoadBinaryData( SvStream& rStrm ) bool SbModule::LoadCompleted() { - SbxArray* p = GetMethods(); + SbxArray* p = GetMethods().get(); sal_uInt16 i; for( i = 0; i < p->Count(); i++ ) { @@ -1892,7 +1892,7 @@ void SbModule::handleProcedureProperties( SfxBroadcaster& rBC, const SfxHint& rH xMethParameters->Put( pPar, i ); } - pMeth->SetParameters( xMethParameters ); + pMeth->SetParameters( xMethParameters.get() ); pMeth->Get( aVals ); pMeth->SetParameters( nullptr ); } @@ -1930,7 +1930,7 @@ void SbModule::handleProcedureProperties( SfxBroadcaster& rBC, const SfxHint& rH SbxArrayRef xArray = new SbxArray; xArray->Put( pMeth, 0 ); // Method as parameter 0 xArray->Put( pVar, 1 ); - pMeth->SetParameters( xArray ); + pMeth->SetParameters( xArray.get() ); SbxValues aVals; pMeth->Get( aVals ); @@ -2015,7 +2015,7 @@ void SbMethod::ClearStatics() } SbxArray* SbMethod::GetStatics() { - return refStatics; + return refStatics.get(); } bool SbMethod::LoadData( SvStream& rStrm, sal_uInt16 nVer ) @@ -2083,7 +2083,7 @@ void SbMethod::GetLineRange( sal_uInt16& l1, sal_uInt16& l2 ) SbxInfo* SbMethod::GetInfo() { - return pInfo; + return pInfo.get(); } // Interface to execute a method of the applications @@ -2198,7 +2198,7 @@ SbObjModule::~SbObjModule() void SbObjModule::SetUnoObject( const uno::Any& aObj ) throw ( uno::RuntimeException, std::exception ) { - SbUnoObject* pUnoObj = dynamic_cast<SbUnoObject*>( static_cast<SbxVariable*>(pDocObject) ); + SbUnoObject* pUnoObj = dynamic_cast<SbUnoObject*>( pDocObject.get() ); if ( pUnoObj && pUnoObj->getUnoAny() == aObj ) // object is equal, nothing to do return; pDocObject = new SbUnoObject( GetName(), aObj ); @@ -2217,13 +2217,13 @@ SbObjModule::SetUnoObject( const uno::Any& aObj ) throw ( uno::RuntimeException, SbxVariable* SbObjModule::GetObject() { - return pDocObject; + return pDocObject.get(); } SbxVariable* SbObjModule::Find( const OUString& rName, SbxClassType t ) { SbxVariable* pVar = nullptr; - if ( pDocObject) + if ( pDocObject.get() ) pVar = pDocObject->Find( rName, t ); if ( !pVar ) pVar = SbModule::Find( rName, t ); @@ -2489,14 +2489,14 @@ void SbUserFormModule::triggerMethod( const OUString& aMethodToRun, Sequence< An for ( sal_Int32 i = 0; i < aArguments.getLength(); ++i ) { auto xSbxVar = tools::make_ref<SbxVariable>( SbxVARIANT ); - unoToSbxValue( static_cast< SbxVariable* >( xSbxVar ), aArguments[i] ); - xArray->Put( xSbxVar, static_cast< sal_uInt16 >( i ) + 1 ); + unoToSbxValue( xSbxVar.get(), aArguments[i] ); + xArray->Put( xSbxVar.get(), static_cast< sal_uInt16 >( i ) + 1 ); // Enable passing by ref if ( xSbxVar->GetType() != SbxVARIANT ) xSbxVar->SetFlag( SbxFlagBits::Fixed ); } - pMeth->SetParameters( xArray ); + pMeth->SetParameters( xArray.get() ); SbxValues aVals; pMeth->Get( aVals ); @@ -2585,7 +2585,7 @@ void SbUserFormModule::Load() { SAL_INFO("basic", "** load() "); // forces a load - if ( !pDocObject ) + if ( !pDocObject.Is() ) InitObject(); } @@ -2711,7 +2711,7 @@ void SbUserFormModule::InitObject() SbxVariable* SbUserFormModule::Find( const OUString& rName, SbxClassType t ) { - if ( !pDocObject && !GetSbData()->bRunInit && GetSbData()->pInst ) + if ( !pDocObject.Is() && !GetSbData()->bRunInit && GetSbData()->pInst ) InitObject(); return SbObjModule::Find( rName, t ); } diff --git a/basic/source/comp/codegen.cxx b/basic/source/comp/codegen.cxx index 3ad73e0..c114d60 100644 --- a/basic/source/comp/codegen.cxx +++ b/basic/source/comp/codegen.cxx @@ -158,7 +158,7 @@ void SbiCodeGen::Save() const OUString& rIfaceName = pParser->aIfaceVector[i]; SbxVariable* pIfaceVar = new SbxVariable( SbxVARIANT ); pIfaceVar->SetName( rIfaceName ); - SbxArray* pIfaces = rMod.pClassData->mxIfaces; + SbxArray* pIfaces = rMod.pClassData->mxIfaces.get(); pIfaces->Insert( pIfaceVar, pIfaces->Count() ); } } diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx index 5d0da42..335c99a 100644 --- a/basic/source/runtime/methods.cxx +++ b/basic/source/runtime/methods.cxx @@ -185,13 +185,13 @@ RTLFUNC(CreateObject) OUString aClass( rPar.Get( 1 )->GetOUString() ); SbxObjectRef p = SbxBase::CreateObject( aClass ); - if( !p ) + if( !p.Is() ) StarBASIC::Error( ERRCODE_BASIC_CANNOT_LOAD ); else { // Convenience: enter BASIC as parent p->SetParent( pBasic ); - rPar.Get( 0 )->PutObject( p ); + rPar.Get( 0 )->PutObject( p.get() ); } } @@ -633,8 +633,8 @@ RTLFUNC(MkDir) SbxArrayRef pPar = new SbxArray(); SbxVariableRef pResult = new SbxVariable(); SbxVariableRef pParam = new SbxVariable(); - pPar->Insert( pResult, pPar->Count() ); - pPar->Insert( pParam, pPar->Count() ); + pPar->Insert( pResult.get(), pPar->Count() ); + pPar->Insert( pParam.get(), pPar->Count() ); SbRtl_CurDir( pBasic, *pPar, bWrite ); rtl::OUString sCurPathURL; @@ -1461,7 +1461,7 @@ RTLFUNC(RTL) (void)pBasic; (void)bWrite; - rPar.Get( 0 )->PutObject( pBasic->getRTL() ); + rPar.Get( 0 )->PutObject( pBasic->getRTL().get() ); } RTLFUNC(RTrim) @@ -4474,8 +4474,8 @@ RTLFUNC(LoadPicture) Graphic aGraphic(aBmp); SbxObjectRef xRef = new SbStdPicture; - static_cast<SbStdPicture*>(static_cast<SbxObject*>(xRef))->SetGraphic( aGraphic ); - rPar.Get(0)->PutObject( xRef ); + static_cast<SbStdPicture*>(xRef.get())->SetGraphic( aGraphic ); + rPar.Get(0)->PutObject( xRef.get() ); } } diff --git a/basic/source/runtime/methods1.cxx b/basic/source/runtime/methods1.cxx index 8a385c2..836451d 100644 --- a/basic/source/runtime/methods1.cxx +++ b/basic/source/runtime/methods1.cxx @@ -215,8 +215,8 @@ RTLFUNC(CallByName) // Call method SbxVariableRef refVar = rPar.Get(0); if( xArray.Is() ) - pMeth->SetParameters( xArray ); - pMeth->Call( refVar ); + pMeth->SetParameters( xArray.get() ); + pMeth->Call( refVar.get() ); pMeth->SetParameters( nullptr ); } break; diff --git a/basic/source/runtime/props.cxx b/basic/source/runtime/props.cxx index 276bc42..ce99494 100644 --- a/basic/source/runtime/props.cxx +++ b/basic/source/runtime/props.cxx @@ -44,7 +44,7 @@ RTLFUNC(Err) if( SbiRuntime::isVBAEnabled() ) { - rPar.Get( 0 )->PutObject( SbxErrObject::getErrObject() ); + rPar.Get( 0 )->PutObject( SbxErrObject::getErrObject().get() ); } else { diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx index 643c1a2..068858f 100644 --- a/basic/source/runtime/runtime.cxx +++ b/basic/source/runtime/runtime.cxx @@ -888,7 +888,7 @@ void SbiRuntime::Error( SbError n, bool bVBATranslationAlreadyDone ) { OUString aMsg = pInst->GetErrorMsg(); sal_Int32 nVBAErrorNumber = translateErrorToVba( nError, aMsg ); - SbxVariable* pSbxErrObjVar = SbxErrObject::getErrObject(); + SbxVariable* pSbxErrObjVar = SbxErrObject::getErrObject().get(); SbxErrObject* pGlobErr = static_cast< SbxErrObject* >( pSbxErrObjVar ); if( pGlobErr != nullptr ) { @@ -1324,13 +1324,13 @@ void SbiRuntime::StepCompare( SbxOperator eOp ) // Compare ) if ( p1Type == SbxOBJECT ) { - SbxVariable* pDflt = getDefaultProp( p1 ); + SbxVariable* pDflt = getDefaultProp( p1.get() ); if ( pDflt ) { p1 = pDflt; p1->Broadcast( SBX_HINT_DATAWANTED ); } - pDflt = getDefaultProp( p2 ); + pDflt = getDefaultProp( p2.get() ); if ( pDflt ) { p2 = pDflt; @@ -1604,7 +1604,7 @@ inline bool checkUnoStructCopy( bool bVBA, SbxVariableRef& refVal, SbxVariableRe return false; SbUnoObject* pUnoVal = dynamic_cast<SbUnoObject*>( xValObj.get() ); - SbUnoStructRefObject* pUnoStructVal = dynamic_cast<SbUnoStructRefObject*>( static_cast<SbxObject*>(xValObj) ); + SbUnoStructRefObject* pUnoStructVal = dynamic_cast<SbUnoStructRefObject*>( xValObj.get() ); Any aAny; // make doubly sure value is either an Uno object or // an uno struct @@ -1683,7 +1683,7 @@ void SbiRuntime::StepPUT() { if ( dynamic_cast<const SbxMethod *>(refVar.get()) != nullptr || ! refVar->GetParent() ) { - SbxVariable* pDflt = getDefaultProp( refVar ); + SbxVariable* pDflt = getDefaultProp( refVar.get() ); if ( pDflt ) refVar = pDflt; @@ -1693,7 +1693,7 @@ void SbiRuntime::StepPUT() } if ( refVal->GetType() == SbxOBJECT && !bObjAssign && ( dynamic_cast<const SbxMethod *>(refVal.get()) != nullptr || ! refVal->GetParent() ) ) { - SbxVariable* pDflt = getDefaultProp( refVal ); + SbxVariable* pDflt = getDefaultProp( refVal.get() ); if ( pDflt ) refVal = pDflt; } @@ -1788,7 +1788,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b { SbxVariableRef refObjVal = dynamic_cast<SbxObject*>( pObjVarObj ); - if( refObjVal ) + if( refObjVal.Is() ) { refVal = refObjVal; } @@ -1802,7 +1802,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b // #52896 refVal can be invalid here, if uno-sequences - or more // general arrays - are assigned to variables that are declared // as an object! - if( !refVal ) + if( !refVal.Is() ) { Error( ERRCODE_BASIC_INVALID_USAGE_OBJECT ); } @@ -1835,7 +1835,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b { if ( dynamic_cast<const SbxMethod *>(refVar.get()) != nullptr || ! refVar->GetParent() ) { - SbxVariable* pDflt = getDefaultProp( refVar ); + SbxVariable* pDflt = getDefaultProp( refVar.get() ); if ( pDflt ) { refVar = pDflt; @@ -1849,10 +1849,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b { // check if lhs is a null object // if it is then use the object not the default property - SbxObject* pObj = nullptr; - - - pObj = dynamic_cast<SbxObject*>( refVar.get() ); + SbxObject* pObj = dynamic_cast<SbxObject*>( refVar.get() ); // calling GetObject on a SbxEMPTY variable raises // object not set errors, make sure it's an Object @@ -1865,7 +1862,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b if ( pObj && !bObjAssign ) { // lhs is either a valid object || or has a defaultProp - pDflt = getDefaultProp( refVal ); + pDflt = getDefaultProp( refVal.get() ); } if ( pDflt ) { @@ -1923,7 +1920,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b { // Object is overwritten with NULL, instantiate init object DimAsNewRecoverHash &rDimAsNewRecoverHash = GaDimAsNewRecoverHash::get(); - DimAsNewRecoverHash::iterator it = rDimAsNewRecoverHash.find( refVar ); + DimAsNewRecoverHash::iterator it = rDimAsNewRecoverHash.find( refVar.get() ); if( it != rDimAsNewRecoverHash.end() ) { const DimAsNewRecoverItem& rItem = it->second; @@ -1961,12 +1958,12 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b if( pClassModuleObj != nullptr ) { SbModule* pClassModule = pClassModuleObj->getClassModule(); - rDimAsNewRecoverHash[refVar] = + rDimAsNewRecoverHash[refVar.get()] = DimAsNewRecoverItem( aObjClass, pValObj->GetName(), pValObj->GetParent(), pClassModule ); } else if( aObjClass.equalsIgnoreAsciiCase( "Collection" ) ) { - rDimAsNewRecoverHash[refVar] = + rDimAsNewRecoverHash[refVar.get()] = DimAsNewRecoverItem( aObjClass, pValObj->GetName(), pValObj->GetParent(), nullptr ); } } @@ -2099,9 +2096,9 @@ void SbiRuntime::DimImpl( SbxVariableRef refVar ) // If refDim then this DIM statement is terminating a ReDIM and // previous StepERASE_CLEAR for an array, the following actions have // been delayed from ( StepERASE_CLEAR ) 'till here - if ( refRedim ) + if ( refRedim.Is() ) { - if ( !refRedimpArray ) // only erase the array not ReDim Preserve + if ( !refRedimpArray.Is() ) // only erase the array not ReDim Preserve { lcl_eraseImpl( refVar, bVBAEnabled ); } @@ -2205,7 +2202,7 @@ void SbiRuntime::StepREDIMP() { SbxBase* pElemObj = refVar->GetObject(); SbxDimArray* pNewArray = dynamic_cast<SbxDimArray*>( pElemObj ); - SbxDimArray* pOldArray = static_cast<SbxDimArray*>(static_cast<SbxArray*>(refRedimpArray)); + SbxDimArray* pOldArray = static_cast<SbxDimArray*>(refRedimpArray.get()); if( pNewArray ) { short nDimsNew = pNewArray->GetDims(); @@ -2355,14 +2352,14 @@ void SbiRuntime::StepERASE_CLEAR() void SbiRuntime::StepARRAYACCESS() { - if( !refArgv ) + if( !refArgv.Is() ) { StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); } SbxVariableRef refVar = PopVar(); - refVar->SetParameters( refArgv ); + refVar->SetParameters( refArgv.get() ); PopArgv(); - PushVar( CheckArray( refVar ) ); + PushVar( CheckArray( refVar.get() ) ); } void SbiRuntime::StepBYVAL() @@ -2392,7 +2389,7 @@ void SbiRuntime::StepARGC() void SbiRuntime::StepARGV() { - if( !refArgv ) + if( !refArgv.Is() ) { StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); } @@ -2409,7 +2406,7 @@ void SbiRuntime::StepARGV() SbxVariable* pRes = new SbxVariable( *pVal ); pVal = pRes; } - refArgv->Put( pVal, nArgc++ ); + refArgv->Put( pVal.get(), nArgc++ ); } } @@ -2580,14 +2577,14 @@ void SbiRuntime::StepCASE() refCaseStk = new SbxArray; } SbxVariableRef xVar = PopVar(); - refCaseStk->Put( xVar, refCaseStk->Count() ); + refCaseStk->Put( xVar.get(), refCaseStk->Count() ); } // end CASE: free variable void SbiRuntime::StepENDCASE() { - if( !refCaseStk || !refCaseStk->Count() ) + if( !refCaseStk.Is() || !refCaseStk->Count() ) { StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); } @@ -2742,7 +2739,7 @@ void SbiRuntime::StepEMPTY() // to simplify matters. SbxVariableRef xVar = new SbxVariable( SbxVARIANT ); xVar->PutErr( 448 ); - PushVar( xVar ); + PushVar( xVar.get() ); } // TOS = error code @@ -2804,7 +2801,7 @@ void SbiRuntime::StepLOADI( sal_uInt32 nOp1 ) void SbiRuntime::StepARGN( sal_uInt32 nOp1 ) { - if( !refArgv ) + if( !refArgv.Is() ) StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); else { @@ -2819,7 +2816,7 @@ void SbiRuntime::StepARGN( sal_uInt32 nOp1 ) SbxVariable* pRes = new SbxVariable( *pVal ); pVal = pRes; } - refArgv->Put( pVal, nArgc ); + refArgv->Put( pVal.get(), nArgc ); refArgv->PutAlias( aAlias, nArgc++ ); } } @@ -2828,7 +2825,7 @@ void SbiRuntime::StepARGN( sal_uInt32 nOp1 ) void SbiRuntime::StepARGTYP( sal_uInt32 nOp1 ) { - if( !refArgv ) + if( !refArgv.Is() ) StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); else { @@ -2995,7 +2992,7 @@ void SbiRuntime::StepTESTFOR( sal_uInt32 nOp1 ) } else { - SbxDimArray* pArray = reinterpret_cast<SbxDimArray*>(static_cast<SbxVariable*>(p->refEnd)); + SbxDimArray* pArray = reinterpret_cast<SbxDimArray*>(p->refEnd.get()); short nDims = pArray->GetDims(); // Empty array? @@ -3029,7 +3026,7 @@ void SbiRuntime::StepTESTFOR( sal_uInt32 nOp1 ) } case ForType::EachCollection: { - BasicCollection* pCollection = static_cast<BasicCollection*>(static_cast<SbxVariable*>(pForStk->refEnd)); + BasicCollection* pCollection = static_cast<BasicCollection*>(pForStk->refEnd.get()); SbxArrayRef xItemArray = pCollection->xItemArray; sal_Int32 nCount = xItemArray->Count32(); if( pForStk->nCurCollectionIndex < nCount ) @@ -3072,7 +3069,7 @@ void SbiRuntime::StepTESTFOR( sal_uInt32 nOp1 ) void SbiRuntime::StepCASETO( sal_uInt32 nOp1 ) { - if( !refCaseStk || !refCaseStk->Count() ) + if( !refCaseStk.Is() || !refCaseStk->Count() ) StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); else { @@ -3300,7 +3297,7 @@ void SbiRuntime::StepBASED( sal_uInt32 nOp1 ) p1->PutInteger( uBase ); if( !bCompatible ) x2->Compute( SbxPLUS, *p1 ); - PushVar( x2 ); // first the Expr + PushVar( x2.get() ); // first the Expr PushVar( p1 ); // then the Base } @@ -3465,7 +3462,7 @@ SbxVariable* SbiRuntime::FindElement( SbxObject* pObj, sal_uInt32 nOp1, sal_uInt { xDummyVar = new SbxVariable( SbxVARIANT ); } - pElem = xDummyVar; + pElem = xDummyVar.get(); ClearArgvStack(); @@ -3564,7 +3561,7 @@ SbxBase* SbiRuntime::FindElementExtern( const OUString& rName ) { return nullptr; } - if( refLocals ) + if( refLocals.Is() ) { pElem = refLocals->Find( rName, SbxClassType::DontCare ); } @@ -3579,7 +3576,7 @@ SbxBase* SbiRuntime::FindElementExtern( const OUString& rName ) if( !pElem && pMeth ) { SbxInfo* pInfo = pMeth->GetInfo(); - if( pInfo && refParams ) + if( pInfo && refParams.Is() ) { sal_uInt16 nParamCount = refParams->Count(); sal_uInt16 j = 1; @@ -3621,7 +3618,7 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 ) { if( nOp1 & 0x8000 ) { - if( !refArgv ) + if( !refArgv.Is() ) { StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); } @@ -3745,7 +3742,7 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 ) } // own var as parameter 0 refArgv->Put( p, 0 ); - p->SetParameters( refArgv ); + p->SetParameters( refArgv.get() ); PopArgv(); } else @@ -3804,9 +3801,9 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem ) { // is it an uno-object? SbxBaseRef pObj = pElem->GetObject(); - if( pObj ) + if( pObj.Is() ) { - if (SbUnoObject* pUnoObj = dynamic_cast<SbUnoObject*>(static_cast<SbxBase*>(pObj))) + if (SbUnoObject* pUnoObj = dynamic_cast<SbUnoObject*>( pObj.get())) { Any aAny = pUnoObj->getUnoAny(); @@ -3848,7 +3845,7 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem ) // #67173 don't specify a name so that the real class name is entered OUString aName; SbxObjectRef xWrapper = static_cast<SbxObject*>(new SbUnoObject( aName, aAny )); - pElem->PutObject( xWrapper ); + pElem->PutObject( xWrapper.get() ); } else { @@ -3870,9 +3867,9 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem ) { pDflt->Broadcast( SBX_HINT_DATAWANTED ); SbxBaseRef pDfltObj = pDflt->GetObject(); - if( pDfltObj ) + if( pDfltObj.Is() ) { - if (SbUnoObject* pSbObj = dynamic_cast<SbUnoObject*>(static_cast<SbxBase*>(pDfltObj))) + if (SbUnoObject* pSbObj = dynamic_cast<SbUnoObject*>(pDfltObj.get())) { pUnoObj = pSbObj; Any aUnoAny = pUnoObj->getUnoAny(); @@ -3899,7 +3896,7 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem ) { SbxVariable* meth = pUnoObj->Find( sDefaultMethod, SbxClassType::Method ); SbxVariableRef refTemp = meth; - if ( refTemp ) + if ( refTemp.Is() ) { meth->SetParameters( pPar ); SbxVariable* pNew = new SbxMethod( *static_cast<SbxMethod*>(meth) ); @@ -3912,7 +3909,7 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem ) // #42940, set parameter 0 to NULL so that var doesn't contain itself pPar->Put( nullptr, 0 ); } - else if (BasicCollection* pCol = dynamic_cast<BasicCollection*>(static_cast<SbxBase*>(pObj))) + else if (BasicCollection* pCol = dynamic_cast<BasicCollection*>(pObj.get())) { pElem = new SbxVariable( SbxVARIANT ); pPar->Put( pElem, 0 ); @@ -3937,13 +3934,13 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem ) void SbiRuntime::StepRTL( sal_uInt32 nOp1, sal_uInt32 nOp2 ) { - PushVar( FindElement( rBasic.pRtl, nOp1, nOp2, ERRCODE_BASIC_PROC_UNDEFINED, false ) ); + PushVar( FindElement( rBasic.pRtl.get(), nOp1, nOp2, ERRCODE_BASIC_PROC_UNDEFINED, false ) ); } void SbiRuntime::StepFIND_Impl( SbxObject* pObj, sal_uInt32 nOp1, sal_uInt32 nOp2, SbError nNotFound, bool bStatic ) { - if( !refLocals ) + if( !refLocals.Is() ) { refLocals = new SbxArray; } @@ -4094,7 +4091,7 @@ void SbiRuntime::StepPARAM( sal_uInt32 nOp1, sal_uInt32 nOp2 ) void SbiRuntime::StepCASEIS( sal_uInt32 nOp1, sal_uInt32 nOp2 ) { - if( !refCaseStk || !refCaseStk->Count() ) + if( !refCaseStk.Is() || !refCaseStk->Count() ) { StarBASIC::FatalError( ERRCODE_BASIC_INTERNAL_ERROR ); } @@ -4118,7 +4115,7 @@ void SbiRuntime::StepCALL( sal_uInt32 nOp1, sal_uInt32 nOp2 ) SbxArray* pArgs = nullptr; if( nOp1 & 0x8000 ) { - pArgs = refArgv; + pArgs = refArgv.get(); } DllCall( aName, aLibName, pArgs, (SbxDataType) nOp2, false ); aLibName.clear(); @@ -4136,7 +4133,7 @@ void SbiRuntime::StepCALLC( sal_uInt32 nOp1, sal_uInt32 nOp2 ) SbxArray* pArgs = nullptr; if( nOp1 & 0x8000 ) { - pArgs = refArgv; + pArgs = refArgv.get(); } DllCall( aName, aLibName, pArgs, (SbxDataType) nOp2, true ); aLibName.clear(); @@ -4323,13 +4320,13 @@ void SbiRuntime::StepDCREATE_IMPL( sal_uInt32 nOp1, sal_uInt32 nOp2 ) // fill the array with instances of the requested class SbxBaseRef xObj = refVar->GetObject(); - if( !xObj ) + if( !xObj.Is() ) { StarBASIC::Error( ERRCODE_BASIC_INVALID_OBJECT ); return; } - SbxDimArray* pArray = dynamic_cast<SbxDimArray*>(static_cast<SbxBase*>(xObj)); + SbxDimArray* pArray = dynamic_cast<SbxDimArray*>(xObj.get()); if (pArray) { short nDims = pArray->GetDims(); @@ -4373,7 +4370,7 @@ void SbiRuntime::StepDCREATE_IMPL( sal_uInt32 nOp1, sal_uInt32 nOp2 ) } } - SbxDimArray* pOldArray = static_cast<SbxDimArray*>(static_cast<SbxArray*>(refRedimpArray)); + SbxDimArray* pOldArray = static_cast<SbxDimArray*>(refRedimpArray.get()); if( pArray && pOldArray ) { short nDimsNew = pArray->GetDims(); @@ -4497,7 +4494,7 @@ void SbiRuntime::StepPUBLIC_Impl( sal_uInt32 nOp1, sal_uInt32 nOp2, bool bUsedFo SbxVariableRef p = pMod->Find( aName, SbxClassType::Property ); if( p.Is() ) { - pMod->Remove (p); + pMod->Remove (p.get()); } SbProperty* pProp = pMod->GetProperty( aName, t ); if( !bUsedForClassModule ) @@ -4560,14 +4557,14 @@ void SbiRuntime::StepGLOBAL( sal_uInt32 nOp1, sal_uInt32 nOp2 ) SbxVariableRef p = pStorage->Find( aName, SbxClassType::Property ); if( p.Is() ) { - pStorage->Remove (p); + pStorage->Remove (p.get()); } p = pStorage->Make( aName, SbxClassType::Property, t ); if( !bFlag ) { pStorage->ResetFlag( SbxFlagBits::NoModify ); } - if( p ) + if( p.Is() ) { p->SetFlag( SbxFlagBits::DontStore ); // from 2.7.1996: HACK because of 'reference can't be saved' diff --git a/basic/source/sbx/sbxarray.cxx b/basic/source/sbx/sbxarray.cxx index 8748d2d..e96ac1a 100644 --- a/basic/source/sbx/sbxarray.cxx +++ b/basic/source/sbx/sbxarray.cxx @@ -61,7 +61,7 @@ SbxArray& SbxArray::operator=( const SbxArray& rArray ) for( const auto& rpSrcRef : rArray.mVarEntries ) { SbxVariableRef pSrc_ = rpSrcRef.mpVar; - if( !pSrc_ ) + if( !pSrc_.Is() ) continue; if( eType != SbxVARIANT ) @@ -153,7 +153,7 @@ SbxVariable* SbxArray::Get32( sal_uInt32 nIdx ) if ( !rRef.Is() ) rRef = new SbxVariable( eType ); - return rRef; + return rRef.get(); } SbxVariable* SbxArray::Get( sal_uInt16 nIdx ) @@ -168,7 +168,7 @@ SbxVariable* SbxArray::Get( sal_uInt16 nIdx ) if ( !rRef.Is() ) rRef = new SbxVariable( eType ); - return rRef; + return rRef.get(); } void SbxArray::Put32( SbxVariable* pVar, sal_uInt32 nIdx ) @@ -183,7 +183,7 @@ void SbxArray::Put32( SbxVariable* pVar, sal_uInt32 nIdx ) if( eType != SbxOBJECT || pVar->GetClass() != SbxClassType::Object ) pVar->Convert( eType ); SbxVariableRef& rRef = GetRef32( nIdx ); - if( static_cast<SbxVariable*>(rRef) != pVar ) + if( rRef.get() != pVar ) { rRef = pVar; SetFlag( SbxFlagBits::Modified ); @@ -311,7 +311,7 @@ void SbxArray::Merge( SbxArray* p ) for (auto& rEntry1: p->mVarEntries) { - if (!rEntry1.mpVar) + if (!rEntry1.mpVar.Is()) continue; OUString aName = rEntry1.mpVar->GetName(); @@ -321,7 +321,7 @@ void SbxArray::Merge( SbxArray* p ) // Then overwrite! for (auto& rEntry2: mVarEntries) { - if (!rEntry2.mpVar) + if (!rEntry2.mpVar.Is()) continue; if (rEntry2.mpVar->GetHashCode() == nHash && @@ -334,7 +334,7 @@ void SbxArray::Merge( SbxArray* p ) } } - if (rEntry1.mpVar) + if (rEntry1.mpVar.Is()) { // We don't have element with the same name. Add a new entry. SbxVarEntry aNewEntry; @@ -354,7 +354,7 @@ SbxVariable* SbxArray::FindUserData( sal_uInt32 nData ) SbxVariable* p = nullptr; for (auto& rEntry : mVarEntries) { - if (!rEntry.mpVar) + if (!rEntry.mpVar.Is()) continue; if (rEntry.mpVar->IsVisible() && rEntry.mpVar->GetUserData() == nData) @@ -408,7 +408,7 @@ SbxVariable* SbxArray::Find( const OUString& rName, SbxClassType t ) sal_uInt16 nHash = SbxVariable::MakeHashCode( rName ); for (auto& rEntry : mVarEntries) { - if (!rEntry.mpVar || !rEntry.mpVar->IsVisible()) + if (!rEntry.mpVar.Is() || !rEntry.mpVar->IsVisible()) continue; // The very secure search works as well, if there is no hashcode! @@ -489,14 +489,14 @@ bool SbxArray::StoreData( SvStream& rStrm ) const // Which elements are even defined? for( auto& rEntry: mVarEntries ) { - if (rEntry.mpVar && !(rEntry.mpVar->GetFlags() & SbxFlagBits::DontStore)) + if (rEntry.mpVar.Is() && !(rEntry.mpVar->GetFlags() & SbxFlagBits::DontStore)) nElem++; } rStrm.WriteUInt16( nElem ); for( size_t n = 0; n < mVarEntries.size(); n++ ) { const SbxVarEntry& rEntry = mVarEntries[n]; - if (rEntry.mpVar && !(rEntry.mpVar->GetFlags() & SbxFlagBits::DontStore)) + if (rEntry.mpVar.Is() && !(rEntry.mpVar->GetFlags() & SbxFlagBits::DontStore)) { rStrm.WriteUInt16( n ); if (!rEntry.mpVar->Store(rStrm)) diff --git a/basic/source/sbx/sbxexec.cxx b/basic/source/sbx/sbxexec.cxx index 9507f47..47775b0 100644 --- a/basic/source/sbx/sbxexec.cxx +++ b/basic/source/sbx/sbxexec.cxx @@ -94,7 +94,7 @@ static SbxVariableRef QualifiedName { // It follows still an objectelement. The current element // had to be a SBX-Object or had to deliver such an object! - pObj = dynamic_cast<SbxObject*>( static_cast<SbxVariable*>(refVar) ); + pObj = dynamic_cast<SbxObject*>( refVar.get() ); if( !pObj ) // Then it had to deliver an object pObj = dynamic_cast<SbxObject*>( refVar->GetObject() ); @@ -183,7 +183,7 @@ static SbxVariableRef MulDiv( SbxObject* pObj, SbxObject* pGbl, const sal_Unicod if( refVar2.Is() ) { // temporary variable! - SbxVariable* pVar = refVar; + SbxVariable* pVar = refVar.get(); pVar = new SbxVariable( *pVar ); refVar = pVar; if( cOp == '*' ) @@ -213,7 +213,7 @@ static SbxVariableRef PlusMinus( SbxObject* pObj, SbxObject* pGbl, const sal_Uni if( refVar2.Is() ) { // temporaere Variable! - SbxVariable* pVar = refVar; + SbxVariable* pVar = refVar.get(); pVar = new SbxVariable( *pVar ); refVar = pVar; if( cOp == '+' ) @@ -252,8 +252,8 @@ static SbxVariableRef Assign( SbxObject* pObj, SbxObject* pGbl, const sal_Unicod SbxVariableRef refVar2( PlusMinus( pObj, pGbl, &p ) ); if( refVar2.Is() ) { - SbxVariable* pVar = refVar; - SbxVariable* pVar2 = refVar2; + SbxVariable* pVar = refVar.get(); + SbxVariable* pVar2 = refVar2.get(); *pVar = *pVar2; pVar->SetParameters( nullptr ); } @@ -303,7 +303,7 @@ static SbxVariableRef Element while( *p && *p != ')' && *p != ']' ) { SbxVariableRef refArg = PlusMinus( pGbl, pGbl, &p ); - if( !refArg ) + if( !refArg.Is() ) { // Error during the parsing refVar.Clear(); break; @@ -322,7 +322,7 @@ static SbxVariableRef Element if( *p == ')' ) p++; if( refVar.Is() ) - refVar->SetParameters( refPar ); + refVar->SetParameters( refPar.get() ); } } else @@ -336,7 +336,7 @@ static SbxVariableRef Element SbxVariable* SbxObject::Execute( const OUString& rTxt ) { - SbxVariable* pVar = nullptr; + SbxVariableRef pVar = nullptr; const sal_Unicode* p = rTxt.getStr(); for( ;; ) { @@ -350,7 +350,7 @@ SbxVariable* SbxObject::Execute( const OUString& rTxt ) SetError( ERRCODE_SBX_SYNTAX ); break; } pVar = Assign( this, this, &p ); - if( !pVar ) + if( !pVar.Is() ) { break; } @@ -360,12 +360,12 @@ SbxVariable* SbxObject::Execute( const OUString& rTxt ) SetError( ERRCODE_SBX_SYNTAX ); break; } } - return pVar; + return pVar.get(); } SbxVariable* SbxObject::FindQualified( const OUString& rName, SbxClassType t ) { - SbxVariable* pVar = nullptr; + SbxVariableRef pVar = nullptr; const sal_Unicode* p = rName.getStr(); p = SkipWhitespace( p ); if( !*p ) @@ -378,7 +378,7 @@ SbxVariable* SbxObject::FindQualified( const OUString& rName, SbxClassType t ) { SetError( ERRCODE_SBX_SYNTAX ); } - return pVar; + return pVar.get(); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/source/sbx/sbxobj.cxx b/basic/source/sbx/sbxobj.cxx index 5382b49..e4e7e38 100644 --- a/basic/source/sbx/sbxobj.cxx +++ b/basic/source/sbx/sbxobj.cxx @@ -98,9 +98,9 @@ static void CheckParentsOnDelete( SbxObject* pObj, SbxArray* p ) SbxObject::~SbxObject() { - CheckParentsOnDelete( this, pProps ); - CheckParentsOnDelete( this, pMethods ); - CheckParentsOnDelete( this, pObjs ); + CheckParentsOnDelete( this, pProps.get() ); + CheckParentsOnDelete( this, pMethods.get() ); + CheckParentsOnDelete( this, pObjs.get() ); // avoid handling in ~SbxVariable as SbxFlagBits::DimAsNew == SbxFlagBits::GlobalSearch ResetFlag( SbxFlagBits::DimAsNew ); @@ -239,9 +239,9 @@ SbxVariable* SbxObject::Find( const OUString& rName, SbxClassType t ) switch( t ) { case SbxClassType::Variable: - case SbxClassType::Property: pArray = pProps; break; - case SbxClassType::Method: pArray = pMethods; break; - case SbxClassType::Object: pArray = pObjs; break; + case SbxClassType::Property: pArray = pProps.get(); break; + case SbxClassType::Method: pArray = pMethods.get(); break; + case SbxClassType::Object: pArray = pObjs.get(); break; default: SAL_WARN( "basic", "Invalid SBX-Class" ); break; } if( pArray ) @@ -332,13 +332,16 @@ void SbxObject::SetDfltProperty( const OUString& rName ) SbxArray* SbxObject::FindVar( SbxVariable* pVar, sal_uInt16& nArrayIdx ) { SbxArray* pArray = nullptr; - if( pVar ) switch( pVar->GetClass() ) + if( pVar ) { - case SbxClassType::Variable: - case SbxClassType::Property: pArray = pProps; break; - case SbxClassType::Method: pArray = pMethods; break; - case SbxClassType::Object: pArray = pObjs; break; - default: SAL_WARN( "basic", "Invalid SBX-Class" ); break; + switch( pVar->GetClass() ) + { + case SbxClassType::Variable: + case SbxClassType::Property: pArray = pProps.get(); break; + case SbxClassType::Method: pArray = pMethods.get(); break; + case SbxClassType::Object: pArray = pObjs.get(); break; + default: SAL_WARN( "basic", "Invalid SBX-Class" ); break; + } } if( pArray ) { @@ -351,7 +354,7 @@ SbxArray* SbxObject::FindVar( SbxVariable* pVar, sal_uInt16& nArrayIdx ) for( sal_uInt16 i = 0; i < pArray->Count(); i++ ) { SbxVariableRef& rRef = pArray->GetRef( i ); - if( static_cast<SbxVariable*>(rRef) == pOld ) + if( rRef.get() == pOld ) { nArrayIdx = i; break; } @@ -371,9 +374,9 @@ SbxVariable* SbxObject::Make( const OUString& rName, SbxClassType ct, SbxDataTyp switch( ct ) { case SbxClassType::Variable: - case SbxClassType::Property: pArray = pProps; break; - case SbxClassType::Method: pArray = pMethods; break; - case SbxClassType::Object: pArray = pObjs; break; + case SbxClassType::Property: pArray = pProps.get(); break; + case SbxClassType::Method: pArray = pMethods.get(); break; + case SbxClassType::Object: pArray = pObjs.get(); break; default: SAL_WARN( "basic", "Invalid SBX-Class" ); break; } if( !pArray ) @@ -425,7 +428,7 @@ void SbxObject::Insert( SbxVariable* pVar ) { // Then this element exists already // There are objects of the same name allowed at collections - if( pArray == pObjs && nullptr != dynamic_cast<const SbxCollection*>( this ) ) + if( pArray == pObjs.get() && nullptr != dynamic_cast<const SbxCollection*>( this ) ) { nIdx = pArray->Count(); } @@ -484,9 +487,9 @@ void SbxObject::QuickInsert( SbxVariable* pVar ) switch( pVar->GetClass() ) { case SbxClassType::Variable: - case SbxClassType::Property: pArray = pProps; break; - case SbxClassType::Method: pArray = pMethods; break; - case SbxClassType::Object: pArray = pObjs; break; + case SbxClassType::Property: pArray = pProps.get(); break; + case SbxClassType::Method: pArray = pMethods.get(); break; + case SbxClassType::Object: pArray = pObjs.get(); break; default: SAL_WARN( "basic", "Invalid SBX-Class" ); break; } } @@ -544,7 +547,7 @@ void SbxObject::Remove( SbxVariable* pVar ) { EndListening( pVar_->GetBroadcaster(), true ); } - if( static_cast<SbxVariable*>(pVar_) == pDfltProp ) + if( pVar_.get() == pDfltProp ) { pDfltProp = nullptr; } @@ -568,14 +571,14 @@ static bool LoadArray( SvStream& rStrm, SbxObject* pThis, SbxArray* pArray ) for( sal_uInt16 i = 0; i < p->Count(); i++ ) { SbxVariableRef& r = p->GetRef( i ); - SbxVariable* pVar = r; + SbxVariable* pVar = r.get(); if( pVar ) { pVar->SetParent( pThis ); pThis->StartListening( pVar->GetBroadcaster(), true ); } } - pArray->Merge( p ); + pArray->Merge( p.get() ); return true; } @@ -612,9 +615,9 @@ bool SbxObject::LoadData( SvStream& rStrm, sal_uInt16 nVer ) { rStrm.Seek( nPos ); } - if( !LoadArray( rStrm, this, pMethods ) || - !LoadArray( rStrm, this, pProps ) || - !LoadArray( rStrm, this, pObjs ) ) + if( !LoadArray( rStrm, this, pMethods.get() ) || + !LoadArray( rStrm, this, pProps.get() ) || + !LoadArray( rStrm, this, pObjs.get() ) ) { return false; } @@ -758,7 +761,7 @@ void SbxObject::Dump( SvStream& rStrm, bool bFill ) for( sal_uInt16 i = 0; i < pMethods->Count(); i++ ) { SbxVariableRef& r = pMethods->GetRef( i ); - SbxVariable* pVar = r; + SbxVariable* pVar = r.get(); if( pVar ) { OUString aLine = aIndent + " - " + pVar->GetName( SbxNAME_SHORT_TYPES ); @@ -795,7 +798,7 @@ void SbxObject::Dump( SvStream& rStrm, bool bFill ) for( sal_uInt16 i = 0; i < pProps->Count(); i++ ) { SbxVariableRef& r = pProps->GetRef( i ); - SbxVariable* pVar = r; + SbxVariable* pVar = r.get(); if( pVar ) { OUString aLine = aIndent + " - " + pVar->GetName( SbxNAME_SHORT_TYPES ); @@ -833,7 +836,7 @@ void SbxObject::Dump( SvStream& rStrm, bool bFill ) ... etc. - the rest is truncated _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits