diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2023-01-09 23:22:59 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-09 23:22:59 +0100 |
commit | d3fc9d9e416560d228a7914a82902118ce911a4d (patch) | |
tree | 463b4577584fda03204b9ea66b4349fb581cd5db /core/variant | |
parent | 509da8620537f150eb6f2266ddf330ee2ffbfea4 (diff) | |
parent | 5e2ac1a31ee34842438a3a76c54f6a15df77bb95 (diff) |
Merge pull request #71051 from vonagam/consts-are-deep-start
GDScript: Begin making constants deep, not shallow or flat
Diffstat (limited to 'core/variant')
-rw-r--r-- | core/variant/array.cpp | 10 | ||||
-rw-r--r-- | core/variant/dictionary.cpp | 10 |
2 files changed, 0 insertions, 20 deletions
diff --git a/core/variant/array.cpp b/core/variant/array.cpp index 0fecc2fe94..f8af78f3c1 100644 --- a/core/variant/array.cpp +++ b/core/variant/array.cpp @@ -54,16 +54,6 @@ void Array::_ref(const Array &p_from) const { ERR_FAIL_COND(!_fp); // should NOT happen. - if (unlikely(_fp->read_only != nullptr)) { - // If p_from is a read-only array, just copy the contents to avoid further modification. - _unref(); - _p = memnew(ArrayPrivate); - _p->refcount.init(); - _p->array = _fp->array; - _p->typed = _fp->typed; - return; - } - if (_fp == _p) { return; // whatever it is, nothing to do here move along } diff --git a/core/variant/dictionary.cpp b/core/variant/dictionary.cpp index c545109bd8..f87064a0d1 100644 --- a/core/variant/dictionary.cpp +++ b/core/variant/dictionary.cpp @@ -211,16 +211,6 @@ bool Dictionary::recursive_equal(const Dictionary &p_dictionary, int recursion_c } void Dictionary::_ref(const Dictionary &p_from) const { - if (unlikely(p_from._p->read_only != nullptr)) { - // If p_from is a read-only dictionary, just copy the contents to avoid further modification. - if (_p) { - _unref(); - } - _p = memnew(DictionaryPrivate); - _p->refcount.init(); - _p->variant_map = p_from._p->variant_map; - return; - } //make a copy first (thread safe) if (!p_from._p->refcount.ref()) { return; // couldn't copy |