diff options
author | Tatsuya Kinoshita <tats@vega.ocn.ne.jp> | 2011-05-04 07:41:45 +0000 |
---|---|---|
committer | Tatsuya Kinoshita <tats@vega.ocn.ne.jp> | 2011-05-04 07:41:45 +0000 |
commit | 5397d09e585a1938fb64bc9c5cd5daed1959eb90 (patch) | |
tree | cd2673d4ca9584c426f9291e54b7bbb508c11e76 /table.c | |
parent | Adding upstream version 0.5.2 (diff) | |
download | w3m-5397d09e585a1938fb64bc9c5cd5daed1959eb90.tar.gz w3m-5397d09e585a1938fb64bc9c5cd5daed1959eb90.zip |
Adding upstream version 0.5.3upstream/0.5.3
Diffstat (limited to 'table.c')
-rw-r--r-- | table.c | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -1,4 +1,4 @@ -/* $Id: table.c,v 1.55 2007/05/23 13:07:44 inu Exp $ */ +/* $Id: table.c,v 1.58 2010/08/09 11:59:19 htrb Exp $ */ /* * HTML table */ @@ -2408,6 +2408,8 @@ table_close_anchor0(struct table *tbl, struct table_mode *mode) case HTML_N_COLGROUP:\ case HTML_COL +#define ATTR_ROWSPAN_MAX 32766 + static int feed_table_tag(struct table *tbl, char *line, struct table_mode *mode, int width, struct parsed_tag *tag) @@ -2592,6 +2594,9 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode, else valign = HTT_MIDDLE; if (parsedtag_get_value(tag, ATTR_ROWSPAN, &rowspan)) { + if(rowspan > ATTR_ROWSPAN_MAX) { + rowspan = ATTR_ROWSPAN_MAX; + } if ((tbl->row + rowspan) >= tbl->max_rowsize) check_row(tbl, tbl->row + rowspan); } @@ -2912,6 +2917,12 @@ feed_table_tag(struct table *tbl, char *line, struct table_mode *mode, check_rowcol(tbl, mode); if (i == 0) { Str tmp = process_anchor(tag, line); + if (displayLinkNumber) + { + Str t = getLinkNumberStr(-1); + feed_table_inline_tag(tbl, NULL, mode, t->length); + Strcat(tmp, t); + } pushdata(tbl, tbl->row, tbl->col, tmp->ptr); } else |