summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-06-17 12:09:27 +0100
committerCaolán McNamara <caolanm@redhat.com>2014-06-17 13:59:39 +0100
commitd28b51b92f96b1c2b04b0d69c5256d669d32afe7 (patch)
tree63a99efc07d9bac88b62144df7057ae151d77e65 /sc
parentd688fbdd271445a95a2a97938b99578fa3130f24 (diff)
coverity#706041 Unintended sign extension
also coverity#706042 coverity#706045 coverity#706046 Change-Id: I173603a638ef3e2d9ca358a4d4ba111910fac05f
Diffstat (limited to 'sc')
-rw-r--r--sc/source/filter/excel/excform.cxx11
-rw-r--r--sc/source/filter/excel/excform8.cxx9
2 files changed, 11 insertions, 9 deletions
diff --git a/sc/source/filter/excel/excform.cxx b/sc/source/filter/excel/excform.cxx
index 41fdbe4eb52c..ee3d1eb0c2ad 100644
--- a/sc/source/filter/excel/excform.cxx
+++ b/sc/source/filter/excel/excform.cxx
@@ -383,8 +383,8 @@ ConvErr ExcelToSc::Convert( const ScTokenArray*& pErgebnis, XclImpStream& aIn, s
break;
case 0x19: // Special Attribute [327 279]
{
- sal_uInt16 nData, nFakt;
- sal_uInt8 nOpt;
+ sal_uInt16 nData(0), nFakt(0);
+ sal_uInt8 nOpt(0);
aIn >> nOpt;
@@ -400,9 +400,10 @@ ConvErr ExcelToSc::Convert( const ScTokenArray*& pErgebnis, XclImpStream& aIn, s
}
if( nOpt & 0x04 )
- {// nFakt -> skip bytes or words AttrChoose
- nData++;
- aIn.Ignore( nData * nFakt );
+ {
+ // nFakt -> skip bytes or words AttrChoose
+ ++nData;
+ aIn.Ignore(static_cast<sal_Size>(nData) * nFakt);
}
else if( nOpt & 0x10 ) // AttrSum
DoMulArgs( ocSum, 1 );
diff --git a/sc/source/filter/excel/excform8.cxx b/sc/source/filter/excel/excform8.cxx
index 1653ea9f1868..09652d231a9f 100644
--- a/sc/source/filter/excel/excform8.cxx
+++ b/sc/source/filter/excel/excform8.cxx
@@ -373,16 +373,17 @@ ConvErr ExcelToSc8::Convert( const ScTokenArray*& rpTokArray, XclImpStream& aIn,
break;
case 0x19: // Special Attribute [327 279]
{
- sal_uInt16 nData, nFakt;
- sal_uInt8 nOpt;
+ sal_uInt16 nData(0), nFakt(0);
+ sal_uInt8 nOpt(0);
aIn >> nOpt >> nData;
nFakt = 2;
if( nOpt & 0x04 )
- {// nFakt -> skip bytes or words AttrChoose
+ {
+ // nFakt -> skip bytes or words AttrChoose
nData++;
- aIn.Ignore( nData * nFakt );
+ aIn.Ignore(static_cast<sal_Size>(nData) * nFakt);
}
else if( nOpt & 0x10 ) // AttrSum
DoMulArgs( ocSum, 1 );