From 2fca05d5e4dee32feb6f9c9ba5f2c3792b72d5d1 Mon Sep 17 00:00:00 2001 From: Lionel Elie Mamane Date: Thu, 13 Sep 2012 16:24:38 +0200 Subject: 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 Tested-by: Michael Stahl Signed-off-by: Miklos Vajna Signed-off-by: Michael Meeks --- dbaccess/source/core/api/RowSet.cxx | 3 +++ 1 file changed, 3 insertions(+) (limited to 'dbaccess') 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().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 >::iterator aReadIter = m_aReadOnlyDataColumns.begin(); for(;aReadIter != m_aReadOnlyDataColumns.end();++aIter,++aReadIter) -- cgit