diff -u -r1.46 file.c --- file.c 2000/12/07 15:31:25 1.46 +++ file.c 2000/12/07 15:38:00 @@ -3244,12 +3244,16 @@ y = 1; z = 0; width = 0; - if (parsedtag_get_value(tag, ATTR_BORDER, &w)) { - if (w > 2) - w = BORDER_THICK; - else if (w < 0) { /* weird */ - w = BORDER_THIN; + if (parsedtag_exists(tag, ATTR_BORDER)) { + if (parsedtag_get_value(tag, ATTR_BORDER, &w)) { + if (w > 2) + w = BORDER_THICK; + else if (w < 0) { /* weird */ + w = BORDER_THIN; + } } + else + w = BORDER_THIN; } if (parsedtag_get_value(tag, ATTR_WIDTH, &i)) { if (obuf->table_level == 0) Index: html.c =================================================================== RCS file: /home/okabe/CVS_DB/w3m/html.c,v retrieving revision 1.5 diff -u -r1.5 html.c --- html.c 2000/12/07 08:05:24 1.5 +++ html.c 2000/12/07 15:39:36 @@ -276,7 +276,7 @@ {"fid" , VTYPE_NUMBER, AFLG_INT}, /* 54 ATTR_FID */ {"for_table" , VTYPE_NONE, AFLG_INT}, /* 55 ATTR_FOR_TABLE */ {"framename" , VTYPE_STR, AFLG_INT}, /* 56 ATTR_FRAMENAME */ - {"hborder" , VTYPE_NONE, AFLG_INT}, /* 57 ATTR_HBORDER */ + {"hborder" , VTYPE_NONE, 0}, /* 57 ATTR_HBORDER */ {"hseq" , VTYPE_NUMBER, AFLG_INT}, /* 58 ATTR_HSEQ */ {"no_effect" , VTYPE_NONE, AFLG_INT}, /* 59 ATTR_NO_EFFECT */ {"referer" , VTYPE_STR, AFLG_INT}, /* 60 ATTR_REFERER */ Index: parsetagx.c =================================================================== RCS file: /home/okabe/CVS_DB/w3m/parsetagx.c,v retrieving revision 1.1.2.3 retrieving revision 1.6 diff -u -r1.1.2.3 -r1.6 --- parsetagx.c 2000/12/07 08:04:47 1.1.2.3 +++ parsetagx.c 2000/12/07 15:54:21 1.6 @@ -195,13 +195,11 @@ tag->need_reconstruct = TRUE; continue; } - if (AttrMAP[attr_id].vtype == VTYPE_NONE || value) { - tag->attrid[i] = attr_id; - if (value) - tag->value[i] = cleanup_str(value->ptr); - else - tag->value[i] = NULL; - } + tag->attrid[i] = attr_id; + if (value) + tag->value[i] = cleanup_str(value->ptr); + else + tag->value[i] = NULL; } } @@ -224,14 +222,12 @@ return 0; i = tag->map[id]; - if (AttrMAP[id].vtype == VTYPE_NONE || value) { - tag->attrid[i] = id; - if (value) - tag->value[i] = allocStr(value, 0); - else - tag->value[i] = NULL; - return 1; - } + tag->attrid[i] = id; + if (value) + tag->value[i] = allocStr(value, 0); + else + tag->value[i] = NULL; + return 1; return 0; } @@ -255,7 +251,7 @@ Strcat_char(tagstr, '<'); Strcat_charp(tagstr, tag->tagname); for (i = 0; i < nattr; i++) { - if (parsedtag_exists(tag, TagMAP[tag_id].accept_attribute[i])) { + if (tag->attrid[i] != ATTR_UNKNOWN) { Strcat_char(tagstr, ' '); Strcat_charp(tagstr, AttrMAP[tag->attrid[i]].name); if (tag->value[i])