From 6b0ccc15139d4d5ad94d4a55e3882beac433be52 Mon Sep 17 00:00:00 2001 From: Nicolas F Date: Sat, 6 Jul 2019 23:15:55 +0200 Subject: [PATCH] src/primitives/base: don't try to free nullpointer If loading the grass and foliage biome colour fails, Overviewer doesn't necessarily crash, it just renders everything gray, apart from one small issue: in trying to call base_finish, it'd crash trying to decrease the reference of a null pointer. --- overviewer_core/src/overviewer.h | 2 +- overviewer_core/src/primitives/base.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/overviewer_core/src/overviewer.h b/overviewer_core/src/overviewer.h index 2453c96..c80f5b4 100644 --- a/overviewer_core/src/overviewer.h +++ b/overviewer_core/src/overviewer.h @@ -31,7 +31,7 @@ // increment this value if you've made a change to the c extesion // and want to force users to rebuild -#define OVERVIEWER_EXTENSION_VERSION 65 +#define OVERVIEWER_EXTENSION_VERSION 66 /* Python PIL, and numpy headers */ #include diff --git a/overviewer_core/src/primitives/base.c b/overviewer_core/src/primitives/base.c index 4527429..db4798c 100644 --- a/overviewer_core/src/primitives/base.c +++ b/overviewer_core/src/primitives/base.c @@ -50,10 +50,10 @@ static void base_finish(void* data, RenderState* state) { PrimitiveBase* self = (PrimitiveBase*)data; - Py_DECREF(self->foliagecolor); - Py_DECREF(self->grasscolor); - Py_DECREF(self->watercolor); - Py_DECREF(self->grass_texture); + Py_XDECREF(self->foliagecolor); + Py_XDECREF(self->grasscolor); + Py_XDECREF(self->watercolor); + Py_XDECREF(self->grass_texture); } static int