diff --git a/doc/bugs/git-annex:_Argument_list_too_long.mdwn b/doc/bugs/git-annex:_Argument_list_too_long.mdwn index f54d481b5b..f12d5da65b 100644 --- a/doc/bugs/git-annex:_Argument_list_too_long.mdwn +++ b/doc/bugs/git-annex:_Argument_list_too_long.mdwn @@ -33,3 +33,8 @@ Log from the web GUI: # End of transcript or log. """]] + +> [[done]]; I have added a guard to runshell to detect when it has +> started to loop. Although I don't understand how a system could be +> misconfigured to let that happen, without going far out of your way to +> mess it up, it's a failure mode that's worth guarding against. --[[Joey]] diff --git a/standalone/linux/runshell b/standalone/linux/runshell index a36e490839..6e2e219066 100755 --- a/standalone/linux/runshell +++ b/standalone/linux/runshell @@ -19,6 +19,9 @@ if [ ! -e "$base/bin/git" ]; then echo "** base directory $base does not contain bin/git" >&2 exit 1 fi +if [ -n "$GIT_ANNEX_STANDLONE_ENV" ]; then + echo "** runshell loop detected!"> &2 +fi # Get absolute path to base, to avoid breakage when things change directories. orig="$(pwd)" diff --git a/standalone/osx/git-annex.app/Contents/MacOS/runshell b/standalone/osx/git-annex.app/Contents/MacOS/runshell index 9f1457e250..5094ad0b25 100755 --- a/standalone/osx/git-annex.app/Contents/MacOS/runshell +++ b/standalone/osx/git-annex.app/Contents/MacOS/runshell @@ -21,6 +21,9 @@ if [ ! -e "$bundle/git" ]; then echo "** bundle directory $bundle does not contain git" >&2 exit 1 fi +if [ -n "$GIT_ANNEX_STANDLONE_ENV" ]; then + echo "** runshell loop detected!"> &2 +fi # Get absolute path to base, to avoid breakage when things change directories. orig="$(pwd)"