Just pushed this to libreoffice-3-4

        It seems that 'Seek' does an implicit bounds check, returning a NULL
for OOB that we need to replicate when doing this conversion :-)

        HTH,

                Michael.

>From 128477a3cba4a8985432ed342ee2d3c654e1e119 Mon Sep 17 00:00:00 2001
From: Michael Meeks <michael.me...@novell.com>
Date: Thu, 5 May 2011 15:00:31 +0100
Subject: [PATCH] fix fdo#36863 - math crasher on redraw, introduced by Seek 
difference

---
 starmath/source/parse.cxx |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/starmath/source/parse.cxx b/starmath/source/parse.cxx
index ee27781..5d7fc2b 100644
--- a/starmath/source/parse.cxx
+++ b/starmath/source/parse.cxx
@@ -2513,11 +2513,15 @@ const SmErrorDesc *SmParser::PrevError()
 }
 
 
-const SmErrorDesc  *SmParser::GetError(size_t i)
+const SmErrorDesc *SmParser::GetError(size_t i)
 {
-    return ( i < m_aErrDescList.size() )
-               ? m_aErrDescList[ i ]
-               : m_aErrDescList[ m_nCurError ];
+    if ( i < m_aErrDescList.size() )
+        return m_aErrDescList[ i ];
+
+    if ( (size_t)m_nCurError < m_aErrDescList.size() )
+        return m_aErrDescList[ m_nCurError ];
+
+    return NULL;
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
-- 
1.7.3.4


-- 
 michael.me...@novell.com  <><, Pseudo Engineer, itinerant idiot

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to