From 2c5eaafc8ea301638676a41ed50383ed0b76c0a1 Mon Sep 17 00:00:00 2001 From: Dai Sato Date: Thu, 19 Apr 2007 12:00:37 +0000 Subject: avoid conflicts between input_alt and img_alt, and fix calculation of labeled line numbers when fold_line=1. [w3m-dev 04211] --- ChangeLog | 8 +++++++- file.c | 12 +++++++----- html.c | 7 ++++--- html.h | 5 +++-- 4 files changed, 21 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0a76d4e..dac42de 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-04-19 Hironori Sakamoto + + * [w3m-dev 04211] input type=image + * file.c, html.[ch]: avoid conflicts between input_alt and img_alt. + fix calculation of labeled line numbers when fold_line=1. + 2007-04-19 Hiroyuki Ito * [w3m-dev 04197] Re: italic text @@ -8794,4 +8800,4 @@ a * [w3m-dev 03276] compile error on EWS4800 * release-0-2-1 * import w3m-0.2.1 -$Id: ChangeLog,v 1.975 2007/04/19 11:42:29 inu Exp $ +$Id: ChangeLog,v 1.976 2007/04/19 12:00:37 inu Exp $ diff --git a/file.c b/file.c index e48965f..14294ab 100644 --- a/file.c +++ b/file.c @@ -1,4 +1,4 @@ -/* $Id: file.c,v 1.250 2006/12/27 02:15:24 ukai Exp $ */ +/* $Id: file.c,v 1.251 2007/04/19 12:00:37 inu Exp $ */ #include "fm.h" #include #include "myctype.h" @@ -2250,7 +2250,7 @@ loadGeneralFile(char *path, ParsedURL *volatile current, char *referer, } else { /* plain text */ int l = atoi(pu.label); - gotoLine(b, l); + gotoRealLine(b, l); b->pos = 0; arrangeCursor(b); } @@ -3161,7 +3161,7 @@ process_img(struct parsed_tag *tag, int width) #else int w, i, nw, n; #endif - int pre_int = FALSE; + int pre_int = FALSE, ext_pre_int = FALSE; Str tmp = Strnew(); if (!parsedtag_get_value(tag, ATTR_SRC, &p)) @@ -3217,6 +3217,8 @@ process_img(struct parsed_tag *tag, int width) parsedtag_get_value(tag, ATTR_HEIGHT, &i); r = NULL; parsedtag_get_value(tag, ATTR_USEMAP, &r); + if (parsedtag_exists(tag, ATTR_PRE_INT)) + ext_pre_int = TRUE; tmp = Strnew_size(128); #ifdef USE_IMAGE @@ -3445,7 +3447,7 @@ process_img(struct parsed_tag *tag, int width) } #endif Strcat_charp(tmp, ""); - if (pre_int) + if (pre_int && !ext_pre_int) Strcat_charp(tmp, ""); if (r) { Strcat_charp(tmp, ""); @@ -3584,7 +3586,7 @@ process_input(struct parsed_tag *tag) Strcat(tmp, Sprintf(" width=\"%d\"", iw)); if (parsedtag_get_value(tag, ATTR_HEIGHT, &ih)) Strcat(tmp, Sprintf(" height=\"%d\"", ih)); - Strcat_charp(tmp, ">"); + Strcat_charp(tmp, " pre_int>"); Strcat_charp(tmp, ""); return tmp; } diff --git a/html.c b/html.c index 0546793..1b888fe 100644 --- a/html.c +++ b/html.c @@ -1,4 +1,4 @@ -/* $Id: html.c,v 1.29 2006/12/10 11:06:12 inu Exp $ */ +/* $Id: html.c,v 1.30 2007/04/19 12:00:38 inu Exp $ */ #include "html.h" /* Define HTML Tag Infomation Table */ @@ -29,9 +29,9 @@ unsigned char ALST_PRE[] = { ATTR_FOR_TABLE, ATTR_CORE }; #define MAXA_PRE MAXA_CORE + 1 unsigned char ALST_IMG[] = { ATTR_SRC, ATTR_ALT, ATTR_WIDTH, ATTR_HEIGHT, ATTR_ALIGN, ATTR_USEMAP, - ATTR_ISMAP, ATTR_TITLE, ATTR_CORE + ATTR_ISMAP, ATTR_TITLE, ATTR_PRE_INT, ATTR_CORE }; -#define MAXA_IMG MAXA_CORE + 8 +#define MAXA_IMG MAXA_CORE + 9 unsigned char ALST_TABLE[] = { ATTR_BORDER, ATTR_WIDTH, ATTR_HBORDER, ATTR_CELLSPACING, ATTR_CELLPADDING, ATTR_VSPACE, ATTR_CORE @@ -348,4 +348,5 @@ TagAttrInfo AttrMAP[MAX_TAGATTR] = { {"referer", VTYPE_STR, AFLG_INT}, /* 71 ATTR_REFERER */ {"selectnumber", VTYPE_NUMBER, AFLG_INT}, /* 72 ATTR_SELECTNUMBER */ {"textareanumber", VTYPE_NUMBER, AFLG_INT}, /* 73 ATTR_TEXTAREANUMBER */ + {"pre_int", VTYPE_NONE, AFLG_INT}, /* 74 ATTR_PRE_INT */ }; diff --git a/html.h b/html.h index 347a8c1..4d33f66 100644 --- a/html.h +++ b/html.h @@ -1,4 +1,4 @@ -/* $Id: html.h,v 1.27 2006/12/10 11:06:12 inu Exp $ */ +/* $Id: html.h,v 1.28 2007/04/19 12:00:38 inu Exp $ */ #ifndef _HTML_H #define _HTML_H #ifdef USE_SSL @@ -301,8 +301,9 @@ typedef struct { #define ATTR_REFERER 71 #define ATTR_SELECTNUMBER 72 #define ATTR_TEXTAREANUMBER 73 +#define ATTR_PRE_INT 74 -#define MAX_TAGATTR 74 +#define MAX_TAGATTR 75 /* HTML Tag Information Table */ -- cgit v1.2.3