diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-07-21 17:06:05 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-07-21 20:55:00 +0100 |
commit | e2e6fa5ad5aaa20a9fa8a6d060d9edd241aefd52 (patch) | |
tree | 3389faa49f7f07c252375b4c7a79451e86467549 | |
parent | abe178814489286aa45dc0799df50e650a78bc9d (diff) |
need to check for after reading and before seeking
seeking resets eof, so the IsEof is always false
after the first loop
Change-Id: I2e533f3f9c494566aabb947c05258a770e883b1f
-rw-r--r-- | sw/qa/core/data/ww8/pass/hang-1.doc | bin | 0 -> 10240 bytes | |||
-rw-r--r-- | sw/source/filter/ww8/ww8par3.cxx | 5 |
2 files changed, 2 insertions, 3 deletions
diff --git a/sw/qa/core/data/ww8/pass/hang-1.doc b/sw/qa/core/data/ww8/pass/hang-1.doc Binary files differnew file mode 100644 index 000000000000..8d68bbb12760 --- /dev/null +++ b/sw/qa/core/data/ww8/pass/hang-1.doc diff --git a/sw/source/filter/ww8/ww8par3.cxx b/sw/source/filter/ww8/ww8par3.cxx index 2079de69ef90..3db34924a8e4 100644 --- a/sw/source/filter/ww8/ww8par3.cxx +++ b/sw/source/filter/ww8/ww8par3.cxx @@ -1297,15 +1297,14 @@ WW8ListManager::WW8ListManager(SvStream& rSt_, SwWW8ImplReader& rReader_) { bOk = false; - if (rSt.IsEof()) - break; - WW8LFO aLFO; memset(&aLFO, 0, sizeof( aLFO )); rSt.ReadUInt32( aLFO.nIdLst ); rSt.SeekRel( 8 ); rSt.ReadUChar( aLFO.nLfoLvl ); + if (!rSt.good()) + break; rSt.SeekRel( 3 ); // soviele Overrides existieren if ((nMaxLevel < aLFO.nLfoLvl) || rSt.GetError()) |