summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2011-07-06 22:15:32 +0100
committerCaolán McNamara <caolanm@redhat.com>2011-07-07 11:02:38 +0100
commite8809ade3a516a02f3722f570a4080d19aa70f4a (patch)
treed0bf81b766985d671d9c482b2cb24ee87d024ad5
parentf435cc351afcead9b87f48e02d38b63b3f06bd15 (diff)
init some variables against short reads
-rw-r--r--sw/source/filter/ww8/ww8par3.cxx25
1 files changed, 8 insertions, 17 deletions
diff --git a/sw/source/filter/ww8/ww8par3.cxx b/sw/source/filter/ww8/ww8par3.cxx
index c70ac16b6bac..1d8d99fc0476 100644
--- a/sw/source/filter/ww8/ww8par3.cxx
+++ b/sw/source/filter/ww8/ww8par3.cxx
@@ -1065,7 +1065,6 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
// Arrays anlegen
pLFOInfos = new WW8LFOInfos;
bool bLVLOk = true;
- sal_uInt8 aBits1;
nLastLFOPosition = USHRT_MAX;
long nOriginalPos = rSt.Tell();
@@ -1101,7 +1100,7 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
for (sal_uInt16 nLevel = 0; nLevel < nMaxLevel; ++nLevel)
rSt >> aLST.aIdSty[ nLevel ];
-
+ sal_uInt8 aBits1(0);
rSt >> aBits1;
rSt.SeekRel( 1 );
@@ -1190,12 +1189,6 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
bOk = true;
}
}
- if( !bOk )
- {
- // Fehler aufgetreten - LSTInfos abraeumen !!!
-
- ;
- }
//
// 2. PLF LFO auslesen und speichern
@@ -1326,13 +1319,15 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
sal_uInt32 nTest;
rSt >> nTest;
do
+ {
+ nTest = 0;
rSt >> nTest;
+ }
while (nTest == 0xFFFFFFFF);
rSt.SeekRel(-4);
std::deque<bool> aNotReallyThere(WW8ListManager::nMaxLevel);
- sal_uInt8 nLevel = 0;
- for (nLevel = 0; nLevel < pLFOInfo->nLfoLvl; ++nLevel)
+ for (sal_uInt8 nLevel = 0; nLevel < pLFOInfo->nLfoLvl; ++nLevel)
{
WW8LFOLVL aLFOLVL;
bLVLOk = false;
@@ -1341,6 +1336,7 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
// 2.2.2.1 den LFOLVL einlesen
//
rSt >> aLFOLVL.nStartAt;
+ sal_uInt8 aBits1(0);
rSt >> aBits1;
rSt.SeekRel( 3 );
if (rSt.GetError())
@@ -1402,7 +1398,7 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
//
sal_uInt16 aFlagsNewCharFmt = 0;
bool bNewCharFmtCreated = false;
- for (nLevel = 0; nLevel < pLFOInfo->nLfoLvl; ++nLevel)
+ for (sal_uInt8 nLevel = 0; nLevel < pLFOInfo->nLfoLvl; ++nLevel)
{
AdjustLVL( nLevel, *pLFOInfo->pNumRule, aItemSet, aCharFmt,
bNewCharFmtCreated, sPrefix );
@@ -1412,17 +1408,12 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_)
//
// 2.2.4 ItemPools leeren und loeschen
//
- for (nLevel = 0; nLevel < pLFOInfo->nLfoLvl; ++nLevel)
+ for (sal_uInt8 nLevel = 0; nLevel < pLFOInfo->nLfoLvl; ++nLevel)
delete aItemSet[ nLevel ];
bOk = true;
}
}
}
- if( !bOk )
- {
- // Fehler aufgetreten - LSTInfos und LFOInfos abraeumen !!!
- ;
- }
// und schon sind wir fertig!
rSt.Seek( nOriginalPos );
}