crash when exit application at TeeProcs.pas #2758
Posted: Fri Sep 30, 2005 6:56 am
TeeChart 7.04 Professional, Delphi 5.
We use the TChart in TFrame. The Frames are created and deleted dynamicly during running of application. Also the TLineSeries are, created, added and removed during running of application dynamicly.
At the end/exit of Application there is a crash in the TeeChart library:
**** TeeProcs.pas ***
Procedure TTeeCustomShapeBrushPen.Repaint;
begin
if Assigned(ParentChart) then ParentChart.Invalidate; << crashs here
end;
After adding one line, there's no GPF:
*** TeEngine.pas ***
Procedure TCustomAxisPanel.RemoveSeries(SeriesIndex: Integer);
var tmp : TChartSeries;
begin
if SeriesIndex>=0 then
begin
tmp:=SeriesList[SeriesIndex];
BroadcastSeriesEvent(tmp,seRemove);
tmp.Removed;
//added begin
if Assigned(tmp.Marks) then tmp.Marks.ParentChart := nil;
//added end
FSeriesList.Delete(SeriesIndex);
Invalidate;
end;
end;
Does anybody knows about this failure?
Is this patch ok or just luck that it works?
We use the TChart in TFrame. The Frames are created and deleted dynamicly during running of application. Also the TLineSeries are, created, added and removed during running of application dynamicly.
At the end/exit of Application there is a crash in the TeeChart library:
**** TeeProcs.pas ***
Procedure TTeeCustomShapeBrushPen.Repaint;
begin
if Assigned(ParentChart) then ParentChart.Invalidate; << crashs here
end;
After adding one line, there's no GPF:
*** TeEngine.pas ***
Procedure TCustomAxisPanel.RemoveSeries(SeriesIndex: Integer);
var tmp : TChartSeries;
begin
if SeriesIndex>=0 then
begin
tmp:=SeriesList[SeriesIndex];
BroadcastSeriesEvent(tmp,seRemove);
tmp.Removed;
//added begin
if Assigned(tmp.Marks) then tmp.Marks.ParentChart := nil;
//added end
FSeriesList.Delete(SeriesIndex);
Invalidate;
end;
end;
Does anybody knows about this failure?
Is this patch ok or just luck that it works?