https://issues.apache.org/ooo/show_bug.cgi?id=123048
--- Comment #10 from Armin Le Grand <[email protected]> --- ALG: What has changed is that the layout suppression in 3.4.1 was not working for 3.4.1 due to the following line: if ( bEdgeTrackUserDefined && (GetModel() && GetModel()->isLocked()) ) This was adapted to if(bEdgeTrackUserDefined || !GetModel() || GetModel()->isLocked()) which works as designed, so ImpCalcEdgeTrack will never be used during load. Problem is that the former error allowed values from the ItemSet to be set at the EdgeTrack using ImpSetAttrToEdgeInfo; this is *never* done now before later in SdrEdgeObj::ImpRecalcEdgeTrack() really *pEdgeTrack=ImpCalcEdgeTrack(*pEdgeTrack,aCon1,aCon2,&aEdgeInfo); ImpSetEdgeInfoToAttr(); is called. This *will* kill values which are in the ItemSet, but were vere adapted/set at the EdgeInfo (in ImpSetEdgeInfoToAttr). To solve this, the object needs to remember if ImpCalcEdgeTrack was ever suppressed, and if yes, get to a valid state by calling ImpCalcEdgeTrack once and then ImpSetAttrToEdgeInfo. After that, all will be as if layouting would have never been suppressed at all. Testing this theory... -- You are receiving this mail because: You are on the CC list for the bug. You are watching all bug changes.
