Update.
authorUlrich Drepper <drepper@redhat.com>
Fri, 8 Sep 2000 04:31:55 +0000 (04:31 +0000)
committerUlrich Drepper <drepper@redhat.com>
Fri, 8 Sep 2000 04:31:55 +0000 (04:31 +0000)
* iconvdata/tst-tables.sh: Actually return with an error if
something goes wrong.
* iconvdata/tst-table.sh: Return with an error if any of the cmp fails.
* iconvdata/big5hkscs.c (BODY of FROM_LOOP): Reject 0xff as input.

ChangeLog
iconvdata/big5hkscs.c
iconvdata/tst-table.sh
iconvdata/tst-tables.sh

index c24b95e..212eaa8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2000-09-07  Ulrich Drepper  <drepper@redhat.com>
 
+       * iconvdata/tst-tables.sh: Actually return with an error if
+       something goes wrong.
+       * iconvdata/tst-table.sh: Return with an error if any of the cmp fails.
+       * iconvdata/big5hkscs.c (BODY of FROM_LOOP): Reject 0xff as input.
+
        * iconvdata/tst-tables.sh: Add BIG5HKSCS.
 
        * iconvdata/tst-table-to.c (main): Correct cast in iconv call.
index e5097c7..316baa1 100644 (file)
@@ -11727,6 +11727,11 @@ static struct
                                                                              \
        inptr += 2;                                                           \
       }                                                                              \
+    else if (__builtin_expect (ch, 0) == 0xff)                               \
+      {                                                                              \
+       result = __GCONV_ILLEGAL_INPUT;                                       \
+       break;                                                                \
+      }                                                                              \
     else                                                                     \
       ++inptr;                                                               \
                                                                              \
index 4cd2f6e..9b3fcc3 100755 (executable)
@@ -61,15 +61,18 @@ diff ${objpfx}tst-${charset}.table ${objpfx}tst-${charset}.inverse.table | \
   grep '^[<>]' | sed -e 's,^. ,,' > ${objpfx}tst-${charset}.irreversible.table
 
 # Check 1: charmap and iconv forward should be identical.
-cmp -s ${objpfx}tst-${charset}.charmap.table ${objpfx}tst-${charset}.table
+cmp -s ${objpfx}tst-${charset}.charmap.table ${objpfx}tst-${charset}.table ||
+exit 1
 
 # Check 2: the difference between the two iconv directions.
 if test -f ${irreversible}; then
   cat ${objpfx}tst-${charset}.charmap.table ${irreversible} | sort | uniq -u \
     > ${objpfx}tst-${charset}.tmp.table
-  cmp -s ${objpfx}tst-${charset}.tmp.table ${objpfx}tst-${charset}.inverse.table
+  cmp -s ${objpfx}tst-${charset}.tmp.table ${objpfx}tst-${charset}.inverse.table ||
+  exit 1
 else
-  cmp -s ${objpfx}tst-${charset}.table ${objpfx}tst-${charset}.inverse.table
+  cmp -s ${objpfx}tst-${charset}.table ${objpfx}tst-${charset}.inverse.table ||
+  exit 1
 fi
 
 exit 0
index 202b52f..8692b2a 100755 (executable)
@@ -179,7 +179,7 @@ cat <<EOF |
   ISO-IR-197
   TIS-620
   KOI8-U
-  ISIRI-3342
+  #ISIRI-3342                         This charset concept is completely broken
   #
   # Multibyte encodings come here
   #
@@ -205,9 +205,14 @@ cat <<EOF |
 EOF
 while read charset charmap; do
   case ${charset} in \#*) continue;; esac
-  echo "Testing ${charset}" 1>&2
-  ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap} \
-  || { echo "failed: ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}"; status=1; }
+  echo -n "Testing ${charset}" 1>&2
+  if ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}; then
+    echo 1>&2
+  else
+    echo "failed: ./tst-table.sh ${common_objpfx} ${objpfx} ${charset} ${charmap}"
+    echo " *** FAILED ***" 1>&2
+    exit 1
+  fi
 done
 
-exit $status
+exit $?