diff options
author | John LeMoyne Castle <jlc@mail2lee.com> | 2010-12-21 15:47:53 +0000 |
---|---|---|
committer | Noel Power <noel.power@novell.com> | 2010-12-21 15:47:53 +0000 |
commit | c631cf94e468d6f5ced5cacda3600c683c44dca2 (patch) | |
tree | b8824cae67c3b143dc70ba52f04797a87d09fb85 /basic/source/runtime/methods1.cxx | |
parent | 9cc9b6dccbdecfe2877a5735672d7f9bb38d0235 (diff) |
68bit currency enhancement
Diffstat (limited to 'basic/source/runtime/methods1.cxx')
-rw-r--r-- | basic/source/runtime/methods1.cxx | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/basic/source/runtime/methods1.cxx b/basic/source/runtime/methods1.cxx index b922b556bd2c..4c4cecb08b04 100644 --- a/basic/source/runtime/methods1.cxx +++ b/basic/source/runtime/methods1.cxx @@ -158,12 +158,12 @@ RTLFUNC(CByte) // JSM rPar.Get(0)->PutByte(nByte); } -RTLFUNC(CCur) // JSM +RTLFUNC(CCur) { (void)pBasic; (void)bWrite; - SbxINT64 nCur; + sal_Int64 nCur = 0; if ( rPar.Count() == 2 ) { SbxVariable *pSbxVariable = rPar.Get(1); @@ -175,7 +175,7 @@ RTLFUNC(CCur) // JSM rPar.Get(0)->PutCurrency( nCur ); } -RTLFUNC(CDec) // JSM +RTLFUNC(CDec) { (void)pBasic; (void)bWrite; @@ -881,13 +881,16 @@ BOOL lcl_WriteSbxVariable( const SbxVariable& rVar, SvStream* pStrm, case SbxLONG: case SbxULONG: - case SbxLONG64: - case SbxULONG64: if( bIsVariant ) *pStrm << (USHORT)SbxLONG; // VarType Id *pStrm << rVar.GetLong(); break; - + case SbxSALINT64: + case SbxSALUINT64: + if( bIsVariant ) + *pStrm << (USHORT)SbxSALINT64; // VarType Id + *pStrm << (sal_uInt64)rVar.GetInt64(); + break; case SbxSINGLE: if( bIsVariant ) *pStrm << (USHORT)eType; // VarType Id @@ -983,15 +986,20 @@ BOOL lcl_ReadSbxVariable( SbxVariable& rVar, SvStream* pStrm, case SbxLONG: case SbxULONG: - case SbxLONG64: - case SbxULONG64: { INT32 aInt; *pStrm >> aInt; rVar.PutLong( aInt ); } break; - + case SbxSALINT64: + case SbxSALUINT64: + { + sal_uInt32 aInt; + *pStrm >> aInt; + rVar.PutInt64( (sal_Int64)aInt ); + } + break; case SbxSINGLE: { float nS; @@ -1354,8 +1362,8 @@ RTLFUNC(TypeLen) case SbxDOUBLE: case SbxCURRENCY: case SbxDATE: - case SbxLONG64: - case SbxULONG64: + case SbxSALINT64: + case SbxSALUINT64: nLen = 8; break; |