summaryrefslogtreecommitdiffstats
path: root/dbaccess/source/ui/misc/WCPage.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'dbaccess/source/ui/misc/WCPage.cxx')
-rw-r--r--dbaccess/source/ui/misc/WCPage.cxx15
1 files changed, 8 insertions, 7 deletions
diff --git a/dbaccess/source/ui/misc/WCPage.cxx b/dbaccess/source/ui/misc/WCPage.cxx
index db79ea254e0f..0d1a62abbab3 100644
--- a/dbaccess/source/ui/misc/WCPage.cxx
+++ b/dbaccess/source/ui/misc/WCPage.cxx
@@ -274,18 +274,18 @@ bool OCopyTable::checkAppendData()
ObjectCopySource aTableCopySource( m_pParent->m_xDestConnection, xTable );
m_pParent->loadData( aTableCopySource, m_pParent->m_vDestColumns, m_pParent->m_aDestVec );
const ODatabaseExport::TColumnVector& rDestColumns = m_pParent->getDestVector();
- ODatabaseExport::TColumnVector::const_iterator aDestIter = rDestColumns.begin();
- ODatabaseExport::TColumnVector::const_iterator aDestEnd = rDestColumns.end();
- const sal_uInt32 nDestSize = rDestColumns.size();
+ const sal_uInt32 nMinSrcDestSize = std::min<sal_uInt32>(nSrcSize, rDestColumns.size());
sal_uInt32 i = 0;
- for(sal_Int32 nPos = 1;aDestIter != aDestEnd && i < nDestSize && i < nSrcSize;++aDestIter,++nPos,++i)
+ for (auto const& column : rDestColumns)
{
+ if (i >= nMinSrcDestSize)
+ break;
bool bNotConvert = true;
- m_pParent->m_vColumnPositions[i] = ODatabaseExport::TPositions::value_type(nPos,nPos);
- TOTypeInfoSP pTypeInfo = m_pParent->convertType((*aDestIter)->second->getSpecialTypeInfo(),bNotConvert);
+ m_pParent->m_vColumnPositions[i] = ODatabaseExport::TPositions::value_type(i+1,i+1);
+ TOTypeInfoSP pTypeInfo = m_pParent->convertType(column->second->getSpecialTypeInfo(),bNotConvert);
if ( !bNotConvert )
{
- m_pParent->showColumnTypeNotSupported((*aDestIter)->first);
+ m_pParent->showColumnTypeNotSupported(column->first);
return false;
}
@@ -293,6 +293,7 @@ bool OCopyTable::checkAppendData()
m_pParent->m_vColumnTypes[i] = pTypeInfo->nType;
else
m_pParent->m_vColumnTypes[i] = DataType::VARCHAR;
+ ++i;
}
}