misc
misc copied to clipboard
`bdb` subshell issues
Hi. Ran into interesting behaviour of your shell debugger. Test script is:
#!/bin/bash
cd "$(dirname "$(readlink -f "$0")")" || exit 127
echo Testing
echo Testing
echo 123
Line 2 is a common way of loading resources relative to script (at least Im using it that way:)
The issue is: when you are setting/deleting breakpoints while running subshells, your changes to breakpoints are local and will be lost after returning to the original script, at least that's what I guess. Example:
$ bdb test.sh
bdb> trace
bdb> ba true
bdb> +(test.sh:2): cd "$(dirname "$(readlink -f "$0")")"
bdb> +(test.sh:2): dirname "$(readlink -f "$0")"
bdb> bl
1 true
bdb> bd 1
# after ^ this there should be no breakpoints
bdb> +(test.sh:2): readlink -f "$0"
+(test.sh:3): echo Testing
# however it persists:
bdb> Testing
+(test.sh:4): echo Testing
bdb> Testing
+(test.sh:5): echo 123
bdb> bl 1
1 true
bdb> 123
Not sure if thats an issue though.
PS Спасибо, в любом случае скрипт полезный, и с год назад мне бы он ооочень пригодился)