summaryrefslogtreecommitdiffstats
path: root/dbaccess
diff options
context:
space:
mode:
authorLionel Elie Mamane <lionel@mamane.lu>2012-09-13 16:24:38 +0200
committerMichael Meeks <michael.meeks@suse.com>2012-09-20 11:09:27 +0100
commit2fca05d5e4dee32feb6f9c9ba5f2c3792b72d5d1 (patch)
tree3e034d81bd225f8548f8a8e8b392228ea7074431 /dbaccess
parentimport values and formulas from lotus-123, fdo#55066 (diff)
downloadcore-2fca05d5e4dee32feb6f9c9ba5f2c3792b72d5d1.tar.gz
core-2fca05d5e4dee32feb6f9c9ba5f2c3792b72d5d1.zip
fdo#37529 clear DataColumns read-only information when we clear DataColumns
Change-Id: I6f3b4f1646df1244d97ae98f56ba054bc26e3314 Reviewed-on: https://gerrit.libreoffice.org/608 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com> Signed-off-by: Miklos Vajna <vmiklos@suse.cz> Signed-off-by: Michael Meeks <michael.meeks@suse.com>
Diffstat (limited to 'dbaccess')
-rw-r--r--dbaccess/source/core/api/RowSet.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/dbaccess/source/core/api/RowSet.cxx b/dbaccess/source/core/api/RowSet.cxx
index afad13c2a387..06a84a827946 100644
--- a/dbaccess/source/core/api/RowSet.cxx
+++ b/dbaccess/source/core/api/RowSet.cxx
@@ -569,6 +569,8 @@ void ORowSet::freeResources( bool _bComplete )
// the columns must be disposed before the querycomposer is disposed because
// their owner can be the composer
TDataColumns().swap(m_aDataColumns);// clear and resize capacity
+ ::std::vector<bool>().swap(m_aReadOnlyDataColumns);
+
m_xColumns = NULL;
if ( m_pColumns )
m_pColumns->disposing();
@@ -1250,6 +1252,7 @@ void ORowSet::impl_setDataColumnsWriteable_throw()
void ORowSet::impl_restoreDataColumnsWriteable_throw()
{
+ assert(m_aDataColumns.size() == m_aReadOnlyDataColumns.size() || m_aReadOnlyDataColumns.size() == 0 );
TDataColumns::iterator aIter = m_aDataColumns.begin();
::std::vector<bool, std::allocator<bool> >::iterator aReadIter = m_aReadOnlyDataColumns.begin();
for(;aReadIter != m_aReadOnlyDataColumns.end();++aIter,++aReadIter)