[Libreoffice-commits] .: starmath/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Tue Dec 18 06:50:00 PST 2012
starmath/source/ooxmlimport.cxx | 8 ++++----
starmath/source/ooxmlimport.hxx | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
New commits:
commit 8e5fe8dc9229043d18f581f2c56d58daff2bf87a
Author: LuboÅ¡ LuÅák <l.lunak at suse.cz>
Date: Tue Dec 18 15:48:15 2012 +0100
avoid infinite loop when parsing malformed ooxml math (fdo#57886)
Change-Id: I2f66bc335795a9e84f532fb28d3585aed783ebd6
diff --git a/starmath/source/ooxmlimport.cxx b/starmath/source/ooxmlimport.cxx
index c83fc9b..0b1beda 100644
--- a/starmath/source/ooxmlimport.cxx
+++ b/starmath/source/ooxmlimport.cxx
@@ -69,7 +69,7 @@ OUString SmOoxmlImport::handleStream()
{
// strictly speaking, it is not OMathArg here, but currently supported
// functionality is the same like OMathArg, in the future this may need improving
- OUString item = readOMathArg();
+ OUString item = readOMathArg( M_TOKEN( oMath ));
if( item.isEmpty())
continue;
if( !ret.isEmpty())
@@ -87,10 +87,10 @@ OUString SmOoxmlImport::handleStream()
return ret;
}
-OUString SmOoxmlImport::readOMathArg()
+OUString SmOoxmlImport::readOMathArg( int stoptoken )
{
OUString ret;
- while( !stream.atEnd() && stream.currentToken() != CLOSING( stream.currentToken()))
+ while( !stream.atEnd() && stream.currentToken() != CLOSING( stoptoken ))
{
if( !ret.isEmpty())
ret += " ";
@@ -164,7 +164,7 @@ OUString SmOoxmlImport::readOMathArg()
OUString SmOoxmlImport::readOMathArgInElement( int token )
{
stream.ensureOpeningTag( token );
- OUString ret = readOMathArg();
+ OUString ret = readOMathArg( token );
stream.ensureClosingTag( token );
return ret;
}
diff --git a/starmath/source/ooxmlimport.hxx b/starmath/source/ooxmlimport.hxx
index bdb8348..6e4835d 100644
--- a/starmath/source/ooxmlimport.hxx
+++ b/starmath/source/ooxmlimport.hxx
@@ -63,7 +63,7 @@ private:
OUString handleSsub();
OUString handleSsubsup();
OUString handleSsup();
- OUString readOMathArg();
+ OUString readOMathArg( int stoptoken );
OUString readOMathArgInElement( int token );
oox::formulaimport::XmlStream& stream;
};
More information about the Libreoffice-commits
mailing list