View Issue Details

IDProjectCategoryView StatusLast Update
0000982Ecere SDKidepublic2013-08-28 17:26
Reporterjerome Assigned Toredj  
PriorityimmediateSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version0.44.08 
Target Version0.44.09Fixed in Version0.44.09 
Summary0000982: Troubles with breakpoints
Description- Seeing a 'Validate breakpoint error'
- The Debugged app is effectively paused (Break is disabled, Resume is enabled), but no call stack shows up, no code editor is opened
- 2 Resumes hit on a breakpoint
Steps To Reproduce- Open ide.epj
- Place breakpoints:
src/dialogs/NewProjectDialog.ec:86
src/dialogs/NewProjectDialog.ec:121

- Debug/Start the IDE, do Project/New, enter a directory/project name, click OK
- Notice the state described above
TagsNo tags attached.

Relationships

related to 0000986 closedredj More troubles with initial internal breakpoints 
related to 0000333 closed Breakpoints not showing up next time reopening project but active 

Activities

jerome

2013-08-16 18:37

administrator   ~0000990

I don't seem to be seeing the 'Validate breakpoint error' anymore, but I definitely saw it before.

The breakpoint problem is still there. The debugging IDE doesn't even get focus, so it looks as if no breakpoint was encountered and the debugged IDE is just jammed.

jerome

2013-08-24 06:25

administrator   ~0000996

Last edited: 2013-08-24 06:32

Running the latest version from request here with your fixes...

I noticed when I first Debug/run WSMS , with ecere/EDA/EDASQLite all in debug in the workspace, I get:

Starting debug mode
Debugger Error: ValidateBreakpoint error
The program E:\Solutions\wsms\obj\debug.win32\wsms.exe has exited normally.

The next time around that error does not show up.

Could we please have a fix for that?

The breakpoint in question causing the error seems to be:

src\com\instance.c:517

bp.type is internalModuleLoad
bp.function says "InternalModuleLoadBreakpoint"
and bp.line is 0

Are we missing a check in this ValidateBreakpoint that shouldn't apply to these internal breakpoints?

jerome

2013-08-24 06:38

administrator   ~0000997

I confirm the 'paused' state and 2 resumes portion of the issue does not happen anymore in this particular test case.

redj

2013-08-24 11:47

administrator   ~0001002

Last edited: 2013-08-24 11:54

fixed by https://github.com/ecere/ecere-sdk/commit/715705e741123c0e2f20f937ae64016506b79802

SetBreakpoint will only use the first bp when (for whatever reason) multiple breakpoints are set on a single line in a specific file.
   for(n : bpItem.multipleBPs)
      if(!first)
         first = n;
and when hitting breakpoints, debugger will only monitor/stop if the bp hit matches the address of the user breakpoint
   if(bpUser && strcmp(stopItem.frame.addr, bpUser.bp.addr))
      bpUser = null;

redj

2013-08-24 14:20

administrator   ~0001003

remaining invalid ValidateBreakpoint message fixed by https://github.com/ecere/ecere-sdk/commit/4760e322f9da9722b16b24a3438c5edbb72f4fc0

ValidateBreakpoint will ignore breakpoints not set using a line number
if(modules && bp.line && bp.bp)

Issue History

Date Modified Username Field Change
2013-08-16 18:33 jerome New Issue
2013-08-16 18:33 jerome Status new => assigned
2013-08-16 18:33 jerome Assigned To => redj
2013-08-16 18:37 jerome Note Added: 0000990
2013-08-22 20:17 redj Status assigned => resolved
2013-08-22 20:17 redj Resolution open => fixed
2013-08-24 06:25 jerome Note Added: 0000996
2013-08-24 06:32 jerome Note Edited: 0000996
2013-08-24 06:33 jerome Status resolved => assigned
2013-08-24 06:38 jerome Note Added: 0000997
2013-08-24 09:21 jerome Relationship added related to 0000986
2013-08-24 11:47 redj Note Added: 0001002
2013-08-24 11:54 redj Note Edited: 0001002
2013-08-24 14:20 redj Note Added: 0001003
2013-08-24 14:20 redj Status assigned => resolved
2013-08-24 14:20 redj Fixed in Version => 0.44.09
2013-08-28 17:26 jerome Status resolved => closed
2014-05-01 10:29 jerome Relationship added related to 0000333