https://issues.apache.org/ooo/show_bug.cgi?id=120143
--- Comment #6 from SunYing <[email protected]> --- solution: in line 5119-5125 at file "\main\filter\source\msfilter\svdfppt.cxx", if ( nMask & 0x0040 ) // buSize { rIn >> aSet.mpArry[ PPT_ParaAttr_BulletHeight ]; if ( ! ( ( nMask & ( 1 << PPT_ParaAttr_BuHardHeight ) ) && ( nBulFlg && ( 1 << PPT_ParaAttr_BuHardHeight ) ) ) ) aSet.mnAttrSet ^= 0x40; } PPT_ParaAttr_BulletHeight =3 the seventh of aSet.mnAttrSet use to indicate weather bullet has size. the fourth of nMask used to indicate bulletHasSize (1 bit): A bit that specifies whether the bulletFlags field of the TextPFException structure that contains this PFMasks exists and whether bulletFlags.fBulletHasSize is valid. the fourth of nBulFla used to indicate fBulletHasSize (1 bit): A bit that specifies whether the bullet has a size. the logic included if block: only and only if both the fourth of nMask and the fourth of nBulFla is 1, aSet.mnAttrSet is true, otherwise should be set to false. in sample file, the fourth of nBulFla is 0,and the fourth of nMask is 1, in this situation,the seventh of aSet.mnAttrSet should be set false, however the logic ( nBulFlg && ( 1 << PPT_ParaAttr_BuHardHeight ) ) is true, attr have not been set to false, next read bullet size is invalid,so error occur. the right logic should be ( nBulFlg & ( 1 << PPT_ParaAttr_BuHardHeight ) ), check weather the fourth of nBulFlg is 1. -- You are receiving this mail because: You are the assignee for the bug.
