From a6cc91487446f8e1e72e4f67823a359c0b3a41d6 Mon Sep 17 00:00:00 2001 From: Corbin Simpson Date: Tue, 22 Jun 2010 23:11:01 -0700 Subject: glhd: Add query protection. Not quite copied from r300g. This is slightly more API-compliant. --- src/gallium/drivers/galahad/glhd_context.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/gallium/drivers/galahad/glhd_context.c') diff --git a/src/gallium/drivers/galahad/glhd_context.c b/src/gallium/drivers/galahad/glhd_context.c index 7a856ef5e1b..5531f579ec2 100644 --- a/src/gallium/drivers/galahad/glhd_context.c +++ b/src/gallium/drivers/galahad/glhd_context.c @@ -119,6 +119,16 @@ galahad_create_query(struct pipe_context *_pipe, struct galahad_context *glhd_pipe = galahad_context(_pipe); struct pipe_context *pipe = glhd_pipe->pipe; + if (query_type == PIPE_QUERY_OCCLUSION_COUNTER && + !pipe->screen->get_param(pipe->screen, PIPE_CAP_OCCLUSION_QUERY)) { + glhd_error("Occlusion query requested but not supported"); + } + + if (query_type == PIPE_QUERY_TIME_ELAPSED && + !pipe->screen->get_param(pipe->screen, PIPE_CAP_TIMER_QUERY)) { + glhd_error("Timer query requested but not supported"); + } + return pipe->create_query(pipe, query_type); } -- cgit v1.2.3