diff options
author | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2019-01-08 18:02:00 +0000 |
---|---|---|
committer | Jose Antonio Ortega Ruiz <jao@gnu.org> | 2019-01-08 18:02:00 +0000 |
commit | ab5d045fa8811a9d191c40bcbff996dfca8a2e32 (patch) | |
tree | a5ad2666d0461729296dff122378e4ebb653adb8 /mixlib | |
parent | 8981c9336bd73b0fabe65f449ccbe5fb808bebdd (diff) | |
download | mdk-ab5d045fa8811a9d191c40bcbff996dfca8a2e32.tar.gz mdk-ab5d045fa8811a9d191c40bcbff996dfca8a2e32.tar.bz2 |
Fix for mixasm infinite loop on invalid F-specs (bug #32452)
Thanks to Sascha Wilde.
Diffstat (limited to 'mixlib')
-rw-r--r-- | mixlib/mix_scanner.l | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/mixlib/mix_scanner.l b/mixlib/mix_scanner.l index 9071847..0ad1990 100644 --- a/mixlib/mix_scanner.l +++ b/mixlib/mix_scanner.l @@ -481,9 +481,15 @@ wexpr {expr}({fpart})?(,{expr}({fpart})?)* ADD_INS (); } } - {expr}/")" { + + {expr}/")"(({ws}+.*\n)|\n) { ENTER_EVAL (); } + + {expr}")".+ { + RETURN_ERROR (MIX_PERR_INV_FSPEC, g_strdup_printf ("(%s", yytext)); + } + . RETURN_ERROR (MIX_PERR_INV_FSPEC, yytext); } |