diff --git a/[refs] b/[refs] index 146b85358c4f..70554eecd0c4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9f420bf0f4a74e404b73b42b7fc3c85c20c64ea7 +refs/heads/master: d6686da814c884e341d3bd8aa54947c91cb678be diff --git a/trunk/scripts/config b/trunk/scripts/config index a7c7c4b8e957..ed6653ef9702 100755 --- a/trunk/scripts/config +++ b/trunk/scripts/config @@ -107,7 +107,8 @@ while [ "$1" != "" ] ; do ;; --set-str) - set_var "CONFIG_$ARG" "CONFIG_$ARG=\"$1\"" + # sed swallows one level of escaping, so we need double-escaping + set_var "CONFIG_$ARG" "CONFIG_$ARG=\"${1//\"/\\\\\"}\"" shift ;; @@ -124,9 +125,11 @@ while [ "$1" != "" ] ; do if [ $? != 0 ] ; then echo undef else - V="${V/CONFIG_$ARG=/}" - V="${V/\"/}" - echo "$V" + V="${V/#CONFIG_$ARG=/}" + V="${V/#\"/}" + V="${V/%\"/}" + V="${V/\\\"/\"}" + echo "${V}" fi fi ;;