It's come to my attention that running bash --debugger doesn't source DEBUGGER_START_FILE when the script to be debugged isn't followed by any arguments.
An example will probably make this clear. Suppose */tmp/foo.sh* is: echo hi And you run: bash --debugger /tmp/foo.sh I get "hi" printed without DEBUGGER_START_FILE sourced. However it is sourced if I run bash --debugger /tmp/foo.sh "" Investigating why this might be, I see this in bash/shell.c at line 724: if (debugging_mode && locally_skip_execution == 0 && running_setuid == 0 && dollar_vars[1]) start_debugger (); I can see why you wouldn't want to source DEBUGGER_START_FILE if a script name (/tmp/foo.sh) were not given, but I'm not sure why you would want to skip if it didn't have an argument. So shouldn't the end of that test be dollar_vars[0] instead? Thanks.