[Lazarus] Strange effect when debugging...

Michael Van Canneyt michael at freepascal.org
Fri Aug 2 17:53:58 CEST 2024


Hi,

Does lazarus (or gdb) start a binary twice sometimes when initializing debugging ?

I have a program that behaves strangely:

In the IDE without anchordockingdsgn I start a binary using F9.
It starts debugging at once, no errors.

In the IDE with anchordockingdsgn, I start a binary using F9 (Run with debugging).
I get almost immediatly 'socket binding failed' - the binding of a TCP
socket fails.

Indeed, when I stop debugging and check the process list, 
a prior process is visible, running. It obviously occupies the port.

When I kill the prior process, the second F9 works at once, as do all other
attempts to run it.

But if I stop the IDE and restart it, I have the same behaviour again: first
attempt to run fails.

In the anchordockingdsgn IDE, when I switch project, run the new project and then 
return to the first project (which could not be debugged), all works again OK.

What is puzzling is that this only happens with the IDE that has anchordocking enabled.
If I recompile the IDE after removing the anchordocking package, debugging works
at once.

Most puzzling. I fail to see what anchordocking has to do with debugging,
except that the list of opened debug windows is different. I can't for the
life of me explain how this would result in starting a process twice.

Any hints ?

Michael.


More information about the lazarus mailing list