summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2005-09-23 10:41:49 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2005-09-23 10:41:49 +0000
commitd0dbb7bd114e82c39121266022b60f037e91ec6a (patch)
tree824d836ba4aa2e9e0e8af3b993cbbe152b9b46c8 /connectivity
parentca60450b8a94d97d14897ef9239957431935ebdc (diff)
INTEGRATION: CWS dba201b (1.58.90); FILE MERGED
2005/09/21 09:03:21 oj 1.58.90.2: RESYNC: (1.58-1.59); FILE MERGED 2005/07/11 13:56:42 fs 1.58.90.1: merging CWS dba201a into dba201b
Diffstat (limited to 'connectivity')
-rw-r--r--connectivity/source/drivers/odbc/OResultSet.cxx23
1 files changed, 13 insertions, 10 deletions
diff --git a/connectivity/source/drivers/odbc/OResultSet.cxx b/connectivity/source/drivers/odbc/OResultSet.cxx
index af968e4fbd5e..226bc361ccb2 100644
--- a/connectivity/source/drivers/odbc/OResultSet.cxx
+++ b/connectivity/source/drivers/odbc/OResultSet.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: OResultSet.cxx,v $
*
- * $Revision: 1.59 $
+ * $Revision: 1.60 $
*
- * last change: $Author: rt $ $Date: 2005-09-08 06:35:25 $
+ * last change: $Author: hr $ $Date: 2005-09-23 11:41:49 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -1167,14 +1167,17 @@ sal_Bool SAL_CALL OResultSet::moveToBookmark( const Any& bookmark ) throw( SQLE
{
SQLRETURN nReturn = N3SQLSetStmtAttr(m_aStatementHandle,SQL_ATTR_FETCH_BOOKMARK_PTR,m_aBookmark.getArray(),SQL_IS_POINTER); // SQL_LEN_BINARY_ATTR(aBookmark.getLength())
- m_nCurrentFetchState = N3SQLFetchScroll(m_aStatementHandle,SQL_FETCH_BOOKMARK,0);
- OTools::ThrowException(m_pStatement->getOwnConnection(),m_nCurrentFetchState,m_aStatementHandle,SQL_HANDLE_STMT,*this);
- TBookmarkPosMap::iterator aFind = m_aPosToBookmarks.find(m_aBookmark);
- if(aFind != m_aPosToBookmarks.end())
- m_nRowPos = aFind->second;
- else
- m_nRowPos = -1;
- return m_nCurrentFetchState == SQL_SUCCESS || m_nCurrentFetchState == SQL_SUCCESS_WITH_INFO;
+ if ( SQL_INVALID_HANDLE != nReturn && SQL_ERROR != nReturn )
+ {
+ m_nCurrentFetchState = N3SQLFetchScroll(m_aStatementHandle,SQL_FETCH_BOOKMARK,0);
+ OTools::ThrowException(m_pStatement->getOwnConnection(),m_nCurrentFetchState,m_aStatementHandle,SQL_HANDLE_STMT,*this);
+ TBookmarkPosMap::iterator aFind = m_aPosToBookmarks.find(m_aBookmark);
+ if(aFind != m_aPosToBookmarks.end())
+ m_nRowPos = aFind->second;
+ else
+ m_nRowPos = -1;
+ return m_nCurrentFetchState == SQL_SUCCESS || m_nCurrentFetchState == SQL_SUCCESS_WITH_INFO;
+ }
}
return sal_False;
}