diff options
author | Takuji Tanaka <ttk@t-lab.opal.ne.jp> | 2024-02-24 06:20:54 +0000 |
---|---|---|
committer | Takuji Tanaka <ttk@t-lab.opal.ne.jp> | 2024-02-24 06:20:54 +0000 |
commit | 3536c4c084e764a0a3193ffbf487dc14ac94ba50 (patch) | |
tree | 09c9b78a06fd68af6d888f7386d17f36e080a142 /Build | |
parent | 24299cf967811f1edeaa83ab369c8636fd54e46a (diff) |
xetex: Tweak for safe
git-svn-id: svn://tug.org/texlive/trunk@70123 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/web2c/xetexdir/xetex.ch | 10 |
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); |