Apache OpenOffice (AOO) Bugzilla – Issue 67868
new chart: type change to 3D xy -> crash ...
Last modified: 2013-02-24 21:18:50 UTC
If you load: http://www.openoffice.org/nonav/issues/showattachment.cgi/37770/spungify.xls switch to sheet 'Raw Graph' activate the chart object, Select the chart dialog: [ as an aside, it's interesting that as you switch between 3d and lines only - the other previews change: but not so relevant I guess ;-] Anyhow - if you select the '3d line' option [ NB. it has to be the 3d thingy ] Now switch to the XY line graph thing instead: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1235470672 (LWP 8185)] 0x9e4566ac in B3dComplexPolygon::IsLeft () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so (gdb) bt #0 0x9e4566ac in B3dComplexPolygon::IsLeft () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so #1 0x9e4576b0 in B3dComplexPolygon::FindStartInTriangle () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so #2 0x9e4577ae in B3dComplexPolygon::ExtractTriangle () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so #3 0x9e4578c4 in B3dComplexPolygon::ExtractTriangle () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so #4 0x9e4578c4 in B3dComplexPolygon::ExtractTriangle () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so #5 0x9e4578c4 in B3dComplexPolygon::ExtractTriangle () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so #6 0x9e4578c4 in B3dComplexPolygon::ExtractTriangle () from /data/OpenOffice/openoffice_chart2_milestone7/program/libgo680li.so ... unfortunately there are 10's of thousands if not millions of instances of this recursion - so it's hard to see where they originated from; hope you can reproduce.
accepted
->kla: I take it
I can reproduce with the milestone 7 but not with my current debug version - in the middle of some other work - I will look later on.
I can reproduce now with a slightly different stack and behaviour: tl680mi.dll!_chkstk() Asm go680mi.dll!DbgIsAssert() C++ go680mi.dll!B3dEdgeEntryBucketMemArr::operator[](169) C++ go680mi.dll!B3dEdgeEntryBucket::operator[](43404) C++ go680mi.dll!B3dComplexPolygon::InsertEdge(0x0f096ea0, 0x0f0ab5d0, 0) C++ go680mi.dll!B3dComplexPolygon::ExtractTriangle() C++ go680mi.dll!B3dComplexPolygon::ExtractTriangle() C++ go680mi.dll!B3dComplexPolygon::ExtractTriangle() C++ go680mi.dll!B3dComplexPolygon::ExtractTriangle() C++ go680mi.dll!B3dComplexPolygon::ExtractTriangle() C++ go680mi.dll!B3dComplexPolygon::ExtractTriangle() C++ The B3dEdgeEntryBucket entries in the above call are normally hidden behind a macro. When B3dEdgeEntryBucket::operator[] is called in this scenario with parameter position=43404 then the next call goes into another macro SV_IMPL_VARARR which there leads to DbgIsAssert() and a stack overflow notice. Armin, could you please take over, as you are the owner of B3dComplexPolygon. The error occurs during the paint call, long after all shapes are generated by the chart via the UNO API. After ignorance of the stackoverflow exception there is an AccessViolation during Region destructor (maybe the known vcl problem with exceptions during paint again!). Some more AccessViolations and in the end - ok my debug version does not crash immidiately - but only be by chance I guess. When trying to rotate the created diagram afterwards the whole Office shuts down immidiately. Armin, be aware that this occurs with the new chart, so you need CWS chart2mst3.
added me to CC
->aw: I take this back as I have found the problem.
The 3D lines were created with a wrong Shape3DPolygonObject. There a PolyPolygonShape3D was used which consists of multiple polygons not laying in the same 2D plane in 3D. Now the 3D lines are created with multiple Shape3DPolygonObject each having a single polygon laying in one plane. This change is necessary for correct application if the texture also. Fixed in CWS chart2mst3.
*** Issue 63722 has been marked as a duplicate of this issue. ***
@KLA: Please verify in milestone 9.
changed target to 2.3
changed issue type to task
No crash anymore -> verified
No crash on ooo-dev m216
Additional information: verified on OpenSuSE 10.2-i586, KDE 3.5.7