diff options
Diffstat (limited to 'engines/sci/parser')
-rw-r--r-- | engines/sci/parser/grammar.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/sci/parser/grammar.cpp b/engines/sci/parser/grammar.cpp index 1cfe84076f..070e6767cf 100644 --- a/engines/sci/parser/grammar.cpp +++ b/engines/sci/parser/grammar.cpp @@ -258,6 +258,11 @@ void Vocabulary::freeRuleList(ParseRuleList *list) { static ParseRuleList *_vocab_add_rule(ParseRuleList *list, ParseRule *rule) { if (!rule) return list; + if (!rule->_data.size()) { + // Special case for qfg2 demo + warning("no rule contents on _vocab_add_rule()"); + return list; + } ParseRuleList *new_elem = new ParseRuleList(rule); |