[TValueListEditor] Exception 'EStringListError' : List index (1) out of bounds.
Original Reporter info from Mantis: Cyrax
-
Reporter name:
Original Reporter info from Mantis: Cyrax
- Reporter name:
Description:
This happens when Key column have some value and user presses down button on cursor control keys.
See 'Steps To Reproduce' and 'Additional Information' for more info.
Check out attached file for test project.
Steps to reproduce:
- Write something in row at Key column.
- Press down button of cursor control.
Additional information:
Project project1 raised exception class 'EStringListError' with message:
List index (1) out of bounds
In file '..\objpas\classes\stringl.inc' at line 1102
---
call stack:
#0 fpc_raiseexception(0x584cc0, 0x1, 0x16f0a8) at ..\inc\except.inc:218
#1 ERROR(0x16f0a8, 0x584cc0 'List index (%d) out of bounds', 1) at ..\objpas\classes\stringl.inc:437
#2 GET(0x16f0a8, 1) at ..\objpas\classes\stringl.inc:1102
#3 GETNAMEVALUE(0x16f0a8, 1, 0x0, 0x0) at ..\objpas\classes\stringl.inc:180
#4 GETNAME(0x16f0a8, 1) at ..\objpas\classes\stringl.inc:209
#5 GETCELLS(0x1c2cf0, 0, 2) at valedit.pas:1165
#6 GETDEFAULTEDITOR(0x1c2cf0, 0) at valedit.pas:1194
#7 SELECTEDITOR(0x1c2cf0) at grids.pas:7791
#8 MOVEEXTEND(0x1c2cf0, false, 0, 2) at grids.pas:6959
#9 MOVENEXTSELECTABLE(0x1c2cf0, true, 0, 1) at grids.pas:7054
#10 MOVESEL(0x27cf860, true, 0, 1) at grids.pas:6641
#11 KEYDOWN(0x1c2cf0, 40, []) at grids.pas:6724
#12 KEYDOWN(0x1c2cf0, 40, []) at grids.pas:9626
#13 KEYDOWN(0x1c2cf0, 40, []) at valedit.pas:1252
#14 EDITORKEYDOWN(0x1c2cf0, 0x1c4d10, 40, []) at grids.pas:7731
#15 KEYDOWN(0x1c4d10, 40, []) at include\wincontrol.inc:5570
#16 KEYDOWN(0x1c4d10, 40, []) at maskedit.pp:1647
#17 KEYDOWN(0x1c4d10, 40, []) at grids.pas:9237
#18 KEYDOWNBEFOREINTERFACE(0x1c4d10, 40, []) at include\wincontrol.inc:5578
#19 DOKEYDOWNBEFOREINTERFACE(0x1c4d10, {MSG = 48384, CHARCODE = 40, UNUSED = 336, KEYDATA = 22020097, RESULT = 0}, false) at include\wincontrol.inc:5709
#20 CNKEYDOWN(0x1c4d10, {MSG = 48384, CHARCODE = 40, UNUSED = 336, KEYDATA = 22020097, RESULT = 0}) at include\wincontrol.inc:7012
#21 DISPATCH(0x1c4d10, 0) at ..\inc\objpas.inc:602
#22 WNDPROC(0x1c4d10, {MSG = 48384, WPARAM = 22020136, LPARAM = 22020097, RESULT = 0, WPARAMLO = 40, WPARAMHI = 336, LPARAMLO = 1, LPARAMHI = 336, RESULTLO = 0, RESULTHI = 0}) at include\control.inc:2099
#23 WNDPROC(0x1c4d10, {MSG = 48384, WPARAM = 22020136, LPARAM = 22020097, RESULT = 0, WPARAMLO = 40, WPARAMHI = 336, LPARAMLO = 1, LPARAMHI = 336, RESULTLO = 0, RESULTHI = 0}) at include\wincontrol.inc:5327
#24 WNDPROC(0x1c4d10, {MSG = 48384, WPARAM = 22020136, LPARAM = 22020097, RESULT = 0, WPARAMLO = 40, WPARAMHI = 336, LPARAMLO = 1, LPARAMHI = 336, RESULTLO = 0, RESULTHI = 0}) at grids.pas:9172
#25 DELIVERMESSAGE(0x1c4d10, 0) at lclmessageglue.pas:112
#26 WINDOWPROC(198870, 256, 40, 22020097) at win32\win32callback.inc:2480
#27 gapfnScSendMessage at :0
#28 ?? at :0
#29 USER32!GetThreadDesktop at :0
#30 WIN32INT_$$_DISPOSECOMBOEDITWINDOWINFO$TCUSTOMCOMBOBOX at :0
#31 USER32!CharPrevW at :0
#32 USER32!DispatchMessageW at :0
#33 APPPROCESSMESSAGES(0x1d73f0) at win32\win32object.inc:367
#34 HANDLEMESSAGE(0x1873e0) at include\application.inc:1268
#35 RUNLOOP(0x1873e0) at include\application.inc:1401
#36 APPRUN(0x1d73f0, {Proc = {procedure (POINTER)} 0x27cff48, Self = 0x1873e0}) at include\interfacebase.inc:54
#37 RUN(0x1873e0) at include\application.inc:1389
#38 main at project1.lpr:19
---
Target system: win32, Free Pascal trunk 2.7.1-r25633, Lazarus trunk '1.3'-r43112
fpc make options all install sourceinstall UPXPROG=echo OPT="-gw2 -godwarfsets
-gl -O- -OoNO -Xs-" COMPILER_OPTIONS="-gw2 -godwarfsets -gl -O- -OoNO -Xs-" INST
ALL_PREFIX=i:\free_pascal_and_lazarus\free_pascal_and_lazarus\fpc\trunk\build\tr
unk_x32 REVSTR=25633 IDE=1
lazarus make options make all UPXPROG=echo OPT="-gw2 -godwarfsets -gh -gl -O- -
OoNO -dHEAPTRC_WINDOW -Xs-" USESVN2REVISIONINC=0
Mantis conversion info:
- Mantis ID: 25166
- Fixed in version: 1.3 (SVN)
- Fixed in revision: r43177 (#ed6faba7)