summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Elie Mamane <lionel@mamane.lu>2014-01-06 16:40:59 +0100
committerLionel Elie Mamane <lionel@mamane.lu>2014-01-06 17:11:00 +0100
commit01329972d89ddfd30d197b7947c571fdb83b0cf8 (patch)
treee08579e2a9008680f7150686009c6ca1b32b1e21
parent0183d4cf7e3311625d3544395229b5ccd0f7bc4d (diff)
fdo#37167 create statement before execute/wasNull/getBoolean
This populates "object" member variable. The "createStatement" calls were removed in: commit b9392a36645d8632b97ad79240f483b3a1683b61 Author: Ivo Hinkelmann <ihi@openoffice.org> Date: Thu Apr 23 10:42:05 2009 +0000 CWS-TOOLING: integrate CWS dbaperf1 This was most probably in error since the call is not removed from the other modified member functions in this commit and/or failed to aaccount for the scenario of no parameter (and thus no setXXX call before execute). Change-Id: Ic0e7b7b64ea496791f32c1416aa7d4416f909616
-rw-r--r--connectivity/source/drivers/jdbc/CallableStatement.cxx4
-rw-r--r--connectivity/source/drivers/jdbc/PreparedStatement.cxx5
2 files changed, 9 insertions, 0 deletions
diff --git a/connectivity/source/drivers/jdbc/CallableStatement.cxx b/connectivity/source/drivers/jdbc/CallableStatement.cxx
index 7ab349f3e1fa..50cce64578f8 100644
--- a/connectivity/source/drivers/jdbc/CallableStatement.cxx
+++ b/connectivity/source/drivers/jdbc/CallableStatement.cxx
@@ -69,12 +69,16 @@ Any SAL_CALL java_sql_CallableStatement::queryInterface( const Type & rType ) th
// -------------------------------------------------------------------------
sal_Bool SAL_CALL java_sql_CallableStatement::wasNull( ) throw(starsdbc::SQLException, RuntimeException)
{
+ SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!");
+ createStatement(t.pEnv);
static jmethodID mID(NULL);
return callBooleanMethod( "wasNull", mID );
}
sal_Bool SAL_CALL java_sql_CallableStatement::getBoolean( sal_Int32 columnIndex ) throw(starsdbc::SQLException, RuntimeException)
{
+ SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!");
+ createStatement(t.pEnv);
static jmethodID mID(NULL);
return callBooleanMethodWithIntArg( "getBoolean", mID,columnIndex );
}
diff --git a/connectivity/source/drivers/jdbc/PreparedStatement.cxx b/connectivity/source/drivers/jdbc/PreparedStatement.cxx
index 59a4b29b46f3..774d13001655 100644
--- a/connectivity/source/drivers/jdbc/PreparedStatement.cxx
+++ b/connectivity/source/drivers/jdbc/PreparedStatement.cxx
@@ -96,6 +96,8 @@ sal_Bool SAL_CALL java_sql_PreparedStatement::execute( ) throw(::com::sun::star
::osl::MutexGuard aGuard( m_aMutex );
checkDisposed(java_sql_Statement_BASE::rBHelper.bDisposed);
+ SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!");
+ createStatement(t.pEnv);
static jmethodID mID(NULL);
return callBooleanMethod( "execute", mID );
}
@@ -106,6 +108,9 @@ sal_Int32 SAL_CALL java_sql_PreparedStatement::executeUpdate( ) throw(::com::su
::osl::MutexGuard aGuard( m_aMutex );
checkDisposed(java_sql_Statement_BASE::rBHelper.bDisposed);
m_aLogger.log( LogLevel::FINE, STR_LOG_EXECUTING_PREPARED_UPDATE );
+
+ SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!");
+ createStatement(t.pEnv);
static jmethodID mID(NULL);
return callIntMethod("executeUpdate",mID);
}