scummvm/engines/tinsel
Donovan Watteau 21cd732b60 TINSEL: Fix UB for enum TINSEL_EVENT in DW2. PVS-Studio V1016
In DW2, some large TINSEL_EVENT values are read, and they're bigger than
the last TINSEL_EVENT value, but we cast them to `enum TINSEL_EVENT`
values in tinlib.cpp, which is apparently "unspecified behavior up to
C++17 and undefined behavior starting from C++17".

  tinlib.cpp:1925:39: runtime error: load of value 9041, which is not
     a valid value for type 'Tinsel::TINSEL_EVENT'
  tinlib.cpp:1935:31: runtime error: load of value 77, which is not
     a valid value for type 'Tinsel::TINSEL_EVENT'

Found with UBSan but the really clear help comes from PVS-Studio
documentation.
2022-11-29 00:41:03 +01:00
..
noir
actors.cpp TINSEL: Fix DW2 subtitle color on big-endian systems 2022-11-27 23:06:24 +02:00
actors.h
adpcm.cpp
adpcm.h
anim.cpp
anim.h
background.cpp
background.h
bg.cpp
bmv.cpp JANITORIAL: Fix various single-character typos 2022-11-11 20:55:56 +01:00
bmv.h
cliprect.cpp
cliprect.h
config.cpp
config.h
configure.engine
credits.pl
cursor.cpp
cursor.h
debugger.cpp
debugger.h
detection_tables.h
detection.cpp TINSEL: Change "2" to "II" in DW2 title 2022-11-28 19:43:13 +01:00
detection.h
dialogs.cpp
dialogs.h
drives.cpp
drives.h
dw.h
effect.cpp
events.cpp
events.h TINSEL: Fix UB for enum TINSEL_EVENT in DW2. PVS-Studio V1016 2022-11-29 00:41:03 +01:00
faders.cpp
faders.h
film.cpp
film.h
font.cpp
font.h
graphics.cpp
graphics.h
handle.cpp
handle.h
heapmem.cpp
heapmem.h
inv_objects.cpp
inv_objects.h
mareels.cpp
mareels.h
metaengine.cpp
module.mk
move.cpp
move.h
movers.cpp
movers.h
multiobj.cpp
multiobj.h
music.cpp
music.h
object.cpp
object.h
palette.cpp
palette.h
pcode.cpp
pcode.h
pdisplay.cpp
pdisplay.h
pid.h
play.cpp
play.h
polygons.cpp
polygons.h
POTFILES
saveload.cpp
savescn.cpp
savescn.h
scene.cpp
scene.h
sched.cpp
sched.h
scn.cpp
scn.h
scroll.cpp
scroll.h
sound.cpp
sound.h
strres.cpp
strres.h
sysvar.cpp
sysvar.h
text.cpp
text.h
timers.cpp
timers.h
tinlib.cpp TINSEL: Correct spelling mistake 2022-10-27 15:57:30 +02:00
tinlib.h
tinsel.cpp
tinsel.h
token.cpp
token.h