From 26d3c3dbd6d7c7334e09ab4c2b3df498d74a6dcb Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Mon, 9 Apr 2012 14:49:10 +0200 Subject: [PATCH] --- yaml --- r: 308518 b: refs/heads/master c: d6686da814c884e341d3bd8aa54947c91cb678be h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/scripts/config | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) 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 ;;