[Libreoffice-commits] core.git: Branch 'libreoffice-4-0-5' - dtrans/source
Herbert Dürr
hdu at apache.org
Sun Aug 4 06:58:06 PDT 2013
dtrans/source/win32/dtobj/FetcList.cxx | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
New commits:
commit f9421b34e6258708d4f1bedc723cdb1d27e78d91
Author: Herbert Dürr <hdu at apache.org>
Date: Tue Jul 16 13:30:18 2013 +0000
#i122752# check iterator in each iteration of CFormatEtcContainer::nextFormatEtc()'s loop
Don't trust nextFormatEtc()'s aNum argument not to mislead the iterator beyond
the container bounds. The comparable loop in CFormatEtcContainer::skipFormatEtc()
already checks the iterator against the container end in each iteration.
(cherry picked from commit a609daa146c5588c6a35c2c145e9573c625ec123)
Signed-off-by: Jan Holesovsky <kendy at suse.cz>
Change-Id: Ie745497491679dfb172d78876c3a3731e153243e
Reviewed-on: https://gerrit.libreoffice.org/5241
Reviewed-by: Petr Mladek <pmladek at suse.cz>
Tested-by: Petr Mladek <pmladek at suse.cz>
Reviewed-on: https://gerrit.libreoffice.org/5242
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/dtrans/source/win32/dtobj/FetcList.cxx b/dtrans/source/win32/dtobj/FetcList.cxx
index 7031dac..8a30409 100644
--- a/dtrans/source/win32/dtobj/FetcList.cxx
+++ b/dtrans/source/win32/dtobj/FetcList.cxx
@@ -132,10 +132,11 @@ sal_uInt32 SAL_CALL CFormatEtcContainer::nextFormatEtc( LPFORMATETC lpFetc,
sal_uInt32 nFetched = 0;
- if ( m_EnumIterator != m_FormatMap.end( ) )
+ for ( sal_uInt32 i = 0; i < aNum; i++, nFetched++, lpFetc++, ++m_EnumIterator )
{
- for ( sal_uInt32 i = 0; i < aNum; i++, nFetched++, lpFetc++, ++m_EnumIterator )
- CopyFormatEtc( lpFetc, *m_EnumIterator );
+ if ( m_EnumIterator == m_FormatMap.end() )
+ break;
+ CopyFormatEtc( lpFetc, *m_EnumIterator );
}
return nFetched;
More information about the Libreoffice-commits
mailing list