Issue 67868 - new chart: type change to 3D xy -> crash ...
Summary: new chart: type change to 3D xy -> crash ...
Status: CLOSED FIXED
Alias: None
Product: General
Classification: Code
Component: chart (show other issues)
Version: 3.3.0 or older (OOo)
Hardware: All Linux, all
: P2 Trivial (vote)
Target Milestone: ---
Assignee: kla
QA Contact: issues@graphics
URL:
Keywords: new_implementation
: 63722 (view as issue list)
Depends on:
Blocks:
 
Reported: 2006-07-28 10:42 UTC by mmeeks
Modified: 2013-02-24 21:18 UTC (History)
4 users (show)

See Also:
Issue Type: TASK
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description mmeeks 2006-07-28 10:42:05 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.
Comment 1 IngridvdM 2006-07-28 11:49:38 UTC
accepted
Comment 2 IngridvdM 2006-07-28 11:50:18 UTC
->kla: I take it
Comment 3 IngridvdM 2006-07-28 12:12:43 UTC
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.
Comment 4 IngridvdM 2006-08-26 11:12:01 UTC
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.
Comment 5 IngridvdM 2006-08-29 17:31:31 UTC
added me to CC
Comment 6 IngridvdM 2006-09-23 08:52:05 UTC
->aw: I take this back as I have found the problem.
Comment 7 IngridvdM 2006-09-23 09:01:26 UTC
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.
Comment 8 IngridvdM 2006-09-23 09:10:53 UTC
*** Issue 63722 has been marked as a duplicate of this issue. ***
Comment 9 IngridvdM 2006-10-30 15:02:03 UTC
@KLA: Please verify in milestone 9.
Comment 10 IngridvdM 2007-01-18 11:47:49 UTC
changed target to 2.3
Comment 11 IngridvdM 2007-03-01 19:01:01 UTC
changed issue type to task
Comment 12 kla 2007-03-12 16:17:01 UTC
No crash anymore -> verified
Comment 13 maand 2007-06-15 19:11:15 UTC
No crash on ooo-dev m216
Comment 14 maand 2007-06-15 19:14:21 UTC
Additional information: verified on OpenSuSE 10.2-i586, KDE 3.5.7