46 lines
1.3 KiB
Diff
46 lines
1.3 KiB
Diff
From 8009c75465e5b35da2d5f53532bc65f6df202a3a Mon Sep 17 00:00:00 2001
|
|
From: Hermet Park <hermet@lottiefiles.com>
|
|
Date: Tue, 17 Sep 2024 11:35:48 +0900
|
|
Subject: [PATCH] renderer: hotfix a crash
|
|
|
|
prevent a nullptr memory access
|
|
regression by f5337015e971d24379d2ee664895503ab8945e13
|
|
|
|
issue: https://github.com/godotengine/godot/issues/97078
|
|
---
|
|
src/renderer/tvgShape.h | 6 ++++--
|
|
2 files changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/src/renderer/tvgShape.h b/src/renderer/tvgShape.h
|
|
index 221931dee..e120a85c6 100644
|
|
--- a/src/renderer/tvgShape.h
|
|
+++ b/src/renderer/tvgShape.h
|
|
@@ -51,8 +51,9 @@ struct Shape::Impl
|
|
|
|
bool render(RenderMethod* renderer)
|
|
{
|
|
+ if (!rd) return false;
|
|
+
|
|
Compositor* cmp = nullptr;
|
|
- bool ret;
|
|
|
|
renderer->blend(shape->blend());
|
|
|
|
@@ -61,7 +62,7 @@ struct Shape::Impl
|
|
renderer->beginComposite(cmp, CompositeMethod::None, opacity);
|
|
}
|
|
|
|
- ret = renderer->renderShape(rd);
|
|
+ auto ret = renderer->renderShape(rd);
|
|
if (cmp) renderer->endComposite(cmp);
|
|
return ret;
|
|
}
|
|
@@ -117,6 +118,7 @@ struct Shape::Impl
|
|
|
|
RenderRegion bounds(RenderMethod* renderer)
|
|
{
|
|
+ if (!rd) return {0, 0, 0, 0};
|
|
return renderer->region(rd);
|
|
}
|
|
|