Kaydet (Commit) a2e4d432 authored tarafından Michael Stahl's avatar Michael Stahl

connectivity: firebird: use Reference for Connection where appropriate

ODatabaseMetaData and OResultSetMetaData apparently have life-times
independent of their creating object, so they need to own the
Connection too.

Change-Id: Idee28a96e318ca4b3d804084d609737a7fc75862
üst 137131b1
...@@ -46,7 +46,8 @@ using namespace com::sun::star::sdbc; ...@@ -46,7 +46,8 @@ using namespace com::sun::star::sdbc;
ODatabaseMetaData::ODatabaseMetaData(Connection* _pCon) ODatabaseMetaData::ODatabaseMetaData(Connection* _pCon)
: m_pConnection(_pCon) : m_pConnection(_pCon)
{ {
OSL_ENSURE(m_pConnection,"ODatabaseMetaData::ODatabaseMetaData: No connection set!"); SAL_WARN_IF(!m_pConnection.is(), "connectivity.firebird",
"ODatabaseMetaData::ODatabaseMetaData: No connection set!");
} }
ODatabaseMetaData::~ODatabaseMetaData() ODatabaseMetaData::~ODatabaseMetaData()
...@@ -832,7 +833,7 @@ sal_Bool SAL_CALL ODatabaseMetaData::supportsBatchUpdates() ...@@ -832,7 +833,7 @@ sal_Bool SAL_CALL ODatabaseMetaData::supportsBatchUpdates()
uno::Reference< XConnection > SAL_CALL ODatabaseMetaData::getConnection() uno::Reference< XConnection > SAL_CALL ODatabaseMetaData::getConnection()
throw(SQLException, RuntimeException, std::exception) throw(SQLException, RuntimeException, std::exception)
{ {
return uno::Reference< XConnection >(m_pConnection); return uno::Reference<XConnection>(m_pConnection.get());
} }
// here follow all methods which return a resultset // here follow all methods which return a resultset
......
...@@ -37,11 +37,9 @@ namespace connectivity ...@@ -37,11 +37,9 @@ namespace connectivity
class ODatabaseMetaData : public ODatabaseMetaData_BASE class ODatabaseMetaData : public ODatabaseMetaData_BASE
{ {
Connection* m_pConnection; ::rtl::Reference<Connection> m_pConnection;
public: public:
inline Connection* getOwnConnection() const { return m_pConnection; }
ODatabaseMetaData(Connection* _pCon); ODatabaseMetaData(Connection* _pCon);
virtual ~ODatabaseMetaData(); virtual ~ODatabaseMetaData();
......
...@@ -38,7 +38,7 @@ namespace connectivity ...@@ -38,7 +38,7 @@ namespace connectivity
class OResultSetMetaData : public OResultSetMetaData_BASE class OResultSetMetaData : public OResultSetMetaData_BASE
{ {
protected: protected:
Connection* m_pConnection; ::rtl::Reference<Connection> m_pConnection;
XSQLDA* m_pSqlda; XSQLDA* m_pSqlda;
virtual ~OResultSetMetaData(); virtual ~OResultSetMetaData();
......
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