Mesa (master): draw: Ensure draw_pt_middle_end:: bind_parameters is never NULL.

Jose Fonseca jrfonseca at kemper.freedesktop.org
Fri Sep 20 16:48:04 UTC 2013


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

Author: José Fonseca <jfonseca at vmware.com>
Date:   Wed Sep 18 20:01:54 2013 +0100

draw: Ensure draw_pt_middle_end::bind_parameters is never NULL.

Prevents calling NULL pointer with softpipe in certain cases.

Trivial.

---

 src/gallium/auxiliary/draw/draw_pt_fetch_emit.c    |    8 ++++++++
 .../auxiliary/draw/draw_pt_fetch_shade_emit.c      |    7 +++++++
 2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c b/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
index 22ec8d6..4278429 100644
--- a/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
+++ b/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
@@ -180,6 +180,13 @@ static void fetch_emit_prepare( struct draw_pt_middle_end *middle,
 }
 
 
+static void
+fetch_emit_bind_parameters(struct draw_pt_middle_end *middle)
+{
+   /* No-op? */
+}
+
+
 static void fetch_emit_run( struct draw_pt_middle_end *middle,
                             const unsigned *fetch_elts,
                             unsigned fetch_count,
@@ -379,6 +386,7 @@ struct draw_pt_middle_end *draw_pt_fetch_emit( struct draw_context *draw )
    }
 
    fetch_emit->base.prepare    = fetch_emit_prepare;
+   fetch_emit->base.bind_parameters = fetch_emit_bind_parameters;
    fetch_emit->base.run        = fetch_emit_run;
    fetch_emit->base.run_linear = fetch_emit_run_linear;
    fetch_emit->base.run_linear_elts = fetch_emit_run_linear_elts;
diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
index d30cd41..bdfbbfb 100644
--- a/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
+++ b/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
@@ -178,6 +178,12 @@ fse_prepare(struct draw_pt_middle_end *middle,
 }
 
 
+static void
+fse_bind_parameters(struct draw_pt_middle_end *middle)
+{
+   /* No-op? */
+}
+
 
 static void
 fse_run_linear(struct draw_pt_middle_end *middle,
@@ -366,6 +372,7 @@ draw_pt_middle_fse(struct draw_context *draw)
       return NULL;
 
    fse->base.prepare = fse_prepare;
+   fse->base.bind_parameters = fse_bind_parameters;
    fse->base.run = fse_run;
    fse->base.run_linear = fse_run_linear;
    fse->base.run_linear_elts = fse_run_linear_elts;




More information about the mesa-commit mailing list