To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=107839
------- Additional comments from [email protected] Mon Dec 28 14:53:57 +0000 2009 ------- AW->CL: Checked. Problem is that there is not really an asychronious loading for linked graphics (and never was, even in old versions). When a linked graphic is to be shown, ViewObjectContactOfGraphic::createPrimitive2DSequence uses the helper impPrepareGraphicWithAsynchroniousLoading (instead of the synchronius version). Independent from this, the async and the sync version uses SdrGrafObj::ImpUpdateGraphicLink() to load the linked graphic. This works, but uses internal stuff which calls SdrGraphicLink::DataChanged(..) which triggers a SetChanged (correct for model data) which itself triggers a ActionChanged(). That ActionChanged() is triggered during repaint which leads to repaint races. Besides that the PagePane View has IsSwapAsynchron() set to false, thus forcing to load all the time anyways. Somehow for some count the loaded swapped linked graphics get forced to be unloaded again. From that amount (ca. 6, settable as graphics cache in the tools/settings somewhere) the whole system seems to need longer and longer to get to an ending state. The error is that indirectly an invalidate gets triggered during paint. I tried to move if(rGrafObj.IsLinkedGraphic()) { // update graphic link rGrafObj.ImpUpdateGraphicLink(); } from the preparators (impPrepareGraphicWithAsynchroniousLoading and impPrepareGraphicWithSynchroniousLoading) to ViewObjectContactOfGraphic::doAsynchGraphicLoading(), thus using SdrGrafObj::ForceSwapIn() for synchronious load and SdrGrafObj::ImpUpdateGraphicLink() for asynchronious, but outside paint. This works better, but such a change is hard to predict. --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
