summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Hilbrunner <mhilbrunner@users.noreply.github.com>2019-05-17 00:48:39 +0200
committerGitHub <noreply@github.com>2019-05-17 00:48:39 +0200
commit2809d861568265649dc7e23e1a155c190006001b (patch)
treed1322ba44397f96acd54f3cf25e8cd1aa7d6252f
parenta7a954e30482138b5deb95d0a7462920c0875b33 (diff)
parentd39ffc101bd9592341530e5bc5436ddab1cd8f99 (diff)
Merge pull request #28944 from Faless/mix/object_get_indexed
Fix Object::get_indexed for simple properties.
-rw-r--r--core/object.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/core/object.cpp b/core/object.cpp
index 937aa3c745..2a4ab93a6d 100644
--- a/core/object.cpp
+++ b/core/object.cpp
@@ -608,18 +608,16 @@ Variant Object::get_indexed(const Vector<StringName> &p_names, bool *r_valid) co
}
bool valid = false;
- Variant current_value = get(p_names[0]);
+ Variant current_value = get(p_names[0], &valid);
for (int i = 1; i < p_names.size(); i++) {
current_value = current_value.get_named(p_names[i], &valid);
- if (!valid) {
- if (r_valid)
- *r_valid = false;
- return Variant();
- }
+ if (!valid)
+ break;
}
if (r_valid)
- *r_valid = true;
+ *r_valid = valid;
+
return current_value;
}