2013-10-11 Luis Machado * gcore.in: Call gdb using the full path to the gcore script. diff --git a/gdb/gcore.in b/gdb/gcore.in index 9c5b14d..dc6a8f9 100644 --- a/gdb/gcore.in +++ b/gdb/gcore.in @@ -49,9 +49,26 @@ rc=0 # Loop through pids for pid in $* do +# Attempt to fetch the absolute path to the gcore script that was +# called. +binary_path=`dirname "$0"` + + if test "x$binary_path" = x. ; then + # We got "." back as a path. This means the user executed + # the gcore script locally (i.e. ./gcore) or called the + # script via a shell interpreter (i.e. sh gcore). We use + # the "which" command to locate the real path of the gcore + # script, disambiguating this situation. + binary_path_from_env=`which "$0"` + binary_path=`dirname $binary_path_from_env` + fi + + # Add a slash to the path. + binary_path="$binary_path/" + # `