diff options
Diffstat (limited to 'thirdparty/thorvg/patches/pr2740-renderer-crash-hotfix.patch')
-rw-r--r-- | thirdparty/thorvg/patches/pr2740-renderer-crash-hotfix.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/thirdparty/thorvg/patches/pr2740-renderer-crash-hotfix.patch b/thirdparty/thorvg/patches/pr2740-renderer-crash-hotfix.patch new file mode 100644 index 0000000000..50b1e1e4a7 --- /dev/null +++ b/thirdparty/thorvg/patches/pr2740-renderer-crash-hotfix.patch @@ -0,0 +1,45 @@ +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); + } + |