summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
authorLionel Elie Mamane <lionel@mamane.lu>2018-12-18 22:12:06 +0100
committerLionel Elie Mamane <lionel@mamane.lu>2018-12-18 22:18:12 +0100
commitaa41e17e809a5398974b3b5f53a41c6632df284c (patch)
treee5291a9a32badcd276e5d636e8fa320b8723b027 /connectivity
parenta9d4f2bebda3380a3b6843f9df1204c9b062b3a8 (diff)
postgresql: any execute should close previous ResultSet
not only executeQuery. Change-Id: I2ee72078c48f622484dba46436f53990a45da364
Diffstat (limited to 'connectivity')
-rw-r--r--connectivity/source/drivers/postgresql/pq_preparedstatement.cxx8
-rw-r--r--connectivity/source/drivers/postgresql/pq_statement.cxx8
2 files changed, 8 insertions, 8 deletions
diff --git a/connectivity/source/drivers/postgresql/pq_preparedstatement.cxx b/connectivity/source/drivers/postgresql/pq_preparedstatement.cxx
index a976d7e3dfc4..3f721bf7f1ab 100644
--- a/connectivity/source/drivers/postgresql/pq_preparedstatement.cxx
+++ b/connectivity/source/drivers/postgresql/pq_preparedstatement.cxx
@@ -278,10 +278,6 @@ void PreparedStatement::raiseSQLException( const char * errorMsg )
Reference< XResultSet > PreparedStatement::executeQuery( )
{
- Reference< XCloseable > lastResultSet = m_lastResultset;
- if( lastResultSet.is() )
- lastResultSet->close();
-
if( ! execute( ) )
{
raiseSQLException( "not a query" );
@@ -357,6 +353,10 @@ sal_Bool PreparedStatement::execute( )
m_executedStatement = buf.makeStringAndClear();
+ Reference< XCloseable > lastResultSet = m_lastResultset;
+ if( lastResultSet.is() )
+ lastResultSet->close();
+
m_lastResultset.clear();
m_lastTableInserted.clear();
diff --git a/connectivity/source/drivers/postgresql/pq_statement.cxx b/connectivity/source/drivers/postgresql/pq_statement.cxx
index a95a48674607..471bded3330c 100644
--- a/connectivity/source/drivers/postgresql/pq_statement.cxx
+++ b/connectivity/source/drivers/postgresql/pq_statement.cxx
@@ -235,10 +235,6 @@ void Statement::raiseSQLException(
Reference< XResultSet > Statement::executeQuery(const OUString& sql )
{
- Reference< XCloseable > lastResultSetHolder = m_lastResultset;
- if( lastResultSetHolder.is() )
- lastResultSetHolder->close();
-
if( ! execute( sql ) )
{
raiseSQLException( sql, "not a query" );
@@ -805,6 +801,10 @@ sal_Bool Statement::execute( const OUString& sql )
checkClosed();
OString cmd = OUStringToOString( sql, m_pSettings );
+ Reference< XCloseable > lastResultSetHolder = m_lastResultset;
+ if( lastResultSetHolder.is() )
+ lastResultSetHolder->close();
+
m_lastResultset.clear();
m_lastTableInserted.clear();