diff options
author | Tatsuya Kinoshita <tats@debian.org> | 2016-08-19 10:05:25 +0000 |
---|---|---|
committer | Tatsuya Kinoshita <tats@debian.org> | 2016-08-19 10:05:25 +0000 |
commit | 0fba2f1a6eb6861206ad120a02af2643938082cd (patch) | |
tree | 35b9ced6fdbe6c34520d2161f3d6ea5b036d85e4 | |
parent | Update ChangeLog (diff) | |
download | w3m-0fba2f1a6eb6861206ad120a02af2643938082cd.tar.gz w3m-0fba2f1a6eb6861206ad120a02af2643938082cd.zip |
Fix uninitialised values for <i> and <dd>
Bug-Debian: https://github.com/tats/w3m/issues/16
-rw-r--r-- | file.c | 6 | ||||
-rw-r--r-- | parsetagx.c | 1 |
2 files changed, 7 insertions, 0 deletions
@@ -4686,6 +4686,12 @@ HTMLtagproc1(struct parsed_tag *tag, struct html_feed_environ *h_env) case HTML_DD: CLOSE_A; CLOSE_DT; + if (h_env->envc == 0 || + (h_env->envc_real < h_env->nenv && + envs[h_env->envc].env != HTML_DL && + envs[h_env->envc].env != HTML_DL_COMPACT)) { + PUSH_ENV(HTML_DL); + } if (envs[h_env->envc].env == HTML_DL_COMPACT) { if (obuf->pos > envs[h_env->envc].indent) flushline(h_env, obuf, envs[h_env->envc].indent, 0, diff --git a/parsetagx.c b/parsetagx.c index 3435f9f..cd1ff58 100644 --- a/parsetagx.c +++ b/parsetagx.c @@ -126,6 +126,7 @@ parse_tag(char **s, int internal) *(p++) = *(q++); SKIP_BLANKS(q); } + tagname[0] = '\0'; while (*q && !IS_SPACE(*q) && !(tagname[0] != '/' && *q == '/') && *q != '>' && p - tagname < MAX_TAG_LEN - 1) { *(p++) = TOLOWER(*q); |