From 920f023e8b3a5c2af0877530dc1707d2e50c5d4b Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Thu, 29 Oct 2009 15:19:59 +0800 Subject: mesa/main: Never return NULL in _mesa_get_texstore_func. Signed-off-by: Chia-I Wu --- src/mesa/main/texstore.c | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'src/mesa/main/texstore.c') diff --git a/src/mesa/main/texstore.c b/src/mesa/main/texstore.c index 36228e671f..01fea476ae 100644 --- a/src/mesa/main/texstore.c +++ b/src/mesa/main/texstore.c @@ -3083,6 +3083,26 @@ texstore_funcs[MESA_FORMAT_COUNT] = }; +static GLboolean +_mesa_texstore_null(TEXSTORE_PARAMS) +{ + (void) ctx; (void) dims; + (void) baseInternalFormat; + (void) dstFormat; + (void) dstAddr; + (void) dstXoffset; (void) dstYoffset; (void) dstZoffset; + (void) dstRowStride; (void) dstImageOffsets; + (void) srcWidth; (void) srcHeight; (void) srcDepth; + (void) srcFormat; (void) srcType; + (void) srcAddr; + (void) srcPacking; + + /* should never happen */ + _mesa_problem(NULL, "_mesa_texstore_null() is called"); + return GL_FALSE; +} + + /** * Return the StoreTexImageFunc pointer to store an image in the given format. */ @@ -3096,7 +3116,11 @@ _mesa_get_texstore_func(gl_format format) } #endif ASSERT(texstore_funcs[format].Name == format); - return texstore_funcs[format].Store; + + if (texstore_funcs[format].Store) + return texstore_funcs[format].Store; + else + return _mesa_texstore_null; } @@ -3112,8 +3136,6 @@ _mesa_texstore(TEXSTORE_PARAMS) storeImage = _mesa_get_texstore_func(dstFormat); - assert(storeImage); - success = storeImage(ctx, dims, baseInternalFormat, dstFormat, dstAddr, dstXoffset, dstYoffset, dstZoffset, dstRowStride, dstImageOffsets, -- cgit v1.2.3