summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2014-05-06 13:17:23 +0000
committerNorbert Preining <preining@logic.at>2014-05-06 13:17:23 +0000
commit41f2d5d96274b43967f04cafa2e80ed8f9bc454d (patch)
treee328f3dac7a30d6a49381416b90c49ae758a0476
parent3a666844727506e99750a1ff5a3097f651b6f94e (diff)
add a few inhibit_glue_flag reset statements, from Kitagawa-san
git-svn-id: svn://tug.org/texlive/trunk@33881 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/ptexdir/ChangeLog5
-rw-r--r--Build/source/texk/web2c/ptexdir/ptex-base.ch54
2 files changed, 57 insertions, 2 deletions
diff --git a/Build/source/texk/web2c/ptexdir/ChangeLog b/Build/source/texk/web2c/ptexdir/ChangeLog
index 1b13f882cf9..555d4f67982 100644
--- a/Build/source/texk/web2c/ptexdir/ChangeLog
+++ b/Build/source/texk/web2c/ptexdir/ChangeLog
@@ -1,3 +1,8 @@
+2014-05-06 Hironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
+
+ * ptex-base.ch: reset inhibit_glue_flag in several places
+ where it was missing.
+
2014-05-02 Peter Breitenlohner <peb@mppmu.mpg.de>
* ptrip/ptrip.diffs: Updated for TL14.
diff --git a/Build/source/texk/web2c/ptexdir/ptex-base.ch b/Build/source/texk/web2c/ptexdir/ptex-base.ch
index 8b5451b4879..e424b83c6da 100644
--- a/Build/source/texk/web2c/ptexdir/ptex-base.ch
+++ b/Build/source/texk/web2c/ptexdir/ptex-base.ch
@@ -4471,7 +4471,8 @@ main_loop:@<Append character |cur_chr| and the following characters (if~any)
main_loop_j:@<Append KANJI-character |cur_chr|
to the current hlist in the current font; |goto reswitch| when
a non-character has been fetched@>;
-main_loop:@<Append character |cur_chr| and the following characters (if~any)
+main_loop: inhibit_glue_flag:=false;
+@<Append character |cur_chr| and the following characters (if~any)
to the current hlist in the current font; |goto reswitch| when
a non-character has been fetched@>;
@z
@@ -4563,6 +4564,7 @@ if cur_cmd=inhibit_glue then
if cur_cmd=no_boundary then bchar:=non_char;
cur_r:=bchar; lig_stack:=null; goto main_lig_loop;
main_loop_lookahead+1: adjust_space_factor;
+inhibit_glue_flag:=false;
fast_get_avail(lig_stack); font(lig_stack):=main_f;
cur_r:=qi(cur_chr); character(lig_stack):=cur_r;
if cur_r=false_bchar then cur_r:=non_char {this prevents spurious ligatures}
@@ -4598,12 +4600,24 @@ else begin link(tail):=q; tail:=q;
end
@z
+@x [47.1060] pTeX: append_glue, inhibit_glue_flag
+end; {now |cur_val| points to the glue specification}
+tail_append(new_glue(cur_val));
+if s>=skip_code then
+@y
+end; {now |cur_val| points to the glue specification}
+tail_append(new_glue(cur_val));
+inhibit_glue_flag := false;
+if s>=skip_code then
+@z
+
@x [47.1061] l.21277 - pTeX: append kern
begin s:=cur_chr; scan_dimen(s=mu_glue,false,false);
tail_append(new_kern(cur_val)); subtype(tail):=s;
end;
@y
begin s:=cur_chr; scan_dimen(s=mu_glue,false,false);
+inhibit_glue_flag := false;
if not is_char_node(tail)and(type(tail)=disp_node) then
begin prev_append(new_kern(cur_val)); subtype(prev_node):=s;
end
@@ -4911,6 +4925,7 @@ vmode+letter,vmode+other_char,vmode+char_num,vmode+char_given,
@x [47.1091] l.21096 - pTeX: new_graf, adjust direction
push_nest; mode:=hmode; space_factor:=1000; set_cur_lang; clang:=cur_lang;
@y
+inhibit_glue_flag := false;
push_nest; adjust_dir:=abs(direction);
mode:=hmode; space_factor:=1000; set_cur_lang; clang:=cur_lang;
@z
@@ -5432,7 +5447,8 @@ mmode+char_num: begin scan_char_num; cur_chr:=cur_val;
print_err("Not one-byte family");
help1("IGNORE.");@/
error;
- end
+ end;
+ inhibit_glue_flag:=false;
@z
@x [48.1158] l.22690 - pTeX: scan_math
@@ -5454,6 +5470,14 @@ scan_math(nucleus(tail));
scan_math(nucleus(tail),kcode_noad(tail));
@z
+@x [48.1167] pTeX: vcenter, inhibit_glue_flag
+mmode+vcenter: begin scan_spec(vcenter_group,false); normal_paragraph;
+@y
+mmode+vcenter: begin
+ scan_spec(vcenter_group,false); normal_paragraph;
+ inhibit_glue_flag:=false;
+@z
+
@x [48.1164] l.22790 - pTeX: vcenter : dir
vcenter_group: begin end_graf; unsave; save_ptr:=save_ptr-2;
p:=vpack(link(head),saved(1),saved(0)); pop_nest;
@@ -5470,12 +5494,31 @@ vcenter_group: begin end_graf; unsave; save_ptr:=save_ptr-2;
end;
@z
+@x [48.1176] pTeX: sub_sup, inhibit_glue_flag
+procedure sub_sup;
+var t:small_number; {type of previous sub/superscript}
+@!p:pointer; {field to be filled by |scan_math|}
+begin t:=empty; p:=null;
+@y
+procedure sub_sup;
+var t:small_number; {type of previous sub/superscript}
+@!p:pointer; {field to be filled by |scan_math|}
+begin t:=empty; p:=null;
+inhibit_glue_flag:=false;
+@z
+
@x [48.1176] l.22864 - pTeX: scan_math
scan_math(p);
@y
scan_math(p,null);
@z
+@x [48.1181] pTeX: math_fraction, inhibit_glue_flag
+begin c:=cur_chr;
+@y
+begin c:=cur_chr; inhibit_glue_flag:=false;
+@z
+
@x [48.1186] l.23006 - pTeX: copy kanji code
if math_type(supscr(p))=empty then
begin mem[saved(0)].hh:=mem[nucleus(p)].hh;
@@ -5484,6 +5527,12 @@ scan_math(p,null);
begin mem[saved(0)].hh:=mem[nucleus(p)].hh;
@z
+@x [48.1191] pTeX: math_left_right, inhibit_glue_flag
+begin t:=cur_chr;
+@y
+begin t:=cur_chr; inhibit_glue_flag:=false;
+@z
+
@x [48.1194] l.23078 - pTeX: set cur_kanji_skip, cur_xkanji_skip
var l:boolean; {`\.{\\leqno}' instead of `\.{\\eqno}'}
@y
@@ -6717,6 +6766,7 @@ written in section 48.
procedure set_math_kchar(@!c:integer);
var p:pointer; {the new noad}
begin p:=new_noad; math_type(nucleus(p)):=math_jchar;
+inhibit_glue_flag:=false;
character(nucleus(p)):=qi(0);
math_kcode(p):=c; fam(nucleus(p)):=cur_jfam;
if font_dir[fam_fnt(fam(nucleus(p))+cur_size)]=dir_default then