diff options
author | rillig <rillig@pkgsrc.org> | 2006-09-17 22:52:45 +0000 |
---|---|---|
committer | rillig <rillig@pkgsrc.org> | 2006-09-17 22:52:45 +0000 |
commit | a9df3d8786519e472ddeff168bfa4ad6d36623f1 (patch) | |
tree | b5ba9e99bb8352b97323a2395d94de2d13f7a38c /mk/wrapper | |
parent | d32ce9e65f46cf3555abf05f06bbfd3153b40615 (diff) | |
download | pkgsrc-a9df3d8786519e472ddeff168bfa4ad6d36623f1.tar.gz |
When $debug_log is set to ":" and at the same time $IFS is ":", the
command line
$debug_log $arguments
tries to execute the empty command. This results in error messages of
the form
cc[50]: : cannot execute (IRIX)
bash: : command not found (Bash)
: permission denied (NetBSD /bin/sh)
Setting IFS to the original value as soon as possible fixes these bugs.
Fixes PR 34135.
Diffstat (limited to 'mk/wrapper')
-rw-r--r-- | mk/wrapper/arg-source | 4 | ||||
-rw-r--r-- | mk/wrapper/bsd.wrapper.mk | 3 | ||||
-rw-r--r-- | mk/wrapper/cmd-sink-ld | 3 |
3 files changed, 7 insertions, 3 deletions
diff --git a/mk/wrapper/arg-source b/mk/wrapper/arg-source index df969922404..09ace3c732d 100644 --- a/mk/wrapper/arg-source +++ b/mk/wrapper/arg-source @@ -1,4 +1,4 @@ -# $NetBSD: arg-source,v 1.7 2005/06/09 17:06:21 jlam Exp $ +# $NetBSD: arg-source,v 1.8 2006/09/17 22:52:45 rillig Exp $ # # Copyright (c) 2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -74,6 +74,7 @@ while $test $# -gt 0; do list="${arg#$R}" save_IFS="${IFS}"; IFS=":" for dir in $list; do + IFS="${save_IFS}" shquote "$dir"; dir="$shquoted" append_queue argbuf "$R$dir" $debug_log $wrapperlog " (arg-source) push: $R$dir" @@ -98,6 +99,7 @@ while $test $# -gt 0; do *:*) save_IFS="${IFS}"; IFS=":" for dir in $nextarg; do + IFS="${save_IFS}" shquote "$dir"; dir="$shquoted" append_queue argbuf "$R$dir" $debug_log $wrapperlog " (arg-source) push: $R$dir" diff --git a/mk/wrapper/bsd.wrapper.mk b/mk/wrapper/bsd.wrapper.mk index 7d6ebdec37b..499b6b90a0c 100644 --- a/mk/wrapper/bsd.wrapper.mk +++ b/mk/wrapper/bsd.wrapper.mk @@ -1,4 +1,4 @@ -# $NetBSD: bsd.wrapper.mk,v 1.52 2006/07/31 14:53:45 jlam Exp $ +# $NetBSD: bsd.wrapper.mk,v 1.53 2006/09/17 22:52:45 rillig Exp $ # # Copyright (c) 2005 The NetBSD Foundation, Inc. # All rights reserved. @@ -402,6 +402,7 @@ ${_WRAP_COOKIE.${_wrappee_}}: \ *) save_IFS="$$IFS"; \ IFS=":"; \ for dir in $${PATH}; do \ + IFS="$$save_IFS"; \ case $${dir} in \ *${WRAPPER_DIR}*) \ ;; \ diff --git a/mk/wrapper/cmd-sink-ld b/mk/wrapper/cmd-sink-ld index d260a9ea998..fb00b81d324 100644 --- a/mk/wrapper/cmd-sink-ld +++ b/mk/wrapper/cmd-sink-ld @@ -1,4 +1,4 @@ -# $NetBSD: cmd-sink-ld,v 1.2 2004/11/12 05:02:41 jlam Exp $ +# $NetBSD: cmd-sink-ld,v 1.3 2006/09/17 22:52:45 rillig Exp $ # # Copyright (c) 2004 The NetBSD Foundation, Inc. # All rights reserved. @@ -51,6 +51,7 @@ while ! queue_is_empty cmdbuf; do save_IFS="${IFS}"; IFS="," revlist= for opt in $list; do + IFS="${save_IFS}" shquote "$opt"; opt="$shquoted" revlist="$opt $revlist" done |