pipebuffer: clean up cast-warnings

This code produces warnings, so let's fix that. The problem is that
casting a pointer to an integer of non-pointer-size triggers warnings on
MSVC, and on 64-bit Windows unsigned long is 32-bit large.

So let's instead use uintptr_t, which is exactly for these kinds of
things.

While we're at it, let's make the resulting index a plain "unsigned",
which is the type this originated from before we started with this
cast-dance.

Fixes: 1a66ead1c7 ("pipebuffer, winsys/svga: Add functionality to update pb_validate_entry flags")
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4297>
This commit is contained in:
Erik Faye-Lund 2020-03-24 10:58:14 +01:00 committed by Marge Bot
parent 1271193932
commit 079cb4949d
1 changed files with 2 additions and 2 deletions

View File

@ -78,7 +78,7 @@ pb_validate_add_buffer(struct pb_validate *vl,
flags &= PB_USAGE_GPU_READ_WRITE;
if (ht) {
unsigned long entry_idx = (unsigned long) util_hash_table_get(ht, buf);
unsigned entry_idx = (unsigned)(uintptr_t)util_hash_table_get(ht, buf);
if (entry_idx) {
struct pb_validate_entry *entry = &vl->entries[entry_idx - 1];
@ -118,7 +118,7 @@ pb_validate_add_buffer(struct pb_validate *vl,
++vl->used;
if (ht)
_mesa_hash_table_insert(ht, buf, (void *) (unsigned long) vl->used);
_mesa_hash_table_insert(ht, buf, (void *) (uintptr_t) vl->used);
return PIPE_OK;
}