summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/auxiliary/draw/draw_cliptest_tmp.h5
-rw-r--r--src/gallium/auxiliary/draw/draw_gs.c1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/draw/draw_cliptest_tmp.h b/src/gallium/auxiliary/draw/draw_cliptest_tmp.h
index fc548102f2b..779b2374e20 100644
--- a/src/gallium/auxiliary/draw/draw_cliptest_tmp.h
+++ b/src/gallium/auxiliary/draw/draw_cliptest_tmp.h
@@ -62,6 +62,7 @@ static boolean TAG(do_cliptest)( struct pt_post_vs *pvs,
ucp_enable = (1 << num_written_clipdistance) - 1;
}
+ assert(pos != -1);
for (j = 0; j < info->count; j++) {
float *position = out->data[pos];
unsigned mask = 0x0;
@@ -84,8 +85,10 @@ static boolean TAG(do_cliptest)( struct pt_post_vs *pvs,
DO_CLIP_FULL_Z | DO_CLIP_HALF_Z | DO_CLIP_USER)) {
float *clipvertex = position;
- if ((flags & DO_CLIP_USER) && cv != pos)
+ if ((flags & DO_CLIP_USER) && cv != pos) {
+ assert(cv != -1);
clipvertex = out->data[cv];
+ }
for (i = 0; i < 4; i++) {
out->clip[i] = clipvertex[i];
diff --git a/src/gallium/auxiliary/draw/draw_gs.c b/src/gallium/auxiliary/draw/draw_gs.c
index fc4f69792fa..f6228229b47 100644
--- a/src/gallium/auxiliary/draw/draw_gs.c
+++ b/src/gallium/auxiliary/draw/draw_gs.c
@@ -791,6 +791,7 @@ draw_create_geometry_shader(struct draw_context *draw,
*/
gs->primitive_boundary = gs->max_output_vertices + 1;
+ gs->position_output = -1;
for (i = 0; i < gs->info.num_outputs; i++) {
if (gs->info.output_semantic_name[i] == TGSI_SEMANTIC_POSITION &&
gs->info.output_semantic_index[i] == 0)