Gleb Mazovetskiy
df8d7a1f46
Compatibility with SDL v2.0.3
...
RG350 and GCW0 devices have an ancient version of SDL2.
7 years ago
Anders Jenbo
141bffe1dd
Update town.cpp
7 years ago
galaxyhaxz
7f0eb791f8
Fix function order [drlg_l4.cpp]
7 years ago
galaxyhaxz
2b05500486
Fix function order [drlg_l3.cpp]
7 years ago
Anders Jenbo
feeae23076
Prevent infinit recursion in UiOkDialog
7 years ago
Anders Jenbo
6597688eac
Rename cell functions
7 years ago
galaxyhaxz
74216dc1b4
Fix function order [drlg_l1.cpp]
7 years ago
Anders Jenbo
263ab2bb48
Remove unused debug functions
7 years ago
Anders Jenbo
810b12a37d
Drop unused code
7 years ago
Anders Jenbo
a8e4db538f
Display SDL error messages in UI dialog
...
This will also end the application in most cases
7 years ago
Gleb Mazovetskiy
426c246535
Simplify SDL1/2 palette handling
...
SDL 1 and 2 handle surface palettes very differently.
This adds a few compatibility functions that do the right thing
depending on the SDL version.
7 years ago
Anders Jenbo
bf040777cb
Make more use of cell helpers
7 years ago
Gleb Mazovetskiy
69d6238a7c
Add BUGFIX comment for gmenu_call_proc
7 years ago
Gleb Mazovetskiy
bf493d8b58
Fix UB: pointer overflow gmenu.cpp:112
7 years ago
galaxyhaxz
3c7a08a336
Fix function order [scrollrt.cpp] ( #1800 )
7 years ago
Gleb Mazovetskiy
fb37bbf675
Disable some signed shift UBSAN warnings
...
On Clang we can do this globally via a sanitizer blacklist, but that's not supported on GCC (yet):
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61978
We disable these warnings because all compilers implement them in the
same way according to the N2218 proposal to standardize the behaviour:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2218.htm
7 years ago
Gleb Mazovetskiy
65344058ec
Fix UB: Misaligned access in GetCelFrameClipped
...
runtime error: load of misaligned address 0x632000363773 for type 'WORD', which requires 2 byte alignment
0x632000363773: note: pointer points here
7f 7f 7f 3e 0a 00 02 01 50 04 00 00 00 00 7f 7f 7f 7f 7f 7f 7f 7f 7f 34 bc ac ff bc 5b f9 fc dc
It was actually out-of-bounds as well so I had to add a bounds check.
7 years ago
Gleb Mazovetskiy
c2056c6cbf
SHA: Fix some implementation-defined behaviour ( #343 )
...
* SHA: Fix negative base shift UB
* SHA: Avoid signed integer overflow
We do cast from uint32_t to int32_t but that should be OK everywhere.
* SHA: Always use portable arithmetic right shift
7 years ago
Gleb Mazovetskiy
e4de2ad177
Fix UB: Signed integer overflow engine.cpp:1264
7 years ago
Gleb Mazovetskiy
1ec5fa7896
Fix UB: load/store of misaligned render.cpp:130
...
Source/render.cpp:130:47: runtime error: load of misaligned address 0x7fea0df260da for type 'DWORD', which requires 4 byte alignment
Source/render.cpp:130:26: runtime error: store to misaligned address 0x7fea5796ff62 for type 'DWORD', which requires 4 byte alignment
7 years ago
Anders Jenbo
dc5bbd0c49
Implement DefWindowProc directly in MainWndProc
7 years ago
Anders Jenbo
73a7a1ae6d
Remove unimplemented functions that aren't needed with SDL
7 years ago
arczi84
1ab2fb2666
Endian madness
7 years ago
Marlon Beijer
d641c65562
Some fixes for Big Endian systems
7 years ago
Anders Jenbo
ba9288c6cf
Unify error dialogs, for looks and portability
...
- Use UiOkDialog() to display all error messages
- Add SDL simple message, and console fallbacks to UiOkDialog()
- Boot graphics early on to facilitate most error messages with build in
gui
- Some more miniwin clean ups
7 years ago
qndel
06e7b4dbdb
more enums
7 years ago
qndel
7129558d0b
apply enums
7 years ago
Anders Jenbo
edbc23f144
Clean up diablo.cpp
7 years ago
qndel
ee590ad129
DrawAutomapType cleanup
7 years ago
Anders Jenbo
a8dd5dcd4a
Correct signature of FuncDlg
...
This reduces a lot of the casting in appfat.cpp
7 years ago
Anders Jenbo
6d982f6d06
Correct parameter naming for init_test_access
7 years ago
Anders Jenbo
683a50527d
Correct missmatched bool types
7 years ago
Anders Jenbo
c97388386c
Correct textdat.cpp for shareware version
...
This fixes all speech missing for towners.
7 years ago
qndel
0fb6025948
scrollrt_draw_lower_2 cleanup
7 years ago
qndel
2dadb3e3a3
scrollrt_draw_lower cleanup
7 years ago
Gleb Mazovetskiy
4ea3a4e941
Make Source/ dialogs call DiabloUI/dialogs.cpp
...
The diabdat.mpq absence error is handled by stubbing the art with solid
colors.
7 years ago
qndel
6b286941f3
enums
7 years ago
qndel
23386285a9
GetStaffPower cleanup
7 years ago
qndel
2c7818c5d9
miss_null_32 cleanup
7 years ago
qndel
93f7c5f935
AddWeaponRack cleanup
7 years ago
qndel
2cef74bd57
AddArmorStand cleanup
7 years ago
Anders Jenbo
d2c4b461d4
Add option to compile shareware version
7 years ago
qndel
7665acfaf1
encode_enemy cleanup
7 years ago
Anders Jenbo
d2b1f0cfc8
Apply the Cel helper functions in a few more places
7 years ago
qndel
a994a5cd0f
MAI_Zhar cleanup
7 years ago
qndel
5a9aee7b92
PreSpawnSkeleton cleanup
7 years ago
qndel
4f2fe6174d
GetDamageAmt cleanup
7 years ago
qndel
c8ad43971b
MI_Element cleanup
7 years ago
Anders Jenbo
e97061f126
Correct bad definition of nDataSize
7 years ago
Anders Jenbo
ed746a6d2d
Fix Cl2DecodeFrm3
7 years ago