Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Premature call to OccupiedPorts.unclaim( ) #25

Open
royrwood opened this issue Jul 10, 2018 · 1 comment
Open

Premature call to OccupiedPorts.unclaim( ) #25

royrwood opened this issue Jul 10, 2018 · 1 comment

Comments

@royrwood
Copy link

If I set a breakpoint in my code, then give the 'c' command, execution proceeds to my breakpoint and stops as expected. Behind the scenes, rpdb internally calls OccupiedPorts.unclaim( ) which deletes the port reference from the self.claims dictionary.

When I then give the 'c' command to continue execution after the breakpoint and my code runs to completion, rpdb again calls OccupiedPorts.unclaim( ), resulting in a KeyError exception, since the port entry was already deleted.

I think the real bug is in Rpdb.d_continue( ), since it calls self.shutdown( ), which in turn calls OCCUPIED.unclaim( ).

@AWhetter
Copy link

AWhetter commented Mar 8, 2019

Calling shutdown sort of makes sense. When you continue, you're exiting pdb and letting Python continue as normal. The problem for us is that we don't want to drop the connection, otherwise we have to keep quitting telnet and reconnecting every time we do a continue. I'm not sure what the solution is to this but I'll keep thinking.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants