Steema Issues Database

Note: This database is for bugs and wishes only. For technical support help, if you are a customer please visit our online forums;
otherwise you can use StackOverflow.
Before using this bug-tracker we recommend a look at this document, Steema Bug Fixing Policy.



Bug 2739

Summary: Setting AxisVisible = true causes Invalid floating point operation
Product: VCL TeeChart Reporter: Stewart <stewart.gaskell>
Component: ChartAssignee: Steema Issue Manager <issuemanager>
Status: UNCONFIRMED ---    
Severity: minor CC: yeray
Priority: Low    
Version: 32.210430   
Target Milestone: ---   
Hardware: PC   
OS: Windows   
Chart Series: --- Delphi / C++ Builder RAD IDE Version: RAD 12 Athens

Description Stewart 2024-09-02 11:36:09 EDT
We have upgraded our project from Builder 10.3 to 12.1, and now when the TChart is visible we get "Invalid floating point operation"
If we set the TChart->AxisVisible property to false, the chart is displayed without error. But we need the axis labels to be displayed.

Stack trace;
:5d133c31 ; C:\Program Files (x86)\Embarcadero\Studio\23.0\bin\Tee9290.bpl
:5d133cc1 Tee9290.@Vcltee@Teengine@TChartAxis@CalcLabelsIncrement$qqri + 0x35
:5d133ea3 Tee9290.@Vcltee@Teengine@TChartAxis@CalcXYIncrement$qqri + 0x6b
:5d134d7f Tee9290.@Vcltee@Teengine@TChartAxis@MaxLabelsValue$qqrrit1 + 0x2f
:5d135095 Tee9290.@Vcltee@Teengine@TChartAxis@MaxLabelsWidth$qqrv + 0x3d
:5d13abd6 Tee9290.@Vcltee@Teengine@TChartAxis@InternalCalcSize$qqrxp32Vcltee@Teengine@TCustomTextShapeix20System@UnicodeStringi + 0xaa
:5d13a990 Tee9290.@Vcltee@Teengine@TChartAxis@SizeLabels$qqrv + 0x40
:5d13af9d ; C:\Program Files (x86)\Embarcadero\Studio\23.0\bin\Tee9290.bpl
:5d14a2cb ; C:\Program Files (x86)\Embarcadero\Studio\23.0\bin\Tee9290.bpl
:5d14a8ec ; C:\Program Files (x86)\Embarcadero\Studio\23.0\bin\Tee9290.bpl
:5d103faf ; C:\Program Files (x86)\Embarcadero\Studio\23.0\bin\Tee9290.bpl
:5d104065 Tee9290.@Vcltee@Teeprocs@TCustomTeePanel@Draw$qqrp20Vcl@Graphics@TCanvasrx18System@Types@TRect + 0x15
:5d103ca7 Tee9290.@Vcltee@Teeprocs@TCustomTeePanel@Draw$qqrv + 0x47
:69f64a13 vcl290.@Vcl@Controls@TWinControl@PaintHandler$qqrr24Winapi@Messages@TWMPaint + 0x5b
:69f65210 vcl290.@Vcl@Controls@TWinControl@WMPaint$qqrr24Winapi@Messages@TWMPaint + 0x50
:69f6b166 vcl290.@Vcl@Controls@TCustomControl@WMPaint$qqrr24Winapi@Messages@TWMPaint + 0x16
:69f64800 ; C:\Program Files (x86)\Embarcadero\Studio\23.0\bin\vcl290.bpl
:5d104835 Tee9290.@Vcltee@Teeprocs@TCustomTeePanel@WndProc$qqrr24Winapi@Messages@TMessage + 0x11
:6ad1477e rtl290.@System@Classes@TDataModule@WriteHeight$qqrp22System@Classes@TWriter + 0x22
:758536d3 ; C:\windows\SysWOW64\user32.dll
:758444e6 ; C:\windows\SysWOW64\user32.dll
:75843f6a ; C:\windows\SysWOW64\user32.dll
:7584debf user32.GetPropW + 0xff
:775e919d ntdll.KiUserCallbackDispatcher + 0x4d
:758428f0 user32.DispatchMessageW + 0x10
Comment 1 Stewart 2024-09-05 03:56:15 EDT
We have found that setting altering the arithmetic exception flags is causing the issue.
So, with exPrecision, and exInvalidOp set we see the Invalid floating point operation.
Changing these flags to include exInvalidOp, exDenormalized, exUnderflow, exPrecision solves our problem

If required, I can send a minimal C++ VCL application to demonstrate the issue.
Comment 2 yeray alonso 2024-11-19 02:13:57 EST
Indeed, a minimal example would help us to reproduce the problem and try to find if there's anything we can do to fix it.

Thanks in advance.