summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-03-10 16:16:27 +0000
committernagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-03-10 16:16:27 +0000
commit735f7a510e2a15d3046d7e835cde2c8f3b658848 (patch)
tree10bd370dfc6ead93666960ebc7f9e25af6660f14
parent7449059cc64ead5a8e85b56db423faf0c8f21493 (diff)
merge revision(s) 39506,39514: [Backport #7959]
* configure.in (unexpand_shvar): get rid of non-portable shell behavior on OpenBSD, so no extra quotes. [Bug #7959] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@39709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--configure.in7
-rw-r--r--version.h2
3 files changed, 9 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index ac7b2f261c..65410e9c75 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Mar 11 01:16:12 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * configure.in (unexpand_shvar): get rid of non-portable shell
+ behavior on OpenBSD, so no extra quotes. [Bug #7959]
+
Mon Mar 11 01:12:50 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (IS_LABEL_POSSIBLE): allow labels for keyword arguments just
diff --git a/configure.in b/configure.in
index 8179e16d91..aa0b8db87d 100644
--- a/configure.in
+++ b/configure.in
@@ -3203,19 +3203,18 @@ shvar_to_cpp() {
}
unexpand_shvar() {
- local var=$1 val n v expr quote
+ local var=$1 val n v expr
shift
test "$#" -eq 0 && return
- quote=['s/${[^${}"]*}/"&"/g']
for n do
eval v='"$'$n'"'
- v="`echo \"$v\" | sed -e \"$quote\" -e ['s/[][$|.\\?*]/\\\\&/g']`"
+ v="`echo \"$v\" | sed -e ['s/${[^${}"]*}/"&"/g'] -e ['s/[][$|.\\?*]/\\\\&/g']`"
if test -n "$v"; then
expr=["${expr};s|"'\("[^$"]*\)'"$v|\\1\${$n}\"|g"]
AS_CASE(["$v"], [*'${'*'}'*], [expr=["$expr;s|$v|\"\${$n}\"|g"]])
fi
done
- expr=["${quote}${expr};"'s/"\(\${[^${}"]*}\)"/\1/g']
+ expr=['s/${[^${}"]*}/"&"/g;'"${expr};"'s/"\(\${[^${}"]*}\)"/\1/g']
eval $var='"`echo \"\\\"${'$var'}\\\"\" | sed \"$expr;s/\\\"\\\"//g;s/^\\\"//;s/\\\"\\\$//\"`"'
}
diff --git a/version.h b/version.h
index da8008279b..c9640e8e7a 100644
--- a/version.h
+++ b/version.h
@@ -1,6 +1,6 @@
#define RUBY_VERSION "2.0.0"
#define RUBY_RELEASE_DATE "2013-03-11"
-#define RUBY_PATCHLEVEL 53
+#define RUBY_PATCHLEVEL 54
#define RUBY_RELEASE_YEAR 2013
#define RUBY_RELEASE_MONTH 3