summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/xetexdir
diff options
context:
space:
mode:
authorTakuji Tanaka <ttk@t-lab.opal.ne.jp>2024-02-24 06:20:54 +0000
committerTakuji Tanaka <ttk@t-lab.opal.ne.jp>2024-02-24 06:20:54 +0000
commit3536c4c084e764a0a3193ffbf487dc14ac94ba50 (patch)
tree09c9b78a06fd68af6d888f7386d17f36e080a142 /Build/source/texk/web2c/xetexdir
parent24299cf967811f1edeaa83ab369c8636fd54e46a (diff)
xetex: Tweak for safe
git-svn-id: svn://tug.org/texlive/trunk@70123 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/xetexdir')
-rw-r--r--Build/source/texk/web2c/xetexdir/xetex.ch10
1 files changed, 6 insertions, 4 deletions
diff --git a/Build/source/texk/web2c/xetexdir/xetex.ch b/Build/source/texk/web2c/xetexdir/xetex.ch
index 44f35ec24f0..69143dc907b 100644
--- a/Build/source/texk/web2c/xetexdir/xetex.ch
+++ b/Build/source/texk/web2c/xetexdir/xetex.ch
@@ -383,13 +383,15 @@ if quote_char<>0 then print_char(quote_char);
name_of_file[k]:=@"E0 + c div @"1000; incr(k);
name_of_file[k]:=@"80 + (c mod @"1000) div @"40; incr(k);
name_of_file[k]:=@"80 + c mod @"40;
- end else if (c < @"DC00) and (k<file_name_size) then begin
+ end else if (c < @"DC00) and (k+3<file_name_size) then begin
name_of_file[k]:=@"F0 + (c - @"D7C0) div @"1000; incr(k);
name_of_file[k]:=@"80 + ((c - @"D7C0) mod @"1000) div @"4; incr(k);
- name_of_file[k]:=@"80 + (c - @"D7C0) mod @"4 * @"10;
- end else if (c < @"E000) and (k>0) then begin
+ name_of_file[k]:=@"80 + (c - @"D7C0) mod @"4 * @"10; incr(k);
+ name_of_file[k]:=@"80;
+ end else if (c < @"E000) and (k>4) then begin
+ decr(k);
name_of_file[k-1]:=name_of_file[k-1] + (c - @"DC00) div @"40;
- name_of_file[k]:=@"80 + (c - @"DC00) mod @"40;
+ name_of_file[k] :=name_of_file[k] + (c - @"DC00) mod @"40;
end else if (c < @"10000) then begin
name_of_file[k]:=@"E0 + c div @"1000; incr(k);
name_of_file[k]:=@"80 + (c mod @"1000) div @"40; incr(k);