diff options
-rw-r--r-- | connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.cxx | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.cxx b/connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.cxx index 6e9079c6271b..eed6e97f2ff2 100644 --- a/connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.cxx +++ b/connectivity/source/drivers/mozab/mozillasrc/MQueryHelper.cxx @@ -222,28 +222,24 @@ MQueryHelper::getByIndex( sal_uInt32 nRow ) } do { - // Obtain the Mutex - don't use a guard as we want to be able to release - // and acquire again... - m_aMutex.acquire(); + ::osl::ClearableMutexGuard aGuard( m_aMutex ); if ( nRow > m_aResults.size() ) { if ( m_bQueryComplete ) { m_bAtEnd = sal_True; - m_aMutex.release(); return( NULL ); } else { clearResultOrComplete(); - m_aMutex.release(); + aGuard.clear(); if ( !waitForResultOrComplete( ) ) return( NULL ); } } else { - m_aMutex.release(); return( m_aResults[ nRow -1 ] ); } } while ( sal_True ); |