From 27afedc0a84382bfc3d4040a5c0e62bb70e72fa6 Mon Sep 17 00:00:00 2001 From: Juerg Billeter Date: Mon, 14 Apr 2008 18:00:04 +0000 Subject: [PATCH] fix infinite loop on invalid syntax, fixes bug 528017 2008-04-14 Juerg Billeter * vala/valaparser.vala: fix infinite loop on invalid syntax, fixes bug 528017 svn path=/trunk/; revision=1225 --- ChangeLog | 5 +++++ vala/valaparser.vala | 9 +++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index cd97ee7..a624c32 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2008-04-14 Jürg Billeter + * vala/valaparser.vala: fix infinite loop on invalid syntax, + fixes bug 528017 + +2008-04-14 Jürg Billeter + * vala/valaparser.vala: report warning when using weak type modifier in cast expressions, fixes bug 527990 diff --git a/vala/valaparser.vala b/vala/valaparser.vala index f532bb4..32ba75a 100644 --- a/vala/valaparser.vala +++ b/vala/valaparser.vala @@ -1648,9 +1648,14 @@ public class Vala.Parser : CodeVisitor { } } catch (ParseError e) { int r; - do { + while (true) { r = recover (); - } while (r == RecoveryState.STATEMENT_BEGIN); + if (r == RecoveryState.STATEMENT_BEGIN) { + next (); + } else { + break; + } + } if (r == RecoveryState.EOF) { return; } -- 2.7.4