View Issue Details

IDProjectCategoryView StatusLast Update
0000986Ecere SDKide:debuggerpublic2013-08-30 03:55
Reporterjerome Assigned Toredj  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version0.44.08 
Target Version0.44.09Fixed in Version0.44.09 
Summary0000986: More troubles with initial internal breakpoints
Description- Stepping out of eModule_Load() from eModule_Load(module, "ecere", publicAccess); in .main.ec causes the program to just continue

- Stepping out of main() leaves the debugger confused
GDB said ^error,msg="\"finish\" not meaningful in the outermost frame."
We should just be doing a continue in this case to avoid the problem, but I'm also concerned about how the Debugger can get in this confused state, just like 0000982: the GDB command said 'error', so why did we lose our call stack, threads and location cursors if GDB never said it was 'running'?
TagsNo tags attached.

Relationships

related to 0000938 closedredj gdb doesn't hit on a breakpoint in the beginning of main in x.main.ec when a bp is placed inside __ecere_COM_Initialize 
related to 0000982 closedredj Troubles with breakpoints 
related to 0000995 closedredj Invalid Breakpoint numbers; Alt-F10 - Run To cursor at same level Skipping breakpoint not working 

Activities

jerome

2013-08-29 05:15

administrator   ~0001032

Last edited: 2013-08-29 21:44

Some more breakpoint errors:

In SetBreakpoint() (Debugger.ec)

On this line:

if(bpItem.multipleBPs && bpItem.multipleBPs.count)

I got a null bpItem

  0 Debugger_SetBreakpoint Method, src\debugger\Debugger.ec:1870
  1 Debugger_GdbBreakpointsInsert Method, src\debugger\Debugger.ec:1818
  2 Debugger_GdbExecCommon Method, src\debugger\Debugger.ec:2077
  3 Debugger_GdbExecContinue Method, src\debugger\Debugger.ec:2048
  4 Debugger_EventHit Method, src\debugger\Debugger.ec:3074
  5 __ecereInstMeth___ecereNameSpace__ecere__gui__Timer_DelayExpired__00000000 Function, src\debugger\Debugger.ec:683

I put in a patch:
https://github.com/ecere/ecere-sdk/commit/41908d72aabdbc3d24ceae516bd5b4ddd51d2c65

But please take a look to see if there is a deeper problem.

What is likely to be the cause of this null pointer was filed as 0000995

jerome

2013-08-29 09:33

administrator   ~0001036

Last edited: 2013-08-29 09:35

Another interesting bug...
If you use the latest version of Documentor with the communication thread...
You put a breakpoint on line 3768:

console.GetLine(command, sizeof(command));

- hit F5
- hit F10

You end up in here:

   void InternalModuleLoadBreakpoint()
   {
> }

Call stack:

  0 InternalModuleLoadBreakpoint Function, src\com\instance.c:557
  1 __ecereNameSpace__ecere__com__Module_Load Function, src\com\instance.ec:5314
  2 __ecereNameSpace__ecere__com__eModule_LoadStrict Function, src\com\instance.ec:5326
  3 ImportModule Function, src\loadSymbols.ec:799
  4 MainForm_OpenModule Method, src\Documentor.ec:2127
  5 MainForm_OnPostCreate Method, src\Documentor.ec:2226
  6 __ecereNameSpace__ecere__gui__Window_Create Method, src\gui\Window.ec:6245
  7 __ecereNameSpace__ecere__gui__GuiApplication_Main Method, src\gui\GuiApplication.ec:674
  8 main Function, obj\debug.win32\documentor.main.ec:1591

fun fun fun!

This is actually from the modules that Documentor is loading...
Not sure if this would be easy to address, if the fundamental logic could be improved without putting in a hack to handle this special module loading thing? I'm guessing we could encounter this in the compiler as well so it should probably be handled...

jerome

2013-08-30 03:54

administrator   ~0001043

All fixed by https://github.com/ecere/ecere-sdk/commit/922f1a1d4a70270ffecb04a607d0d3c3a4af1e87

Issue History

Date Modified Username Field Change
2013-08-24 09:19 jerome New Issue
2013-08-24 09:19 jerome Status new => assigned
2013-08-24 09:19 jerome Assigned To => redj
2013-08-24 09:20 jerome Relationship added related to 0000938
2013-08-24 09:21 jerome Relationship added related to 0000982
2013-08-24 09:21 jerome Description Updated
2013-08-29 05:15 jerome Note Added: 0001032
2013-08-29 09:30 jerome Note Edited: 0001032
2013-08-29 09:33 jerome Note Added: 0001036
2013-08-29 09:35 jerome Note Edited: 0001036
2013-08-29 09:35 jerome Note Edited: 0001036
2013-08-29 21:43 jerome Relationship added related to 0000995
2013-08-29 21:44 jerome Note Edited: 0001032
2013-08-30 03:54 jerome Note Added: 0001043
2013-08-30 03:55 jerome Status assigned => resolved
2013-08-30 03:55 jerome Fixed in Version => 0.44.09 64
2013-08-30 03:55 jerome Resolution open => fixed
2013-08-30 03:55 jerome Status resolved => closed