Fix recursive assignment of Textures and BitMapFont
Fixes #24213.
(cherry picked from commit 402cfa983d
)
This commit is contained in:
parent
8718f898c1
commit
c2541188f2
|
@ -486,6 +486,7 @@ Size2 Font::get_string_size(const String &p_string) const {
|
||||||
}
|
}
|
||||||
void BitmapFont::set_fallback(const Ref<BitmapFont> &p_fallback) {
|
void BitmapFont::set_fallback(const Ref<BitmapFont> &p_fallback) {
|
||||||
|
|
||||||
|
ERR_FAIL_COND(p_fallback == this);
|
||||||
fallback = p_fallback;
|
fallback = p_fallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -836,6 +836,7 @@ uint32_t AtlasTexture::get_flags() const {
|
||||||
|
|
||||||
void AtlasTexture::set_atlas(const Ref<Texture> &p_atlas) {
|
void AtlasTexture::set_atlas(const Ref<Texture> &p_atlas) {
|
||||||
|
|
||||||
|
ERR_FAIL_COND(p_atlas == this);
|
||||||
if (atlas == p_atlas)
|
if (atlas == p_atlas)
|
||||||
return;
|
return;
|
||||||
atlas = p_atlas;
|
atlas = p_atlas;
|
||||||
|
@ -1074,6 +1075,7 @@ void LargeTexture::set_piece_offset(int p_idx, const Point2 &p_offset) {
|
||||||
|
|
||||||
void LargeTexture::set_piece_texture(int p_idx, const Ref<Texture> &p_texture) {
|
void LargeTexture::set_piece_texture(int p_idx, const Ref<Texture> &p_texture) {
|
||||||
|
|
||||||
|
ERR_FAIL_COND(p_texture == this);
|
||||||
ERR_FAIL_INDEX(p_idx, pieces.size());
|
ERR_FAIL_INDEX(p_idx, pieces.size());
|
||||||
pieces[p_idx].texture = p_texture;
|
pieces[p_idx].texture = p_texture;
|
||||||
};
|
};
|
||||||
|
@ -1619,6 +1621,7 @@ void ProxyTexture::_bind_methods() {
|
||||||
|
|
||||||
void ProxyTexture::set_base(const Ref<Texture> &p_texture) {
|
void ProxyTexture::set_base(const Ref<Texture> &p_texture) {
|
||||||
|
|
||||||
|
ERR_FAIL_COND(p_texture == this);
|
||||||
base = p_texture;
|
base = p_texture;
|
||||||
if (base.is_valid()) {
|
if (base.is_valid()) {
|
||||||
VS::get_singleton()->texture_set_proxy(proxy, base->get_rid());
|
VS::get_singleton()->texture_set_proxy(proxy, base->get_rid());
|
||||||
|
|
Loading…
Reference in New Issue