Mesa (master): trace: Defer the cast to after the check for enabled trace.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Wed Mar 25 21:48:16 UTC 2009


Module: Mesa
Branch: master
Commit: 57ea34214c114539a92eafafebf7e7fcfa9fc286
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=57ea34214c114539a92eafafebf7e7fcfa9fc286

Author: José Fonseca <jfonseca at vmware.com>
Date:   Wed Mar 25 21:45:57 2009 +0000

trace: Defer the cast to after the check for enabled trace.

Prevents segfault when trace is disabled.

---

 src/gallium/drivers/trace/tr_context.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/trace/tr_context.c b/src/gallium/drivers/trace/tr_context.c
index c894972..b69ed2c 100644
--- a/src/gallium/drivers/trace/tr_context.c
+++ b/src/gallium/drivers/trace/tr_context.c
@@ -1037,9 +1037,9 @@ struct pipe_context *
 trace_context_create(struct pipe_screen *_screen,
                      struct pipe_context *pipe)
 {
-   struct trace_screen *tr_scr = trace_screen(_screen);
+   struct trace_screen *tr_scr;
    struct trace_context *tr_ctx;
-   struct pipe_screen *screen = tr_scr->screen;
+   struct pipe_screen *screen;
 
    if(!pipe)
       goto error1;
@@ -1047,6 +1047,9 @@ trace_context_create(struct pipe_screen *_screen,
    if(!trace_dump_enabled())
       goto error1;
 
+   tr_scr = trace_screen(_screen);
+   screen = tr_scr->screen;
+
    tr_ctx = CALLOC_STRUCT(trace_context);
    if(!tr_ctx)
       goto error1;




More information about the mesa-commit mailing list