mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
intel: Avoid unaligned pointer access
Avoids the sanitizer error:
```
../src/intel/common/intel_debug_identifier.c:122:15: runtime error: member access within misaligned address 0x7f5ca8b32051 for type 'struct intel_debug_block_base', which requires 4 byte alignment
0x7f5ca8b32051: note: pointer points here
66 30 29 00 03 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 08 00 00 00 00 00 00 00
^
```
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32098>
This commit is contained in:
parent
1f3e24f4f3
commit
b3a14d7b91
1 changed files with 6 additions and 5 deletions
|
|
@ -117,14 +117,15 @@ intel_debug_get_identifier_block(void *_buffer,
|
|||
*end_buffer = _buffer + buffer_size;
|
||||
|
||||
while (buffer < end_buffer) {
|
||||
struct intel_debug_block_base *item = buffer;
|
||||
struct intel_debug_block_base item;
|
||||
memcpy(&item, buffer, sizeof(item));
|
||||
|
||||
if (item->type == type)
|
||||
return item;
|
||||
if (item->type == INTEL_DEBUG_BLOCK_TYPE_END)
|
||||
if (item.type == type)
|
||||
return buffer;
|
||||
if (item.type == INTEL_DEBUG_BLOCK_TYPE_END)
|
||||
return NULL;
|
||||
|
||||
buffer += item->length;
|
||||
buffer += item.length;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue