mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 06:48:06 +02:00
util: clean the 24-bit unused field to avoid an issues
This is a field of FLOAT_32_UNSIGNED_INT_24_8_REV texture pixel.
OpenGL spec "8.4.4.2 Special Interpretations" is saying:
"the second word contains a packed 24-bit unused field,
followed by an 8-bit index"
The spec doesn't require us to clear this unused field
however it make sense to do it to avoid some
undefined behavior in some apps.
Suggested-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110305
Signed-off-by: Andrii Simiklit <andrii.simiklit@globallogic.com>
This commit is contained in:
parent
c037dbb0ef
commit
cade9001b1
1 changed files with 3 additions and 3 deletions
|
|
@ -830,11 +830,11 @@ util_format_z32_float_s8x24_uint_pack_s_8uint(uint8_t *dst_row, unsigned dst_str
|
|||
unsigned x, y;
|
||||
for(y = 0; y < height; ++y) {
|
||||
const uint8_t *src = src_row;
|
||||
uint8_t *dst = dst_row + 4;
|
||||
uint32_t *dst = ((uint32_t *)dst_row) + 1;
|
||||
for(x = 0; x < width; ++x) {
|
||||
*dst = *src;
|
||||
*dst = util_cpu_to_le32(*src);
|
||||
src += 1;
|
||||
dst += 8;
|
||||
dst += 2;
|
||||
}
|
||||
dst_row += dst_stride/sizeof(*dst_row);
|
||||
src_row += src_stride/sizeof(*src_row);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue