File r1859-Fix-regression-from-r1840.patch of Package podofo.23799

------------------------------------------------------------------------
r1859 | aja_ | 2017-09-03 17:37:17 +0200 (dom, 03 sep 2017) | 2 lines

Fix regression from r1840: Make PdfParser::m_offsets resize only to grow


Index: src/base/PdfParser.cpp
===================================================================
--- src/base/PdfParser.cpp	(revision 1858)
+++ src/base/PdfParser.cpp	(revision 1859)
@@ -781,16 +781,19 @@
             PODOFO_RAISE_ERROR_INFO( ePdfError_ValueOutOfRange,
                 "xref subsection's given entry numbers together too large" );
     
-        try {
+        if( nFirstObject + nNumObjects > m_nNumObjects )
+        {
+            try {
 #ifdef _WIN32
-		m_nNumObjects = static_cast<long>(nFirstObject + nNumObjects);
-		m_offsets.resize(static_cast<long>(nFirstObject+nNumObjects));
+                m_nNumObjects = static_cast<long>(nFirstObject + nNumObjects);
+                m_offsets.resize(static_cast<long>(nFirstObject+nNumObjects));
 #else
-		m_nNumObjects = nFirstObject + nNumObjects;
-		m_offsets.resize(nFirstObject+nNumObjects);
+                m_nNumObjects = nFirstObject + nNumObjects;
+                m_offsets.resize(nFirstObject+nNumObjects);
 #endif // _WIN32
-        } catch (std::bad_alloc &ex) {
-            PODOFO_RAISE_ERROR( ePdfError_OutOfMemory );
+            } catch (std::bad_alloc &) {
+                PODOFO_RAISE_ERROR( ePdfError_OutOfMemory );
+            }
         }
     }
     else

------------------------------------------------------------------------
openSUSE Build Service is sponsored by