Don't crash when the saved editor state contains fewer viewports than currently supported.
(cherry picked from commit 7bab7fd777
)
This commit is contained in:
parent
4023d52399
commit
d060cd4fef
1 changed files with 6 additions and 2 deletions
|
@ -4170,9 +4170,13 @@ void SpatialEditor::set_state(const Dictionary &p_state) {
|
||||||
|
|
||||||
if (d.has("viewports")) {
|
if (d.has("viewports")) {
|
||||||
Array vp = d["viewports"];
|
Array vp = d["viewports"];
|
||||||
ERR_FAIL_COND(vp.size() > 4);
|
uint32_t vp_size = static_cast<uint32_t>(vp.size());
|
||||||
|
if (vp_size > VIEWPORTS_COUNT) {
|
||||||
|
WARN_PRINT("Ignoring superfluous viewport settings from spatial editor state.")
|
||||||
|
vp_size = VIEWPORTS_COUNT;
|
||||||
|
}
|
||||||
|
|
||||||
for (uint32_t i = 0; i < VIEWPORTS_COUNT; i++) {
|
for (uint32_t i = 0; i < vp_size; i++) {
|
||||||
viewports[i]->set_state(vp[i]);
|
viewports[i]->set_state(vp[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue