Kaydet (Commit) e1e1bd19 authored tarafından Noel Grandin's avatar Noel Grandin

loplugin:useuniqueptr in dbaccess

Change-Id: I9b1892f3d453320302f5f82cb964aff5cd9fa643
Reviewed-on: https://gerrit.libreoffice.org/50713Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst f77302d7
...@@ -2018,8 +2018,8 @@ void ORowSet::execute_NoApprove_NoNewConn(ResettableMutexGuard& _rClearForNotifi ...@@ -2018,8 +2018,8 @@ void ORowSet::execute_NoApprove_NoNewConn(ResettableMutexGuard& _rClearForNotifi
else else
{ {
Reference<XDatabaseMetaData> xMeta = m_xActiveConnection->getMetaData(); Reference<XDatabaseMetaData> xMeta = m_xActiveConnection->getMetaData();
m_pColumns = new ORowSetDataColumns(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(), m_pColumns.reset( new ORowSetDataColumns(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(),
aColumns,*this,m_aColumnsMutex,aNames); aColumns,*this,m_aColumnsMutex,aNames) );
} }
} }
else // !m_bCommandFacetsDirty else // !m_bCommandFacetsDirty
...@@ -2837,8 +2837,8 @@ ORowSetClone::ORowSetClone( const Reference<XComponentContext>& _rContext, ORowS ...@@ -2837,8 +2837,8 @@ ORowSetClone::ORowSetClone( const Reference<XComponentContext>& _rContext, ORowS
} }
} }
Reference<XDatabaseMetaData> xMeta = rParent.m_xActiveConnection->getMetaData(); Reference<XDatabaseMetaData> xMeta = rParent.m_xActiveConnection->getMetaData();
m_pColumns = new ORowSetDataColumns(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(), m_pColumns.reset( new ORowSetDataColumns(xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(),
aColumns,*this,m_aMutex,aNames); aColumns,*this,m_aMutex,aNames) );
sal_Int32 const nRT = PropertyAttribute::READONLY | PropertyAttribute::TRANSIENT; sal_Int32 const nRT = PropertyAttribute::READONLY | PropertyAttribute::TRANSIENT;
......
...@@ -107,11 +107,7 @@ ORowSetBase::~ORowSetBase() ...@@ -107,11 +107,7 @@ ORowSetBase::~ORowSetBase()
TDataColumns().swap(m_aDataColumns); TDataColumns().swap(m_aDataColumns);
m_pColumns->acquire(); m_pColumns->acquire();
m_pColumns->disposing(); m_pColumns->disposing();
delete m_pColumns;
m_pColumns = nullptr;
} }
delete m_pEmptyCollection;
} }
// css::lang::XTypeProvider // css::lang::XTypeProvider
...@@ -551,11 +547,11 @@ Reference< XNameAccess > SAL_CALL ORowSetBase::getColumns( ) ...@@ -551,11 +547,11 @@ Reference< XNameAccess > SAL_CALL ORowSetBase::getColumns( )
if(!m_pColumns) if(!m_pColumns)
{ {
if (!m_pEmptyCollection) if (!m_pEmptyCollection)
m_pEmptyCollection = new OEmptyCollection(*m_pMySelf,m_aColumnsMutex); m_pEmptyCollection.reset( new OEmptyCollection(*m_pMySelf,m_aColumnsMutex) );
return m_pEmptyCollection; return m_pEmptyCollection.get();
} }
return m_pColumns; return m_pColumns.get();
} }
// XResultSet // XResultSet
......
...@@ -88,11 +88,11 @@ namespace dbaccess ...@@ -88,11 +88,11 @@ namespace dbaccess
::cppu::OWeakObject* m_pMySelf; // set by derived classes ::cppu::OWeakObject* m_pMySelf; // set by derived classes
ORowSetCache* m_pCache; // the cache is used by the rowset and his clone (shared) ORowSetCache* m_pCache; // the cache is used by the rowset and his clone (shared)
ORowSetDataColumns* m_pColumns; // represent the select columns std::unique_ptr<ORowSetDataColumns> m_pColumns; // represent the select columns
::cppu::OBroadcastHelper& m_rBHelper; // must be set from the derived classes ::cppu::OBroadcastHelper& m_rBHelper; // must be set from the derived classes
// is used when the formatkey for database types is set // is used when the formatkey for database types is set
css::uno::Reference< css::util::XNumberFormatTypes> m_xNumberFormatTypes; css::uno::Reference< css::util::XNumberFormatTypes> m_xNumberFormatTypes;
OEmptyCollection* m_pEmptyCollection; std::unique_ptr<OEmptyCollection> m_pEmptyCollection;
css::uno::Reference< css::uno::XComponentContext> m_aContext; css::uno::Reference< css::uno::XComponentContext> m_aContext;
::connectivity::SQLError m_aErrors; ::connectivity::SQLError m_aErrors;
......
...@@ -52,15 +52,13 @@ OPreparedStatement::OPreparedStatement(const Reference< XConnection > & _xConn, ...@@ -52,15 +52,13 @@ OPreparedStatement::OPreparedStatement(const Reference< XConnection > & _xConn,
m_xAggregateAsParameters.set( m_xAggregateAsSet, UNO_QUERY_THROW ); m_xAggregateAsParameters.set( m_xAggregateAsSet, UNO_QUERY_THROW );
Reference<XDatabaseMetaData> xMeta = _xConn->getMetaData(); Reference<XDatabaseMetaData> xMeta = _xConn->getMetaData();
m_pColumns = new OColumns(*this, m_aMutex, xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(),std::vector< OUString>(), nullptr,nullptr); m_pColumns.reset( new OColumns(*this, m_aMutex, xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(),std::vector< OUString>(), nullptr,nullptr) );
} }
OPreparedStatement::~OPreparedStatement() OPreparedStatement::~OPreparedStatement()
{ {
m_pColumns->acquire(); m_pColumns->acquire();
m_pColumns->disposing(); m_pColumns->disposing();
delete m_pColumns;
} }
// css::lang::XTypeProvider // css::lang::XTypeProvider
...@@ -169,7 +167,7 @@ Reference< css::container::XNameAccess > OPreparedStatement::getColumns() ...@@ -169,7 +167,7 @@ Reference< css::container::XNameAccess > OPreparedStatement::getColumns()
} }
m_pColumns->setInitialized(); m_pColumns->setInitialized();
} }
return m_pColumns; return m_pColumns.get();
} }
// XResultSetMetaDataSupplier // XResultSetMetaDataSupplier
......
...@@ -61,7 +61,7 @@ OResultSet::OResultSet(const css::uno::Reference< css::sdbc::XResultSet >& _xRes ...@@ -61,7 +61,7 @@ OResultSet::OResultSet(const css::uno::Reference< css::sdbc::XResultSet >& _xRes
,m_nResultSetConcurrency(0) ,m_nResultSetConcurrency(0)
,m_bIsBookmarkable(false) ,m_bIsBookmarkable(false)
{ {
m_pColumns = new OColumns(*this, m_aMutex, _bCaseSensitive, std::vector< OUString>(), nullptr,nullptr); m_pColumns.reset( new OColumns(*this, m_aMutex, _bCaseSensitive, std::vector< OUString>(), nullptr,nullptr) );
try try
{ {
...@@ -96,8 +96,6 @@ OResultSet::~OResultSet() ...@@ -96,8 +96,6 @@ OResultSet::~OResultSet()
{ {
m_pColumns->acquire(); m_pColumns->acquire();
m_pColumns->disposing(); m_pColumns->disposing();
delete m_pColumns;
} }
// css::lang::XTypeProvider // css::lang::XTypeProvider
...@@ -346,7 +344,7 @@ Reference< css::container::XNameAccess > OResultSet::getColumns() ...@@ -346,7 +344,7 @@ Reference< css::container::XNameAccess > OResultSet::getColumns()
// are allowed to return duplicate names, but we are required to have // are allowed to return duplicate names, but we are required to have
// unique column names // unique column names
if ( m_pColumns->hasByName( sName ) ) if ( m_pColumns->hasByName( sName ) )
sName = ::dbtools::createUniqueName( m_pColumns, sName ); sName = ::dbtools::createUniqueName( m_pColumns.get(), sName );
m_pColumns->append( sName, pColumn ); m_pColumns->append( sName, pColumn );
} }
...@@ -362,7 +360,7 @@ Reference< css::container::XNameAccess > OResultSet::getColumns() ...@@ -362,7 +360,7 @@ Reference< css::container::XNameAccess > OResultSet::getColumns()
// this might be reasonable // this might be reasonable
try try
{ {
const Reference< XNameAccess > xColNames( static_cast< XNameAccess* >( m_pColumns ), UNO_SET_THROW ); const Reference< XNameAccess > xColNames( static_cast< XNameAccess* >( m_pColumns.get() ), UNO_SET_THROW );
const Sequence< OUString > aNames( xColNames->getElementNames() ); const Sequence< OUString > aNames( xColNames->getElementNames() );
SAL_WARN_IF( aNames.getLength() != nColCount, "dbaccess", SAL_WARN_IF( aNames.getLength() != nColCount, "dbaccess",
"OResultSet::getColumns: invalid column count!" ); "OResultSet::getColumns: invalid column count!" );
...@@ -381,7 +379,7 @@ Reference< css::container::XNameAccess > OResultSet::getColumns() ...@@ -381,7 +379,7 @@ Reference< css::container::XNameAccess > OResultSet::getColumns()
} }
#endif #endif
} }
return m_pColumns; return m_pColumns.get();
} }
// css::sdbc::XRow // css::sdbc::XRow
......
...@@ -71,7 +71,7 @@ namespace dbaccess ...@@ -71,7 +71,7 @@ namespace dbaccess
css::uno::Reference< css::sdbc::XRowUpdate > m_xDelegatorRowUpdate; css::uno::Reference< css::sdbc::XRowUpdate > m_xDelegatorRowUpdate;
::dbtools::WarningsContainer m_aWarnings; ::dbtools::WarningsContainer m_aWarnings;
OColumns* m_pColumns; std::unique_ptr<OColumns> m_pColumns;
sal_Int32 m_nResultSetType; sal_Int32 m_nResultSetType;
sal_Int32 m_nResultSetConcurrency; sal_Int32 m_nResultSetConcurrency;
bool m_bIsBookmarkable : 1; bool m_bIsBookmarkable : 1;
......
...@@ -93,8 +93,6 @@ OInterceptor::OInterceptor( ODocumentDefinition* _pContentHolder ) ...@@ -93,8 +93,6 @@ OInterceptor::OInterceptor( ODocumentDefinition* _pContentHolder )
OInterceptor::~OInterceptor() OInterceptor::~OInterceptor()
{ {
delete m_pDisposeEventListeners;
delete m_pStatCL;
} }
struct DispatchHelper struct DispatchHelper
...@@ -220,7 +218,7 @@ void SAL_CALL OInterceptor::addStatusListener( ...@@ -220,7 +218,7 @@ void SAL_CALL OInterceptor::addStatusListener(
{ {
osl::MutexGuard aGuard(m_aMutex); osl::MutexGuard aGuard(m_aMutex);
if(!m_pStatCL) if(!m_pStatCL)
m_pStatCL = new PropertyChangeListenerContainer(m_aMutex); m_pStatCL.reset( new PropertyChangeListenerContainer(m_aMutex) );
} }
m_pStatCL->addInterface(URL.Complete,Control); m_pStatCL->addInterface(URL.Complete,Control);
...@@ -237,7 +235,7 @@ void SAL_CALL OInterceptor::addStatusListener( ...@@ -237,7 +235,7 @@ void SAL_CALL OInterceptor::addStatusListener(
{ {
osl::MutexGuard aGuard(m_aMutex); osl::MutexGuard aGuard(m_aMutex);
if(!m_pStatCL) if(!m_pStatCL)
m_pStatCL = new PropertyChangeListenerContainer(m_aMutex); m_pStatCL.reset( new PropertyChangeListenerContainer(m_aMutex) );
} }
m_pStatCL->addInterface(URL.Complete,Control); m_pStatCL->addInterface(URL.Complete,Control);
...@@ -261,7 +259,7 @@ void SAL_CALL OInterceptor::addStatusListener( ...@@ -261,7 +259,7 @@ void SAL_CALL OInterceptor::addStatusListener(
{ {
osl::MutexGuard aGuard(m_aMutex); osl::MutexGuard aGuard(m_aMutex);
if(!m_pStatCL) if(!m_pStatCL)
m_pStatCL = new PropertyChangeListenerContainer(m_aMutex); m_pStatCL.reset( new PropertyChangeListenerContainer(m_aMutex) );
} }
m_pStatCL->addInterface(URL.Complete,Control); m_pStatCL->addInterface(URL.Complete,Control);
......
...@@ -104,8 +104,8 @@ private: ...@@ -104,8 +104,8 @@ private:
css::uno::Sequence< OUString > m_aInterceptedURL; css::uno::Sequence< OUString > m_aInterceptedURL;
comphelper::OInterfaceContainerHelper2* m_pDisposeEventListeners; std::unique_ptr<comphelper::OInterfaceContainerHelper2> m_pDisposeEventListeners;
PropertyChangeListenerContainer* m_pStatCL; std::unique_ptr<PropertyChangeListenerContainer> m_pStatCL;
}; };
} // namespace dbaccess } // namespace dbaccess
......
...@@ -40,7 +40,7 @@ namespace dbaccess ...@@ -40,7 +40,7 @@ namespace dbaccess
public css::lang::XServiceInfo public css::lang::XServiceInfo
{ {
protected: protected:
OColumns* m_pColumns; std::unique_ptr<OColumns> m_pColumns;
css::uno::Reference< css::sdbc::XParameters > m_xAggregateAsParameters; css::uno::Reference< css::sdbc::XParameters > m_xAggregateAsParameters;
public: public:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment