From fa8acb052839da3b9e77e58ad17d94190f4d2f24 Mon Sep 17 00:00:00 2001 From: Michal Krol Date: Tue, 16 Feb 2010 10:04:58 +0100 Subject: glsl/pp: Do not try to enable extension `all'. --- src/glsl/pp/sl_pp_extension.c | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) (limited to 'src/glsl') diff --git a/src/glsl/pp/sl_pp_extension.c b/src/glsl/pp/sl_pp_extension.c index 677fb8a0e6..1f00d94eba 100644 --- a/src/glsl/pp/sl_pp_extension.c +++ b/src/glsl/pp/sl_pp_extension.c @@ -137,8 +137,11 @@ sl_pp_process_extension(struct sl_pp_context *context, return -1; } out.token = SL_PP_EXTENSION_REQUIRE; - assert(extension); - extension->enabled = 1; + + if (extension_name != context->dict.all) { + assert(extension); + extension->enabled = 1; + } } else if (behavior == context->dict.enable) { if (out.data.extension == -1) { /* Warning: the extension cannot be enabled. */ @@ -149,24 +152,33 @@ sl_pp_process_extension(struct sl_pp_context *context, return -1; } out.token = SL_PP_EXTENSION_ENABLE; - assert(extension); - extension->enabled = 1; + + if (extension_name != context->dict.all) { + assert(extension); + extension->enabled = 1; + } } else if (behavior == context->dict.warn) { if (out.data.extension == -1) { /* Warning: the extension is not supported. */ return 0; } out.token = SL_PP_EXTENSION_WARN; - assert(extension); - extension->enabled = 1; + + if (extension_name != context->dict.all) { + assert(extension); + extension->enabled = 1; + } } else if (behavior == context->dict.disable) { if (out.data.extension == -1) { /* Warning: the extension is not supported. */ return 0; } out.token = SL_PP_EXTENSION_DISABLE; - assert(extension); - extension->enabled = 0; + + if (extension_name != context->dict.all) { + assert(extension); + extension->enabled = 0; + } } else { strcpy(context->error_msg, "unrecognised behavior name"); return -1; -- cgit v1.2.3