diff options
Diffstat (limited to 'src/gallium/state_trackers/nine')
-rw-r--r-- | src/gallium/state_trackers/nine/nine_shader.c | 2 | ||||
-rw-r--r-- | src/gallium/state_trackers/nine/surface9.c | 1 | ||||
-rw-r--r-- | src/gallium/state_trackers/nine/volume9.c | 2 |
3 files changed, 3 insertions, 2 deletions
diff --git a/src/gallium/state_trackers/nine/nine_shader.c b/src/gallium/state_trackers/nine/nine_shader.c index bd373d7..e2855d7 100644 --- a/src/gallium/state_trackers/nine/nine_shader.c +++ b/src/gallium/state_trackers/nine/nine_shader.c @@ -2031,7 +2031,7 @@ DECL_SPECIAL(DCL) ureg_DECL_vs_input(ureg, sem.reg.idx); assert(sem.reg.idx < ARRAY_SIZE(tx->info->input_map)); tx->info->input_map[sem.reg.idx] = sm1_to_nine_declusage(&sem); - tx->info->num_inputs = sem.reg.idx + 1; + tx->info->num_inputs = MAX2(tx->info->num_inputs, sem.reg.idx + 1); /* NOTE: preserving order in case of indirect access */ } else if (tx->version.major >= 3) { diff --git a/src/gallium/state_trackers/nine/surface9.c b/src/gallium/state_trackers/nine/surface9.c index 2606dbf..aff4d4c 100644 --- a/src/gallium/state_trackers/nine/surface9.c +++ b/src/gallium/state_trackers/nine/surface9.c @@ -405,6 +405,7 @@ NineSurface9_LockRect( struct NineSurface9 *This, } else { u_box_origin_2d(This->desc.Width, This->desc.Height, &box); } + box.z = This->layer; user_warn(This->desc.Format == D3DFMT_NULL); diff --git a/src/gallium/state_trackers/nine/volume9.c b/src/gallium/state_trackers/nine/volume9.c index 1fdc638..faeeec1 100644 --- a/src/gallium/state_trackers/nine/volume9.c +++ b/src/gallium/state_trackers/nine/volume9.c @@ -374,7 +374,7 @@ NineVolume9_UnlockBox( struct NineVolume9 *This ) This->layer_stride_conversion, 0, 0, 0, This->desc.Width, This->desc.Height, - This->desc.Height); + This->desc.Depth); if (!This->data) pipe_transfer_unmap(This->pipe, transfer); |