Apache OpenOffice (AOO) Bugzilla – Full Text Issue Listing |
Summary: | new chart: Changing chart type Line 3D to XY 3D sometimes loop or crashes | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | General | Reporter: | peter.junge | ||||||
Component: | chart | Assignee: | Armin Le Grand <Armin.Le.Grand> | ||||||
Status: | CLOSED DUPLICATE | QA Contact: | issues@graphics <issues> | ||||||
Severity: | Trivial | ||||||||
Priority: | P2 | CC: | issues, thomas.klarhoefer, tony.galmiche.ooo | ||||||
Version: | 3.3.0 or older (OOo) | Keywords: | new_implementation | ||||||
Target Milestone: | --- | ||||||||
Hardware: | All | ||||||||
OS: | All | ||||||||
Issue Type: | DEFECT | Latest Confirmation in: | --- | ||||||
Developer Difficulty: | --- | ||||||||
Attachments: |
|
Description
peter.junge
2006-03-28 15:28:59 UTC
Created attachment 35311 [details]
Document with randomly generated values
akw ->bm: Please take over. When there is a loop, there are two threads. One handles the dialog in VCL (while the solar mutex is locked). The second thread iterates over Acceptors (desktop, offacc.dll). Probably this is a threading deadlock. I couldn't reproduce the loop when I start the Office without the -accept parameter. If I do, the loop occurs, even if no other process uses the remote connection. Ok, next result of debugging: The "-accept" string probably only changes the timing. Because this time I got a crash in SdrPaintView::RefreshAllIAOManagers() when calling B2dIAOManager::UpdateDisplay(). The issue occurs when you change chart types "fast". Here is the stack with some libraries with debug:
vcl680mi.dll!1000dd2b()
vcl680mi.dll!100417b8()
uxtheme.dll!5ad72299()
go680mi.dll!B2dIAOManager::UpdateDisplay() + 0x4b C++
tl680mi.dll!0027a60a()
> svx680mi.dll!SdrPaintView::RefreshAllIAOManagers() Line 1197 C++
svx680mi.dll!SdrPaintView::ImpAfterPaintHdl(Timer * pTimer=0x0a72fe88) Line
544 C++
svx680mi.dll!SdrPaintView::LinkStubImpAfterPaintHdl(void * pThis=0x0a72fc78,
void * pCaller=0x0a72fe88) Line 538 + 0xf C++
tl680mi.dll!00276aa8()
vcl680mi.dll!1003bb61()
vcl680mi.dll!1003ba7b()
vcl680mi.dll!1003c15b()
vcl680mi.dll!1006c5c8()
chartmodel680mi.dll!comphelper::WeakImplHelper16<com::sun::star::util::XCloseable,com::sun::star::frame::XStorable2,com::sun::star::util::XModifiable,com::sun::star::lang::XServiceInfo,com::sun::star::chart2::XChartDocument,com::sun::star::chart2::data::XDataReceiver,com::sun::star::chart2::XTitled,com::sun::star::frame::XLoadable,com::sun::star::util::XCloneable,com::sun::star::embed::XVisualObject,com::sun::star::lang::XMultiServiceFactory,com::sun::star::document::XStorageBasedDocument,com::sun::star::lang::XUnoTunnel,com::sun::star::util::XNumberFormatsSupplier,com::sun::star::container::XChild,com::sun::star::util::XModifyListener>::release()
Line 228 + 0xc C++
chartcontroller680mi.dll!chart::ChartController::executeDispatch_ChartType()
Line 1145 + 0xc C++
chartcontroller680mi.dll!chart::ChartController::dispatch(const
com::sun::star::util::URL & rURL={...}, const
com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> &
rArgs={...}) Line 1044 + 0xc C++
chartcontroller680mi.dll!chart::ControllerCommandDispatch::dispatch(const
com::sun::star::util::URL & URL={...}, const
com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> &
Arguments={...}) Line 356 + 0x23 C++
fwk680mi.dll!framework::GenericToolbarController::ExecuteHdl_Impl() + 0x32 C++
tl680mi.dll!00276aa8()
vcl680mi.dll!100d5ee6()
[...]
Typo in summary corrected for better finding (or was that intended? ;-) ) Created attachment 36396 [details]
Document to reproduce the loop. Just enter chart and change to XY
->AW: There is a stack-overflow in B3dComplexPolygon::ExtractTriangle() (Line 980). The function is called recursively, and obviously without a matching abortion-criterion. To reproduce, load the attached loop.ods, activate the chart and go to "Chart Type". Then set a breakpoint in B2dIAOManager::UpdateDisplay() (Line 1801), change the chart type to xy. With the breakpoint set I get a call to "DbgIsErrorOut" which breaks into the debugger with the loop on the stack more reliably than otherwise. Please check, why there is a loop, and how it can be avoided. This happens with the new chart in CWS chart2mst3. Changed target to 2.x This one is duplicate to Issue 67868. I set this older to duplicate as the newer issue has a more reliable reproduction description. *** This issue has been marked as a duplicate of 67868 *** close as duplicate |