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: 1a66ead1c75 ("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>
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];
++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;
}