diff options
Diffstat (limited to 'src/libserver/html.c')
-rw-r--r-- | src/libserver/html.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/libserver/html.c b/src/libserver/html.c index d41ae78d9..85602aec5 100644 --- a/src/libserver/html.c +++ b/src/libserver/html.c @@ -2077,12 +2077,20 @@ rspamd_html_process_font_size (const gchar *line, guint len, guint *fs, len --; } - rspamd_strlcpy (numbuf, p, MIN (sizeof (numbuf), len + 1)); - sz = strtod (numbuf, &err); + if (g_ascii_isdigit (*p)) { + rspamd_strlcpy (numbuf, p, MIN (sizeof (numbuf), len + 1)); + sz = strtod (numbuf, &err); - /* Now check leftover */ - if (sz < 0) { - sz = 0; + /* Now check leftover */ + if (sz < 0) { + sz = 0; + } + } + else { + /* Ignore the rest */ + failsafe = TRUE; + sz = is_css ? 16 : 1; + /* TODO: add textual fonts descriptions */ } if (err && *err != '\0') { |