Taking an example from WP in this thread:
https://forum.lazarus.freepascal.org/index.php/topic,52073.msg383172.html#msg383172I created a TChartToolset, added a TDataPointCrosshairTool, assigned the TChartToolset to the TChart and wrote a OnDraw event for the TDataPointCrosshairTool.
There are two vertical axes with a TAutoScaleAxisTransform and multiple series, not all being active at all times.
In the OnDraw event I check that only active series are handled.
However, I keep getting SigSev errors quite often but not always.
As test I did set the TDataPointCrosshairTool.Enabled to false and set the AffectedSeries to the index number of just one single series which was always active. It appears that the TChartToolset itself is already running into trouble:
#0 UPDATEMINMAX(0, <error reading variable: Cannot access memory at address 0x18>, <error reading variable: Cannot access memory at address 0x20>) at tachartutils.pas:575
#1 UPDATEBOUNDS(0x6882a38, 0, 100.00004585382453) at tatransformations.pas:746
#2 UPDATEBOUNDS(0x68828a8, 0, 100.00004585382453) at tatransformations.pas:570
#3 GETGRAPHBOUNDS(0x68a3cd8) at tacustomseries.pas:471
#4 INBOUNDARYBOX(0x13ff530, 0x68a3cd8) at tatools.pas:1632
#5 FINDNEARESTPOINT(0x6884468, {X = 403, Y = 318}) at tatools.pas:1676
#6 MOUSEMOVE(0x6884468, {X = 403, Y = 318}) at tatools.pas:2020
#7 DISPATCH(0x6884468, 0x5ed8108, EVIDMOUSEMOVE, {X = 403, Y = 318}) at tatools.pas:751
#8 DISPATCH(0x6883758, 0x5ed8108, EVIDMOUSEMOVE, [], {X = 403, Y = 318}) at tatools.pas:1006
#9 MOUSEMOVE(0x5ed8108, [], 403, 318) at tagraph.pas:1363
#10 WMMOUSEMOVE(0x5ed8108, {MSG = 512, KEYS = 0, XPOS = 403, YPOS = 318, POS = {X = 403, Y = 318}, DUMMY = 20840851, RESULT = 0}) at include\control.inc:4430
#11 SYSTEM$_$TOBJECT_$__$$_DISPATCH$formal at :0
#12 ?? at :0
Any suggestions?
Thanks in advance.