emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/composite.c,v


From: Kenichi Handa
Subject: [Emacs-diffs] Changes to emacs/src/composite.c,v
Date: Thu, 18 Sep 2008 06:20:16 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Kenichi Handa <handa>   08/09/18 06:20:13

Index: composite.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/composite.c,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -b -r1.65 -r1.66
--- composite.c 17 Sep 2008 21:25:29 -0000      1.65
+++ composite.c 18 Sep 2008 06:20:12 -0000      1.66
@@ -812,9 +812,8 @@
       CHECK_STRING (string);
       if (! STRING_MULTIBYTE (current_buffer->enable_multibyte_characters))
        error ("Attempt to shape unibyte text");
-      CHECK_NATNUM (start);
+      /* FROM and TO are checked by the caller.  */
       from = XINT (start);
-      CHECK_NATNUM (end);
       to = XINT (end);
       if (from < 0 || from > to || to > SCHARS (string))
        args_out_of_range_3 (string, start, end);
@@ -1027,7 +1026,10 @@
       else
        FETCH_CHAR_ADVANCE (c, charpos, bytepos);
       if (c == '\n')
+       {
+         cmp_it->ch = -2;
        break;
+       }
       val = CHAR_TABLE_REF (Vcomposition_function_table, c);
       if (! NILP (val))
        {
@@ -1050,7 +1052,6 @@
        }
     }
   cmp_it->stop_pos = charpos;
-  cmp_it->ch = -2;
 }
 
 /* Check if the character at CHARPOS (and BYTEPOS) is composed
@@ -1491,6 +1492,8 @@
   Lisp_Object gstring, header;
   EMACS_INT frompos, topos;
 
+  CHECK_NATNUM (from);
+  CHECK_NATNUM (to);
   if (! NILP (font_object))
     CHECK_FONT_OBJECT (font_object);
   header = fill_gstring_header (Qnil, from, to, font_object, string);
@@ -1498,10 +1501,8 @@
   if (! NILP (gstring))
     return gstring;
 
-  /* Maybe we should check this at the function's entry.  --Stef  */
-  CHECK_NATNUM (from); frompos = XINT (from);
-  CHECK_NATNUM (to);   topos = XINT (to);
-
+  frompos = XINT (from);
+  topos = XINT (to);
   if (LGSTRING_GLYPH_LEN (gstring_work) < topos - frompos)
     gstring_work = Fmake_vector (make_number (topos - frompos + 2), Qnil);
   LGSTRING_SET_HEADER (gstring_work, header);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]