From b04251c5d08b8310f88f77b68e77547d76128cc2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?M=C3=A5ns=20Rullg=C3=A5rd?= <mans@mansr.com>
Date: Mon, 15 Jun 2009 22:12:21 +0000
Subject: [PATCH] configure: properly quote configure options stored in
 config.*

Originally committed as revision 19201 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 configure | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/configure b/configure
index 38f84a823a3..05e5d191229 100755
--- a/configure
+++ b/configure
@@ -283,6 +283,12 @@ c_escape(){
     echo "$*" | sed 's/["\\]/\\\0/g'
 }
 
+sh_quote(){
+    v=$(echo "$1" | sed "s/'/'\\\\''/g")
+    test "$v" = "${v#*[ |&;<>()$\`\\\"\'*?\[\]#~=%]}" || v="'$v'"
+    echo "$v"
+}
+
 set_all(){
     value=$1
     shift
@@ -1270,9 +1276,9 @@ else
 fi
 
 for v in "$@"; do
-    r="${v#*=}"
-    l="${v%$r}"
-    test "$r" = "${r#* }" || r="'$r'"
+    r=${v#*=}
+    l=${v%"$r"}
+    r=$(sh_quote "$r")
     FFMPEG_CONFIGURATION="${FFMPEG_CONFIGURATION# } ${l}${r}"
 done
 
@@ -2444,7 +2450,7 @@ echo "# Automatically generated by configure - do not modify!" > config.mak
 echo "/* Automatically generated by configure - do not modify! */" > $TMPH
 echo "#ifndef FFMPEG_CONFIG_H" >> $TMPH
 echo "#define FFMPEG_CONFIG_H" >> $TMPH
-echo "#define FFMPEG_CONFIGURATION \"$FFMPEG_CONFIGURATION\"" >> $TMPH
+echo "#define FFMPEG_CONFIGURATION \"$(c_escape $FFMPEG_CONFIGURATION)\"" >> $TMPH
 echo "#define FFMPEG_DATADIR \"$(eval c_escape $datadir)\"" >> $TMPH
 
 echo "FFMPEG_CONFIGURATION=$FFMPEG_CONFIGURATION" >> config.mak
-- 
GitLab