texlive[64777] Build/source/texk/web2c/alephdir: alephdir: sync with

commits+hironobu at tug.org commits+hironobu at tug.org
Sat Oct 22 02:16:13 CEST 2022


Revision: 64777
          http://tug.org/svn/texlive?view=revision&revision=64777
Author:   hironobu
Date:     2022-10-22 02:16:13 +0200 (Sat, 22 Oct 2022)
Log Message:
-----------
alephdir: sync with security fixes of tex.ch

Modified Paths:
--------------
    trunk/Build/source/texk/web2c/alephdir/ChangeLog
    trunk/Build/source/texk/web2c/alephdir/com16bit.ch
    trunk/Build/source/texk/web2c/alephdir/comsrcspec.ch

Modified: trunk/Build/source/texk/web2c/alephdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/alephdir/ChangeLog	2022-10-21 23:50:51 UTC (rev 64776)
+++ trunk/Build/source/texk/web2c/alephdir/ChangeLog	2022-10-22 00:16:13 UTC (rev 64777)
@@ -1,3 +1,12 @@
+2022-10-22  Hironobu Yamashita <h.y.acetaminophen at gmail.com>
+
+	* com16bit.ch: Sync with tex.ch changes:
+	  - 2022-07-16 r63916 to disallow \noexpand\endwrite.
+	  - 2021-07-22 r60013 explicit fmt loading error.
+	  - 2022-09-28 r64547 protect against recursive --halt-on-error.
+	* comsrcspec.ch: Sync with tex.ch changes:
+	  - 2022-09-28 r64547 protect against recursive --halt-on-error.
+
 2022-03-21  Karl Berry  <karl at tug.org>
 
 	* TL'22 release.

Modified: trunk/Build/source/texk/web2c/alephdir/com16bit.ch
===================================================================
--- trunk/Build/source/texk/web2c/alephdir/com16bit.ch	2022-10-21 23:50:51 UTC (rev 64776)
+++ trunk/Build/source/texk/web2c/alephdir/com16bit.ch	2022-10-22 00:16:13 UTC (rev 64777)
@@ -1039,6 +1039,14 @@
 source_filename_stack[0]:=0;full_source_filename_stack[0]:=0;
 @z
 
+% Original report: https://tex.stackexchange.com/questions/609423
+% TeX bug entry: https://tug.org/texmfbug/newbug.html#B155endwrite
+ at x [25.369] l.7717 - disallow \noexpand\endwrite
+if t>=cs_token_flag then
+ at y
+if (t>=cs_token_flag)and(t<>end_write_token) then
+ at z
+
 @x [27.???] set limit when fatal_error
 else fatal_error("*** (cannot \read from terminal in nonstop modes)")
 @y
@@ -2294,7 +2302,7 @@
 if x<>@$ then begin {check that strings are the same}
   wake_up_terminal;
   wterm_ln('---! ', stringcast(name_of_file+1),
-           ' made by different executable version');
+           ' made by different executable version, strings are different');
   goto bad_fmt;
 end;
 undump_int(x);
@@ -2873,9 +2881,15 @@
 @ The |edit_name_start| will be set to point into |str_pool| somewhere after
 its beginning if \TeX\ is supposed to switch to an editor on exit.
 
+Initialize the |stop_at_space| variable for filename parsing.
+
+Initialize the |halting_on_error_p| variable to avoid infloop with
+\.{--halt-on-error}.
+
 @<Set init...@>=
 edit_name_start:=0;
 stop_at_space:=true;
+halting_on_error_p:=false;
 
 @ These are used when we regenerate the representation of the first 256
 strings.

Modified: trunk/Build/source/texk/web2c/alephdir/comsrcspec.ch
===================================================================
--- trunk/Build/source/texk/web2c/alephdir/comsrcspec.ch	2022-10-21 23:50:51 UTC (rev 64776)
+++ trunk/Build/source/texk/web2c/alephdir/comsrcspec.ch	2022-10-22 00:16:13 UTC (rev 64777)
@@ -10,6 +10,7 @@
 @!parse_first_line_p:cinttype; {parse the first line for options}
 @!file_line_error_style_p:cinttype; {format messages as file:line:error}
 @!halt_on_error_p:boolean; {allow only on error.}
+@!halting_on_error_p:boolean; {already trying to halt?}
 
 @!src_specials_p : boolean;
 @!insert_src_special_auto : boolean;
@@ -62,7 +63,12 @@
 @y
 print_char("."); show_context;
 if (halt_on_error_p) then begin
-  history:=fatal_error_stop; jump_out;
+  {If |close_files_and_terminate| generates an error, we'll end up back
+   here; just give up in that case. If files are truncated, too bad.}
+  if (halting_on_error_p) then do_final_end; {quit immediately}
+  halting_on_error_p:=true;
+  history:=fatal_error_stop;
+  jump_out;
 end;
 @z
 



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