summaryrefslogtreecommitdiff
path: root/basic/source/sbx/sbxexec.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'basic/source/sbx/sbxexec.cxx')
-rw-r--r--basic/source/sbx/sbxexec.cxx14
1 files changed, 10 insertions, 4 deletions
diff --git a/basic/source/sbx/sbxexec.cxx b/basic/source/sbx/sbxexec.cxx
index 74cf3b2a21b6..3376d977c82f 100644
--- a/basic/source/sbx/sbxexec.cxx
+++ b/basic/source/sbx/sbxexec.cxx
@@ -138,16 +138,20 @@ static SbxVariable* Operand
SbxVariableRef refVar( new SbxVariable );
const sal_Unicode* p = SkipWhitespace( *ppBuf );
if( !bVar && ( aCharClass.isDigit( *p )
- || ( *p == '.' && aCharClass.isDigit( *( p+1 ) ) )
- || *p == '-'
- || *p == '&' ) )
+ || ( *p == '.' && aCharClass.isDigit( *( p+1 ) ) )
+ || *p == '-'
+ || *p == '&' ) )
{
// A number could be scanned in directly!
sal_uInt16 nLen;
- if( !refVar->Scan( rtl::OUString( p ), &nLen ) )
+ if( !refVar->Scan( OUString( p ), &nLen ) )
+ {
refVar.Clear();
+ }
else
+ {
p += nLen;
+ }
}
else if( !bVar && *p == '"' )
{
@@ -168,7 +172,9 @@ static SbxVariable* Operand
refVar->PutString( aString );
}
else
+ {
refVar = QualifiedName( pObj, pGbl, &p, SbxCLASS_DONTCARE );
+ }
*ppBuf = p;
if( refVar.Is() )
refVar->AddRef();