diff options
| author | Ruslan Ermilov <ru@FreeBSD.org> | 2002-10-15 10:42:07 +0000 |
|---|---|---|
| committer | Ruslan Ermilov <ru@FreeBSD.org> | 2002-10-15 10:42:07 +0000 |
| commit | 3018e8e5c7f5410a2f2e1a77c3979358a5c58ce9 (patch) | |
| tree | 5f0ec4aa6f0f7e8a3ae80a5ac7904c91625ae3a3 | |
| parent | d42dfbbb2c9fcb6a620a80f3a9d4f4c8fcd7b923 (diff) | |
Notes
| -rw-r--r-- | contrib/groff/src/roff/troff/node.cc | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/contrib/groff/src/roff/troff/node.cc b/contrib/groff/src/roff/troff/node.cc index 650bf0e8f7aa..58a3cd8ed360 100644 --- a/contrib/groff/src/roff/troff/node.cc +++ b/contrib/groff/src/roff/troff/node.cc @@ -1014,7 +1014,8 @@ void troff_output_file::put_char_width(charinfo *ci, tfont *tf, } else if (tcommand_flag) { if (tbuf_len > 0 && hpos == output_hpos && vpos == output_vpos - && gcol == current_glyph_color && fcol == current_fill_color + && (!gcol || gcol == current_glyph_color) + && (!fcol || fcol == current_fill_color) && kk == tbuf_kern && tbuf_len < TBUF_SIZE) { check_charinfo(tf, ci); @@ -1039,7 +1040,8 @@ void troff_output_file::put_char_width(charinfo *ci, tfont *tf, check_charinfo(tf, ci); // check_output_limits(output_hpos, output_vpos); if (vpos == output_vpos - && gcol == current_glyph_color && fcol == current_fill_color + && (!gcol || gcol == current_glyph_color) + && (!fcol || fcol == current_fill_color) && n > 0 && n < 100 && !force_motion) { put(char(n/10 + '0')); put(char(n%10 + '0')); @@ -1087,7 +1089,8 @@ void troff_output_file::put_char(charinfo *ci, tfont *tf, else { int n = hpos - output_hpos; if (vpos == output_vpos - && gcol == current_glyph_color && fcol == current_fill_color + && (!gcol || gcol == current_glyph_color) + && (!fcol || fcol == current_fill_color) && n > 0 && n < 100) { put(char(n/10 + '0')); put(char(n%10 + '0')); @@ -1162,7 +1165,7 @@ void troff_output_file::set_font(tfont *tf) void troff_output_file::fill_color(color *col) { - if ((current_fill_color == col) || !color_flag) + if (!col || current_fill_color == col || !color_flag) return; flush_tbuf(); put("DF"); @@ -1210,7 +1213,7 @@ void troff_output_file::fill_color(color *col) void troff_output_file::glyph_color(color *col) { - if ((current_glyph_color == col) || !color_flag) + if (!col || current_glyph_color == col || !color_flag) return; flush_tbuf(); put("m"); |
