Eric Blake <[EMAIL PROTECTED]> writes:

> +  # Remove trailing slashes.
> +  case $ac_val in
> +    / | // ) ;;
> +    */ ) eval $ac_var='`echo "$ac_val" | sed "s|/*\$||"`' ;;
> +  esac

This mishandles ///, no?  Also, 'expr' is more reliable in the
presence of weird characters, such as backslashes.  I installed this:

2007-10-05  Paul Eggert  <[EMAIL PROTECTED]>

        * lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Handle "///"
        correctly.

diff --git a/lib/autoconf/general.m4 b/lib/autoconf/general.m4
index 0f8a5dc..10df399 100644
--- a/lib/autoconf/general.m4
+++ b/lib/autoconf/general.m4
@@ -904,8 +904,9 @@ do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
   case $ac_val in
-    / | // ) ;;
-    */ ) eval $ac_var='`echo "$ac_val" | sed "s|/*\$||"`' ;;
+    */ )
+      ac_val=`expr "X$ac_val" : 'X\(.*[[^/]]\)' \| "X$ac_val" : 'X\(.*\)'`
+      eval $ac_var=\$ac_val;;
   esac
   # Be sure to have absolute directory names.
   case $ac_val in


Reply via email to