summaryrefslogtreecommitdiff
path: root/basic/source/basmgr
diff options
context:
space:
mode:
authorCaolán McNamara <caolan.mcnamara@collabora.com>2025-02-05 10:22:46 +0000
committerCaolán McNamara <caolan.mcnamara@collabora.com>2025-02-05 14:01:39 +0100
commit7daf54c93dbcdfb74a84e2e8e0b7725c67bf0941 (patch)
treeffb1ecbe6b0808204c0d81c90cc345cf0c5a4306 /basic/source/basmgr
parent09a351281ad82a6b4fc0a5def77ad3df4a0f031a (diff)
avoid uno casting cost, and simplify
these are always XStorageBasedLibraryContainers, so transport around as that and can avoid casting and some expensive throw/catches Change-Id: I772efceea3bb4f38d70be0497345f5f81173494c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181156 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'basic/source/basmgr')
-rw-r--r--basic/source/basmgr/basicmanagerrepository.cxx22
-rw-r--r--basic/source/basmgr/basmgr.cxx4
2 files changed, 13 insertions, 13 deletions
diff --git a/basic/source/basmgr/basicmanagerrepository.cxx b/basic/source/basmgr/basicmanagerrepository.cxx
index 260369cbab21..6581f225f8b3 100644
--- a/basic/source/basmgr/basicmanagerrepository.cxx
+++ b/basic/source/basmgr/basicmanagerrepository.cxx
@@ -55,7 +55,7 @@ namespace basic
using ::com::sun::star::uno::XInterface;
using ::com::sun::star::uno::UNO_QUERY;
using ::com::sun::star::embed::XStorage;
- using ::com::sun::star::script::XPersistentLibraryContainer;
+ using ::com::sun::star::script::XStorageBasedLibraryContainer;
using ::com::sun::star::uno::UNO_QUERY_THROW;
using ::com::sun::star::uno::Exception;
using ::com::sun::star::document::XStorageBasedDocument;
@@ -168,15 +168,15 @@ namespace basic
*/
static bool impl_getDocumentLibraryContainers_nothrow(
const Reference< XModel >& _rxDocument,
- Reference< XPersistentLibraryContainer >& _out_rxBasicLibraries,
- Reference< XPersistentLibraryContainer >& _out_rxDialogLibraries
+ Reference<XStorageBasedLibraryContainer>& _out_rxBasicLibraries,
+ Reference<XStorageBasedLibraryContainer>& _out_rxDialogLibraries
);
/** initializes the given library containers, which belong to a document
*/
static void impl_initDocLibraryContainers_nothrow(
- const Reference< XPersistentLibraryContainer >& _rxBasicLibraries,
- const Reference< XPersistentLibraryContainer >& _rxDialogLibraries
+ const Reference<XStorageBasedLibraryContainer>& _rxBasicLibraries,
+ const Reference<XStorageBasedLibraryContainer>& _rxDialogLibraries
);
// OEventListenerAdapter overridables
@@ -374,7 +374,7 @@ namespace basic
return m_aStore.find(xNormalized) != m_aStore.end();
}
- void ImplRepository::impl_initDocLibraryContainers_nothrow( const Reference< XPersistentLibraryContainer >& _rxBasicLibraries, const Reference< XPersistentLibraryContainer >& _rxDialogLibraries )
+ void ImplRepository::impl_initDocLibraryContainers_nothrow( const Reference<XStorageBasedLibraryContainer>& _rxBasicLibraries, const Reference<XStorageBasedLibraryContainer>& _rxDialogLibraries )
{
OSL_PRECOND( _rxBasicLibraries.is() && _rxDialogLibraries.is(),
"ImplRepository::impl_initDocLibraryContainers_nothrow: illegal library containers, this will crash!" );
@@ -413,8 +413,8 @@ namespace basic
// the document is not able to provide the storage it is based on.
return false;
}
- Reference< XPersistentLibraryContainer > xBasicLibs;
- Reference< XPersistentLibraryContainer > xDialogLibs;
+ Reference<XStorageBasedLibraryContainer> xBasicLibs;
+ Reference<XStorageBasedLibraryContainer> xDialogLibs;
if ( !impl_getDocumentLibraryContainers_nothrow( _rxDocumentModel, xBasicLibs, xDialogLibs ) )
{
m_aStore.erase(location);
@@ -519,15 +519,15 @@ namespace basic
bool ImplRepository::impl_getDocumentLibraryContainers_nothrow( const Reference< XModel >& _rxDocument,
- Reference< XPersistentLibraryContainer >& _out_rxBasicLibraries, Reference< XPersistentLibraryContainer >& _out_rxDialogLibraries )
+ Reference<XStorageBasedLibraryContainer>& _out_rxBasicLibraries, Reference<XStorageBasedLibraryContainer>& _out_rxDialogLibraries )
{
_out_rxBasicLibraries.clear();
_out_rxDialogLibraries.clear();
try
{
Reference< XEmbeddedScripts > xScripts( _rxDocument, UNO_QUERY_THROW );
- _out_rxBasicLibraries.set( xScripts->getBasicLibraries(), UNO_QUERY_THROW );
- _out_rxDialogLibraries.set( xScripts->getDialogLibraries(), UNO_QUERY_THROW );
+ _out_rxBasicLibraries.set( xScripts->getBasicLibraries() );
+ _out_rxDialogLibraries.set( xScripts->getDialogLibraries() );
}
catch( const Exception& )
{
diff --git a/basic/source/basmgr/basmgr.cxx b/basic/source/basmgr/basmgr.cxx
index 5784697e6f47..3112021319da 100644
--- a/basic/source/basmgr/basmgr.cxx
+++ b/basic/source/basmgr/basmgr.cxx
@@ -510,12 +510,12 @@ static void copyToLibraryContainer( StarBASIC* pBasic, const LibraryContainerInf
}
}
-const uno::Reference< script::XPersistentLibraryContainer >& BasicManager::GetDialogLibraryContainer() const
+const uno::Reference< script::XStorageBasedLibraryContainer >& BasicManager::GetDialogLibraryContainer() const
{
return maContainerInfo.mxDialogCont;
}
-const uno::Reference< script::XPersistentLibraryContainer >& BasicManager::GetScriptLibraryContainer() const
+const uno::Reference< script::XStorageBasedLibraryContainer >& BasicManager::GetScriptLibraryContainer() const
{
return maContainerInfo.mxScriptCont;
}