From efa63ebff2e27b08fc7451aa534eb7cf2e015cda Mon Sep 17 00:00:00 2001 From: Luke Benstead Date: Mon, 4 Mar 2019 08:42:24 +0000 Subject: [PATCH 1/2] Don't apply the shared palette if it hasn't been specified yet. Fixes #34 --- GL/texture.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/GL/texture.c b/GL/texture.c index 8655073..c82c462 100644 --- a/GL/texture.c +++ b/GL/texture.c @@ -36,6 +36,13 @@ void _glApplyColorTable() { if(_glIsSharedTexturePaletteEnabled()) { src = SHARED_PALETTE; + + assert(src); + + /* Don't apply a palette if we haven't uploaded one yet */ + if(!src->data) { + return; + } } else { TextureObject* active = _glGetBoundTexture(); From 7c0a123aac26baae2b0f9fe28a2f6889b19af374 Mon Sep 17 00:00:00 2001 From: Luke Benstead Date: Mon, 4 Mar 2019 08:44:19 +0000 Subject: [PATCH 2/2] Correctly initialize the shared palette. Fixes #34 --- GL/texture.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/GL/texture.c b/GL/texture.c index c82c462..dfa408d 100644 --- a/GL/texture.c +++ b/GL/texture.c @@ -154,6 +154,9 @@ GLubyte _glInitTextures() { named_array_reserve(&TEXTURE_OBJECTS, 0); SHARED_PALETTE = (TexturePalette*) malloc(sizeof(TexturePalette)); + SHARED_PALETTE->data = NULL; + SHARED_PALETTE->format = 0; + SHARED_PALETTE->width = 0; return 1; }