View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000790 | Ecere SDK | ide:parsing | public | 2013-04-17 00:48 | 2013-08-07 03:33 |
Reporter | redj | Assigned To | jerome | ||
Priority | immediate | Severity | major | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 0.44.06 | ||||
Target Version | 0.44.08 | Fixed in Version | 0.44.08 | ||
Summary | 0000790: ide code parsing crash for FindInFilesDialog.ec with git confilct markers | ||||
Description | release ide crashes before showing up when opening attached FindInFilesDialog.ec in debug mode the crash occurs when closing the ide after having opened the file see call stack in additional notes | ||||
Steps To Reproduce | ide ide/src/dialogs/FindInFilesDialog.ec Segmentation fault (core dumped) | ||||
Additional Information | 0 __GI_raise Function, ../nptl/sysdeps/unix/sysv/linux/raise.c:64 1 __GI_abort Function, abort.c:91 2 __libc_message Function, ../sysdeps/unix/sysv/linux/libc_fatal.c:201 3 malloc_printerr Function, malloc.c:5007 4 __ecereNameSpace__ecere__com___myfree Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/com/instance.ec:1234 5 __ecereNameSpace__ecere__com___free Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/com/instance.ec:1771 6 __ecereNameSpace__ecere__com__eSystem_Delete Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/com/instance.ec:5761 7 FreeDeclarator Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:584 8 FreeDeclarator Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:548 9 FreeClassFunction Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:909 10 FreeClassDef Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:966 11 FreeList Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:13 12 FreeClass Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:1020 13 FreeExternal Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:1081 14 FreeASTTree Function, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/compiler/libec/src/freeAst.ec:1105 15 CodeEditor_FreeParser Method, src/designer/CodeEditor.ec:2497 16 CodeEditor_OnDestroy Method, src/designer/CodeEditor.ec:2105 17 __ecereNameSpace__ecere__gui__Window_DestroyEx Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/Window.ec:5569 18 __ecereNameSpace__ecere__gui__Window_DestroyEx Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/Window.ec:5578 19 __ecereNameSpace__ecere__gui__Window_DestroyEx Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/Window.ec:5578 20 __ecereNameSpace__ecere__gui__Window_DestroyEx Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/Window.ec:5578 21 __ecereNameSpace__ecere__gui__Window_Destroy Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/Window.ec:6401 22 __ecereNameSpace__ecere__gui__drivers__XInterface_ProcessInput Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/drivers/XInterface.ec:1742 23 __ecereNameSpace__ecere__gui__GuiApplication_ProcessInput Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/GuiApplication.ec:801 24 __ecereNameSpace__ecere__gui__GuiApplication_Main Method, /h/r/s/c/cmp/temp/tmp-ecere-sdk-comp-json/ecere/src/gui/GuiApplication.ec:712 25 main Function, /h/r/s/c/ecere-sdk/ide/obj/debug.linux/ide.main.ec:4208 | ||||
Tags | No tags attached. | ||||
2013-04-17 00:51
|
|
|
Valgrind says: ==3077== Invalid write of size 4 ==3077== at 0x5016C36: __ecereNameSpace__ecere__com__FixDerivativesBase (instance.c:2256) ==3077== by 0x5022491: __ecereNameSpace__ecere__com__eProperty_Watchable (instance.c:5839) ==3077== by 0x4FEF95A: __ecereRegisterModule_Window (Window.c:13402) ==3077== by 0x502FB4D: __ecereDll_Load (ecere.main.c:3066) |
|
FindInFilesDialog is originally thought of as a bit class, and so eClass_AddBitMember is called and a BitMember is allocated. Then FixDerivativesBase turns it into a normal class, but members are still BitMembers. |
|
Fixed by https://github.com/ecere/sdk/commit/89dcc67d27cac3820e50e9124e276ffcfc009ef3 |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-04-17 00:48 | redj | New Issue | |
2013-04-17 00:48 | redj | File Added: FindInFilesDialog.ec | |
2013-04-17 00:50 | redj | File Deleted: FindInFilesDialog.ec | |
2013-04-17 00:51 | redj | File Added: FindInFilesDialog.ec | |
2013-04-18 21:30 | jerome | Note Added: 0000685 | |
2013-04-18 22:11 | jerome | Note Added: 0000686 | |
2013-04-20 03:21 | jerome | Status | new => resolved |
2013-04-20 03:21 | jerome | Fixed in Version | => 0.44.1 64 |
2013-04-20 03:21 | jerome | Resolution | open => fixed |
2013-04-20 03:21 | jerome | Assigned To | => jerome |
2013-04-20 03:21 | jerome | Note Added: 0000687 | |
2013-05-22 20:29 | jerome | Status | resolved => closed |
2013-08-07 03:33 | jerome | Fixed in Version | 0.44.10 64 => 0.44.08 |
2013-08-07 03:33 | jerome | Target Version | 0.44.10 64 => 0.44.08 |