Fixed warning C4366: The result of the unary '&' operator may be unaligned

This commit is contained in:
Sam Lantinga
2024-02-03 11:12:57 -08:00
parent 62221b3003
commit cb811ba463

View File

@@ -1225,17 +1225,19 @@ static int EncodeVariableInt(Uint8 *buf, Uint32 val)
return i + 1; return i + 1;
} }
static int DecodeVariableInt(const Uint8 *data, int len, Uint32 *val) static int DecodeVariableInt(const Uint8 *data, int len, void *out)
{ {
int i; int i;
Uint32 val = 0;
for (i = 0; i < sizeof(*val) && i < len; i++) { for (i = 0; i < sizeof(val) && i < len; i++) {
*val |= (data[i] & 0x7F) << (i * 7); val |= (data[i] & 0x7F) << (i * 7);
if (!(data[i] & 0x80)) { if (!(data[i] & 0x80)) {
break; break;
} }
} }
SDL_memcpy(out, &val, sizeof(val));
return i + 1; return i + 1;
} }