mirror of
https://github.com/dhewm/dhewm3.git
synced 2024-12-02 09:13:51 +00:00
3ad384a0da
idInterpreter::Push() is used only for int and (reinterpreted) float values, not pointers (as far as I can tell), so 32bit values on all relevant platforms. It stored its value as intptr_t at `&localstack[ localstackUsed ]` - on 64bit platforms intptr_t is 64bit. Unfortunately, all code reading from the stack just get got a pointer to `&localstack[ localstackUsed ]` in the type they want to read (like `int*` or `float*`) and read that. On Little Endian that happens to work, on 64bit Big Endian it reads the wrong 4 bytes of the intptr_t, so it doesn't work. fixes #625, #472 |
||
---|---|---|
.. | ||
cm | ||
d3xp | ||
framework | ||
game | ||
idlib | ||
libs/imgui | ||
MayaImport | ||
renderer | ||
sound | ||
sys | ||
tools | ||
TypeInfo | ||
ui | ||
CMakeLists.txt | ||
config.h.in | ||
mmakefile.src |