Deal with BOL and EOL when ^ and $ don't match in the middle of a string,
authorlxoliva <lxoliva@559672b5-ba27-0410-b829-e8f1faed8b1b>
Fri, 22 Jan 2010 07:58:44 +0000 (07:58 +0000)
committerlxoliva <lxoliva@559672b5-ba27-0410-b829-e8f1faed8b1b>
Fri, 22 Jan 2010 07:58:44 +0000 (07:58 +0000)
in awk and in sed.
Annotate generated sed script with hashbang.
Fix unquoted whitespace.

git-svn-id: http://www.fsfla.org/svn/fsfla/software/linux-libre/scripts@5868 559672b5-ba27-0410-b829-e8f1faed8b1b

deblob-check

index 6d11c0c10f1d61dbb3f17e927790ea325927ce65..182ff82c1c21f7e11d5fa612b918f5265075a4b9 100755 (executable)
@@ -2339,7 +2339,7 @@ set_except () {
     initnc 'static[ ]const[ ]u16[ ]rtl8225z2_rxgain\[\][ ]='
     accept '[ ][ ][ ][ ][ ]\([ ]49,\)*[\n]\([ 0-9,]*[\n]\)*[ ][ ][ ][ ][ ]\( 49,\)*$'
     initnc 'static[ ]const[ ]unsigned[ ]char[ ]wm_vol\[256\][ ]='
-    accept 'domain<N>[ ]<cpumask>[ ]1[ ]2[ ]3[ ]4[ ]5[ ]6[ ]7[ ]8[ ]9[ ]10[ ]11[ ]12[ ]13[ ]14[ ]15[ ]16[ ]17[ ]18[ ]19[ ]20[ ]21[ ]22[ ]23[ ]24[ ]25[ ]26[ ]27[ ]28[ ]29[ ]30[ ]31[ ]32[ ]33[ ]34[ ]35 36$'
+    accept 'domain<N>[ ]<cpumask>[ ]1[ ]2[ ]3[ ]4[ ]5[ ]6[ ]7[ ]8[ ]9[ ]10[ ]11[ ]12[ ]13[ ]14[ ]15[ ]16[ ]17[ ]18[ ]19[ ]20[ ]21[ ]22[ ]23[ ]24[ ]25[ ]26[ ]27[ ]28[ ]29[ ]30[ ]31[ ]32[ ]33[ ]34[ ]35[ ]36$'
     # drivers/net/e1000e/phy.c
     initnc 'static[ ]const[ ]u16[ ]e1000_igp_2_cable_length_table\[\][ ]='
     accept '[  ]24[ ]=>[ ]\[[\n]\([^\n]*[\n]\)*[       ]\]\(,[ ][0-9]\+[ ]=> \[\)\?$'
@@ -2533,9 +2533,11 @@ asmblob="[a-zA-Z_.][^\\n:;#/     ]*[ ]*:\\([^:{}]*\\|$asmcomment\\)*$blobseq\\([^:]
 
 set_sed_main () {
   falsepos=`sed -n 's,^[+]\^*,,p' < "$regex_name" |
-    sed -n "s,[$]$,$eol,; "'1h; 1!H; ${g;s,[\n],\\\\|,g;s,^\(..*\)$,\\\\(\1\\\\),;p;}'`
+    sed -n -e 's,[$]$,\\\\([\\\\n]\\\\|$\\\\),' \
+       -e '1h; 1!H; ${g;s,[\n],\\\\|,g;s,^\(..*\)$,\\\\(\1\\\\),;p;}'`
   orfalseneg=`sed -n 's,^[-],,p' < "$regex_name" |
-    sed -n "s,[$]$,$eol,; "'1h; 1!H; ${g;s,\(^\|[\n]\),\\\\|,g;p;}'`
+    sed -n -e 's,[$]$,\\\\([\\\\n]\\\\|$\\\\),' \
+       -e '1h; 1!H; ${g;s,\(^\|[\n]\),\\\\|,g;p;}'`
 
   case $orfalseneg in
   "")
@@ -2575,6 +2577,8 @@ g
   fi
 
   $echo "
+#! /bin/sed -f
+
 /^$/N
 /^[\\n]\\?;[/][*]\\(end .*\\)\\?[*][/];$/{
   $4