[Libreoffice-commits] core.git: sc/source

Eike Rathke erack at redhat.com
Thu Jun 25 11:21:54 PDT 2015


 sc/source/core/tool/address.cxx |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit c48af2b55a60492565b987ee65d98edc6bd94533
Author: Eike Rathke <erack at redhat.com>
Date:   Thu Jun 25 20:06:47 2015 +0200

    a singleton must be fully parsed to be valid, tdf#44419 related
    
    No trailing characters must be present in 1:1 or A:A full row/column
    references, e.g. 2:2,2 is not valid. The original cause is the lexical
    analyzer that accepted 2,2 as the second part after the range operator
    because ',' is also the group separator here, which needs further
    changes.
    
    Change-Id: Iff354469f7dcb4e0b6fa645c39cc1f8ebad4a6ea

diff --git a/sc/source/core/tool/address.cxx b/sc/source/core/tool/address.cxx
index a8aa966..18087a4 100644
--- a/sc/source/core/tool/address.cxx
+++ b/sc/source/core/tool/address.cxx
@@ -922,7 +922,7 @@ static sal_uInt16 lcl_ScRange_Parse_XL_A1( ScRange& r,
 
         tmp1 = lcl_eatWhiteSpace( tmp1 );
         tmp2 = lcl_a1_get_row( tmp1, &r.aEnd, &nFlags2 );
-        if( !tmp2 )
+        if( !tmp2 || *tmp2 != 0 )   // Must have fully parsed a singleton.
             return 0;
 
         r.aStart.SetCol( 0 ); r.aEnd.SetCol( MAXCOL );
@@ -945,7 +945,7 @@ static sal_uInt16 lcl_ScRange_Parse_XL_A1( ScRange& r,
 
         tmp1 = lcl_eatWhiteSpace( tmp1 );
         tmp2 = lcl_a1_get_col( tmp1, &r.aEnd, &nFlags2 );
-        if( !tmp2 )
+        if( !tmp2 || *tmp2 != 0 )   // Must have fully parsed a singleton.
             return 0;
 
         r.aStart.SetRow( 0 ); r.aEnd.SetRow( MAXROW );


More information about the Libreoffice-commits mailing list