summaryrefslogtreecommitdiff
path: root/modules/gdscript
diff options
context:
space:
mode:
authorThakee Nathees <thakeenathees@gmail.com>2020-03-06 21:26:25 +0530
committerThakee Nathees <thakeenathees@gmail.com>2020-03-06 23:14:21 +0530
commitbcbcf0f1eae73638e8f76e5acc2b2f3267973483 (patch)
tree8c0fd487a4b125e410a48cf84c4235b28cda3ea1 /modules/gdscript
parent1e255532e90fa35148167e4c153ad39f77010a04 (diff)
logic error in gdscript_parser.cpp for-loop-range
there was a logic error in for loop range argument that check if all of the argument were constants, fixed
Diffstat (limited to 'modules/gdscript')
-rw-r--r--modules/gdscript/gdscript_parser.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/modules/gdscript/gdscript_parser.cpp b/modules/gdscript/gdscript_parser.cpp
index 0382944efd..de7d73230d 100644
--- a/modules/gdscript/gdscript_parser.cpp
+++ b/modules/gdscript/gdscript_parser.cpp
@@ -3102,18 +3102,18 @@ void GDScriptParser::_parse_block(BlockNode *p_block, bool p_static) {
Vector<Node *> args;
Vector<double> constants;
- bool constant = false;
+ bool constant = true;
for (int i = 1; i < op->arguments.size(); i++) {
args.push_back(op->arguments[i]);
- if (constant && op->arguments[i]->type == Node::TYPE_CONSTANT) {
+ if (op->arguments[i]->type == Node::TYPE_CONSTANT) {
ConstantNode *c = static_cast<ConstantNode *>(op->arguments[i]);
if (c->value.get_type() == Variant::FLOAT || c->value.get_type() == Variant::INT) {
constants.push_back(c->value);
- constant = true;
}
} else {
constant = false;
+ break;
}
}