GDScript: Fix editor crash when writing @tool annotation

This commit is contained in:
George Marques 2020-08-17 21:02:49 -03:00
parent f374021d52
commit d06ce2f11e
No known key found for this signature in database
GPG Key ID: 046BD46A3201E43D

View File

@ -494,6 +494,7 @@ void GDScriptParser::parse_program() {
if (match(GDScriptTokenizer::Token::ANNOTATION)) {
// Check for @tool annotation.
AnnotationNode *annotation = parse_annotation(AnnotationInfo::SCRIPT | AnnotationInfo::CLASS_LEVEL);
if (annotation != nullptr) {
if (annotation->name == "@tool") {
// TODO: don't allow @tool anywhere else. (Should all script annotations be the first thing?).
_is_tool = true;
@ -506,6 +507,7 @@ void GDScriptParser::parse_program() {
annotation_stack.push_back(annotation);
}
}
}
for (bool should_break = false; !should_break;) {
// Order here doesn't matter, but there should be only one of each at most.