summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/rcl/rcl_parser.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/rcl/rcl_parser.c b/src/rcl/rcl_parser.c
index 0b69d25bc..7989ece15 100644
--- a/src/rcl/rcl_parser.c
+++ b/src/rcl/rcl_parser.c
@@ -250,6 +250,8 @@ rspamd_cl_lex_number (struct rspamd_cl_parser *parser,
else {
got_dot = TRUE;
need_double = TRUE;
+ rspamd_cl_chunk_skipc (chunk, *p);
+ p ++;
}
}
else if (*p == 'e' || *p == 'E') {
@@ -265,10 +267,14 @@ rspamd_cl_lex_number (struct rspamd_cl_parser *parser,
if (p >= chunk->end) {
return FALSE;
}
- if (!g_ascii_isdigit (*p) && *p != '+' && *p == '-') {
+ if (!g_ascii_isdigit (*p) && *p != '+' && *p != '-') {
/* Wrong exponent sign */
return FALSE;
}
+ else {
+ rspamd_cl_chunk_skipc (chunk, *p);
+ p ++;
+ }
}
}
else {