Update.
authorUlrich Drepper <drepper@redhat.com>
Fri, 11 Jan 2002 06:47:31 +0000 (06:47 +0000)
committerUlrich Drepper <drepper@redhat.com>
Fri, 11 Jan 2002 06:47:31 +0000 (06:47 +0000)
2002-01-10  Ulrich Drepper  <drepper@redhat.com>

* locale/programs/charmap.c (new_width): Check whether byte
sequences for both ends of range have the same length.

ChangeLog
locale/programs/charmap.c

index 4f94e49..35db6ba 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-10  Ulrich Drepper  <drepper@redhat.com>
+
+       * locale/programs/charmap.c (new_width): Check whether byte
+       sequences for both ends of range have the same length.
+
 2002-01-09  Jakub Jelinek  <jakub@redhat.com>
 
        * elf/elf.h (SHN_UNDEF): Remove duplicate definition.
index 7840242..815a28d 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996,1998,1999,2000,2001 Free Software Foundation, Inc.
+/* Copyright (C) 1996,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
 
@@ -868,6 +868,16 @@ new_width (struct linereader *cmfile, struct charmap_t *result,
          lr_error (cmfile, _("unknown character `%s'"), to);
          return;
        }
+
+      /* Make sure the number of bytes for the end points of the range
+        is correct.  */
+      if (from_val->nbytes != to_val->nbytes)
+       {
+         lr_error (cmfile, _("\
+number of bytes for byte sequence of beginning and end of range not the same: %d vs %d"),
+                   from_val->nbytes, to_val->nbytes);
+         return;
+       }
     }
 
   if (result->nwidth_rules >= result->nwidth_rules_max)