diff options
| -rw-r--r-- | src/mesa/drivers/dri/r200/r200_texstate.c | 10 | 
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_texstate.c b/src/mesa/drivers/dri/r200/r200_texstate.c index 690bec640b..ee968d69f6 100644 --- a/src/mesa/drivers/dri/r200/r200_texstate.c +++ b/src/mesa/drivers/dri/r200/r200_texstate.c @@ -832,18 +832,24 @@ void r200SetTexBuffer2(__DRIcontext *pDRICtx, GLint target, GLint texture_format  	pitch_val = rb->pitch;  	switch (rb->cpp) {  	case 4: -		if (texture_format == __DRI_TEXTURE_FORMAT_RGB) +		if (texture_format == __DRI_TEXTURE_FORMAT_RGB) { +			texImage->TexFormat = MESA_FORMAT_RGB888;  			t->pp_txformat = tx_table_le[MESA_FORMAT_RGB888].format; -		else +		} +		else { +			texImage->TexFormat = MESA_FORMAT_ARGB8888;  			t->pp_txformat = tx_table_le[MESA_FORMAT_ARGB8888].format; +		}  		t->pp_txfilter |= tx_table_le[MESA_FORMAT_ARGB8888].filter;  		break;  	case 3:  	default: +		texImage->TexFormat = MESA_FORMAT_RGB888;  		t->pp_txformat = tx_table_le[MESA_FORMAT_RGB888].format;  		t->pp_txfilter |= tx_table_le[MESA_FORMAT_RGB888].filter;  		break;  	case 2: +		texImage->TexFormat = MESA_FORMAT_RGB565;  		t->pp_txformat = tx_table_le[MESA_FORMAT_RGB565].format;  		t->pp_txfilter |= tx_table_le[MESA_FORMAT_RGB565].filter;  		break;  | 
