texlive[53880] Build/source/texk/web2c/xetexdir: xetex.web: fix a

commits+kakuto at tug.org commits+kakuto at tug.org
Sun Feb 23 03:07:16 CET 2020


Revision: 53880
          http://tug.org/svn/texlive?view=revision&revision=53880
Author:   kakuto
Date:     2020-02-23 03:07:16 +0100 (Sun, 23 Feb 2020)
Log Message:
-----------
xetex.web: fix a potential bug in \XeTeXinterchartoks (by Clerk Ma)

Modified Paths:
--------------
    trunk/Build/source/texk/web2c/xetexdir/ChangeLog
    trunk/Build/source/texk/web2c/xetexdir/xetex.web

Modified: trunk/Build/source/texk/web2c/xetexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/xetexdir/ChangeLog	2020-02-23 00:54:23 UTC (rev 53879)
+++ trunk/Build/source/texk/web2c/xetexdir/ChangeLog	2020-02-23 02:07:16 UTC (rev 53880)
@@ -1,3 +1,8 @@
+2020-02-23  Clerk Ma  <maqiyuan130324 at vip.qq.com>
+
+	* xetex.web: Fix a potential bug in the primitive
+	\XeTeXinterchartoks.
+
 2020-02-22  Clerk Ma  <maqiyuan130324 at vip.qq.com>
 
 	* xetex.web: Fix a bug in the primitive \pdfsavepos.

Modified: trunk/Build/source/texk/web2c/xetexdir/xetex.web
===================================================================
--- trunk/Build/source/texk/web2c/xetexdir/xetex.web	2020-02-23 00:54:23 UTC (rev 53879)
+++ trunk/Build/source/texk/web2c/xetexdir/xetex.web	2020-02-23 02:07:16 UTC (rev 53880)
@@ -24188,7 +24188,7 @@
     if prev_class = char_class_boundary then begin {boundary}
       if (state<>token_list) or (token_type<>backed_up_char) then begin
         find_sa_element(inter_char_val, char_class_boundary*char_class_limit + space_class, false);
-        if cur_ptr<>null then begin
+        if (cur_ptr<>null) and (sa_ptr(cur_ptr)<>null) then begin
           if cur_cmd<>letter then cur_cmd:=other_char;
           cur_tok:=(cur_cmd*max_char_val)+cur_chr;
           back_input; token_type:=backed_up_char;
@@ -24198,7 +24198,7 @@
       end
     end else begin
       find_sa_element(inter_char_val, prev_class*char_class_limit + space_class, false);
-      if cur_ptr<>null then begin
+      if (cur_ptr<>null) and (sa_ptr(cur_ptr)<>null) then begin
         if cur_cmd<>letter then cur_cmd:=other_char;
         cur_tok:=(cur_cmd*max_char_val)+cur_chr;
         back_input; token_type:=backed_up_char;
@@ -24214,7 +24214,7 @@
   if XeTeX_inter_char_tokens_en and (space_class<>char_class_ignored) and (prev_class<>char_class_boundary) then begin
     prev_class:=char_class_boundary;
     find_sa_element(inter_char_val, space_class*char_class_limit + char_class_boundary, false); {boundary}
-    if cur_ptr<>null then begin
+    if (cur_ptr<>null) and (sa_ptr(cur_ptr)<>null) then begin
       if cur_cs=0 then begin
         if cur_cmd=char_num then cur_cmd:=other_char;
         cur_tok:=(cur_cmd*max_char_val)+cur_chr;



More information about the tex-live-commits mailing list.