* charset.c (syms_of_charset): Don't read past end of string.
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 19 Nov 2013 08:57:22 +0000 (00:57 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 19 Nov 2013 08:57:22 +0000 (00:57 -0800)
src/ChangeLog
src/charset.c

index 80952b7..7b225d7 100644 (file)
@@ -1,3 +1,7 @@
+2013-11-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * charset.c (syms_of_charset): Don't read past end of string.
+
 2013-11-19  Glenn Morris  <rgm@gnu.org>
 
        * frame.c (Fhandle_focus_in, Fhandle_focus_out): Doc fixes.
index 4a36f80..2ef0602 100644 (file)
@@ -2428,19 +2428,19 @@ the value may be a list of mnemonics.  */);
   Vcurrent_iso639_language = Qnil;
 
   charset_ascii
-    = define_charset_internal (Qascii, 1, "\x00\x7F\x00\x00\x00\x00",
+    = define_charset_internal (Qascii, 1, "\x00\x7F\0\0\0\0\0",
                               0, 127, 'B', -1, 0, 1, 0, 0);
   charset_iso_8859_1
-    = define_charset_internal (Qiso_8859_1, 1, "\x00\xFF\x00\x00\x00\x00",
+    = define_charset_internal (Qiso_8859_1, 1, "\x00\xFF\0\0\0\0\0",
                               0, 255, -1, -1, -1, 1, 0, 0);
   charset_unicode
-    = define_charset_internal (Qunicode, 3, "\x00\xFF\x00\xFF\x00\x10",
+    = define_charset_internal (Qunicode, 3, "\x00\xFF\x00\xFF\x00\x10\0",
                               0, MAX_UNICODE_CHAR, -1, 0, -1, 1, 0, 0);
   charset_emacs
-    = define_charset_internal (Qemacs, 3, "\x00\xFF\x00\xFF\x00\x3F",
+    = define_charset_internal (Qemacs, 3, "\x00\xFF\x00\xFF\x00\x3F\0",
                               0, MAX_5_BYTE_CHAR, -1, 0, -1, 1, 1, 0);
   charset_eight_bit
-    = define_charset_internal (Qeight_bit, 1, "\x80\xFF\x00\x00\x00\x00",
+    = define_charset_internal (Qeight_bit, 1, "\x80\xFF\0\0\0\0\0",
                               128, 255, -1, 0, -1, 0, 1,
                               MAX_5_BYTE_CHAR + 1);
   charset_unibyte = charset_iso_8859_1;