Update of /cvsroot/libwpg/libwpg/src/lib
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3479/src/lib
Modified Files:
WPG1Parser.cpp WPG2Parser.cpp
Log Message:
some more sanity checks due to sum1's tearing-down work. Thanks, dudie
Index: WPG2Parser.cpp
===================================================================
RCS file: /cvsroot/libwpg/libwpg/src/lib/WPG2Parser.cpp,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -d -r1.80 -r1.81
--- WPG2Parser.cpp 24 Jul 2008 13:52:24 -0000 1.80
+++ WPG2Parser.cpp 13 Aug 2008 07:45:43 -0000 1.81
@@ -1451,7 +1451,7 @@
// plain data, uncompression
if(compression_format==0)
- for(unsigned ii=0; ii < tmpBufferSize && m_input->tell() <= m_recordEnd; ii++)
+ for(unsigned ii=0; ii < tmpBufferSize && !m_input->atEOS() && m_input->tell() <= m_recordEnd; ii++)
buffer.push_back( readU8() );
// run-length encoding
else if(compression_format==1)
@@ -1859,7 +1859,7 @@
WPG_DEBUG_MSG(("Image Object Mime Type : %s\n", binaryData.mimeType.cstr()));
- while (m_input->tell() <= m_recordEnd)
+ while (!m_input->atEOS() && m_input->tell() <= m_recordEnd)
binaryData.append((char)readU8());
WPG_DEBUG_MSG((" Image Object Size : %li\n", (unsigned long)binaryData.size()));
Index: WPG1Parser.cpp
===================================================================
RCS file: /cvsroot/libwpg/libwpg/src/lib/WPG1Parser.cpp,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- WPG1Parser.cpp 24 Jul 2008 15:35:55 -0000 1.46
+++ WPG1Parser.cpp 13 Aug 2008 07:45:43 -0000 1.47
@@ -785,7 +785,7 @@
data.rect.y2 = (double)m_height/1200.0 - (double)y2/72.0;
data.clear();
- while (m_input->tell() <= m_recordEnd)
+ while (!m_input->atEOS() && m_input->tell() <= m_recordEnd)
data.append((char)readU8());
data.mimeType = "application/x-postscript";
if (data.size())
@@ -834,7 +834,7 @@
m_input->seek(48, WPX_SEEK_CUR);
data.clear();
- while (m_input->tell() <= m_recordEnd)
+ while (!m_input->atEOS() && m_input->tell() <= m_recordEnd)
data.append((char)readU8());
if (data.size())
m_painter->drawImageObject(data);
|