Hi,
I just upgraded to ver 8.05 and get the following exception error during debug mode in Delphi 2009:
"Exception class ElistError 'List index out of bounds(-1)' in
procedure TChartSeries.DrawAllValues;
I get this error when using:
Series1.AddXY( 123, 456, 'Hello', clGreen );
But this one gives no exception:
Series1.AddXY( 123, 456, 'Hello');
Note that both lines works in release mode.
Thanks,
Thomas
Ver 8.05 gives exception error in debug mode
-
- Site Admin
- Posts: 14730
- Joined: Mon Jun 09, 2003 4:00 am
- Location: Banyoles, Catalonia
- Contact:
Hi Thomas,
I'm not able to reproduce the problem here. Can you please send us a simple example project we can run "as-is" to reproduce the issue here?
You can either post your files at news://www.steema.net/steema.public.attachments newsgroup or at our upload page.
Thanks in advance.
I'm not able to reproduce the problem here. Can you please send us a simple example project we can run "as-is" to reproduce the issue here?
You can either post your files at news://www.steema.net/steema.public.attachments newsgroup or at our upload page.
Thanks in advance.
Best Regards,
Narcís Calvet / Development & Support Steema Software Avinguda Montilivi 33, 17003 Girona, Catalonia Tel: 34 972 218 797 http://www.steema.com |
Instructions - How to post in this forum |
Hi Narcís,
I just uploaded the files in "addxy_exception_debug.zip" on your upload page.
The project is just a new Tchart on a form with two buttons:
procedure TForm1.Button1Click(Sender: TObject);
begin
Series1.AddXY( 123, 456, 'Hello'); //works
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Series1.AddXY( 123, 456, 'Hello', clGreen ); //does not work
end;
The last button gives the error in debug mode for
procedure TChartSeries.DrawAllValues;
Thanks,
Thomas
I just uploaded the files in "addxy_exception_debug.zip" on your upload page.
The project is just a new Tchart on a form with two buttons:
procedure TForm1.Button1Click(Sender: TObject);
begin
Series1.AddXY( 123, 456, 'Hello'); //works
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Series1.AddXY( 123, 456, 'Hello', clGreen ); //does not work
end;
The last button gives the error in debug mode for
procedure TChartSeries.DrawAllValues;
Thanks,
Thomas
Hi Thomas,
It's strange, we've tested your project in two different machines and couldn't reproduce the problem. Shall we do any specific step we may missed?
We executed you app ensuring that we do it in debug mode and that there the reference to the sources.
It's strange, we've tested your project in two different machines and couldn't reproduce the problem. Shall we do any specific step we may missed?
We executed you app ensuring that we do it in debug mode and that there the reference to the sources.
Best Regards,
Yeray Alonso Development & Support Steema Software Av. Montilivi 33, 17003 Girona, Catalonia (SP) | |
Please read our Bug Fixing Policy |
Hi again,
I have a rather fast new PC (Intel core 2 quad at 2.4 GHz, Nvidia GT8600). Could it be some speed issue making it non-reproducable for you?
In "Series.pas":
(procedure TCustomSeries.DrawValue(ValueIndex:Integer);)
I get the error on line 2181:
//TV52013890
if {$IFDEF CLR}(ValueIndex>0) and{$ENDIF}(IsNull(ValueIndex-1)) then if null }
If this line is change to this there is no error:
if (ValueIndex>0) and (IsNull(ValueIndex-1)) then { if null } //ok
Thanks,
Thomas
I have a rather fast new PC (Intel core 2 quad at 2.4 GHz, Nvidia GT8600). Could it be some speed issue making it non-reproducable for you?
In "Series.pas":
(procedure TCustomSeries.DrawValue(ValueIndex:Integer);)
I get the error on line 2181:
//TV52013890
if {$IFDEF CLR}(ValueIndex>0) and{$ENDIF}(IsNull(ValueIndex-1)) then if null }
If this line is change to this there is no error:
if (ValueIndex>0) and (IsNull(ValueIndex-1)) then { if null } //ok
Thanks,
Thomas
Hi Thomas,
Here we've tested with our new machines too that are pretty similar than yours (Intel core 2 quad at 2.4 GHz, Nvidia GT8500, 3.25 GB RAM) so it shouldn't be due to a hardware difference.
TV52013890 was a VCL for NET bug and that's the reason of the "IFDEF CLR".
Here we've tested with our new machines too that are pretty similar than yours (Intel core 2 quad at 2.4 GHz, Nvidia GT8500, 3.25 GB RAM) so it shouldn't be due to a hardware difference.
TV52013890 was a VCL for NET bug and that's the reason of the "IFDEF CLR".
Best Regards,
Yeray Alonso Development & Support Steema Software Av. Montilivi 33, 17003 Girona, Catalonia (SP) | |
Please read our Bug Fixing Policy |
-
- Newbie
- Posts: 1
- Joined: Wed Oct 01, 2008 12:00 am
Re: Ver 8.05 gives exception error in debug mode
Try testing with range check on. I think that i got the same bug and fixed/worked around it by changing the following function in teEnging.pas testing on a negative value used to look in an array.
{ Returns True is the ValueIndex point in the Series is Null. }
Function TChartSeries.IsNull(ValueIndex:Integer):Boolean;
begin
if ValueIndex < 0 then
Result := True
else
result:=ValueColor[ValueIndex]=clNone;
end;
Hope this helps.
{ Returns True is the ValueIndex point in the Series is Null. }
Function TChartSeries.IsNull(ValueIndex:Integer):Boolean;
begin
if ValueIndex < 0 then
Result := True
else
result:=ValueColor[ValueIndex]=clNone;
end;
Hope this helps.
Re: Ver 8.05 gives exception error in debug mode
Hi Thomas and Ronald,
We now could reproduce the problem. It seems that the bug solved for Delphi for NET (TV52013890) is also reproducible for Delphi when Range Checking is on. So we want you to know that we have changed the Series.pas as Thomas suggested the 7th of June:
We now could reproduce the problem. It seems that the bug solved for Delphi for NET (TV52013890) is also reproducible for Delphi when Range Checking is on. So we want you to know that we have changed the Series.pas as Thomas suggested the 7th of June:
Code: Select all
if (ValueIndex>0) and(IsNull(ValueIndex-1)) then { if null }
if FTreatNulls=tnDontPaint then
begin
OldX:=X;
OldY:=Y;
end;
Best Regards,
Yeray Alonso Development & Support Steema Software Av. Montilivi 33, 17003 Girona, Catalonia (SP) | |
Please read our Bug Fixing Policy |
Re: Ver 8.05 gives exception error in debug mode
Yeray and Ronald,
Thanks for your help!
Thanks for your help!