commit 714d7a29397b44fcb2b1fef2d675d296cb984264
Author: Simon Howard <fraggle@soulsphere.org>
AuthorDate: Thu Feb 19 23:50:04 2015 -0500
Commit: Simon Howard <fraggle@soulsphere.org>
CommitDate: Thu Feb 19 23:52:02 2015 -0500
doom: Change weaponowned[] to an int array.
The st_stuff.c status bar code passes pointer to an entry in
weaponowned[] as an int pointer, but weaponowned[] is an array
of booleans and booleans are not always represented as 32-bit ints.
Remove the (int *) cast and ensure correct behavior.
This fixes the immediate issue in #509 (thanks floppes).
---
src/doom/d_player.h | 2 +-
src/doom/st_stuff.c | 11 ++++++-----
2 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/src/doom/d_player.h b/src/doom/d_player.h
index a72c2f5f..04e47109 100644
--- a/src/doom/d_player.h
+++ b/src/doom/d_player.h
@@ -111,7 +111,7 @@ typedef struct player_s
// Is wp_nochange if not changing.
weapontype_t pendingweapon;
- boolean weaponowned[NUMWEAPONS];
+ int weaponowned[NUMWEAPONS];
int ammo[NUMAMMO];
int maxammo[NUMAMMO];
diff --git a/src/doom/st_stuff.c b/src/doom/st_stuff.c
index 9a25865c..693b6ef2 100644
--- a/src/doom/st_stuff.c
+++ b/src/doom/st_stuff.c
@@ -1261,11 +1261,12 @@ void ST_createWidgets(void)
// weapons owned
for(i=0;i<6;i++)
{
- STlib_initMultIcon(&w_arms[i],
- ST_ARMSX+(i%3)*ST_ARMSXSPACE,
- ST_ARMSY+(i/3)*ST_ARMSYSPACE,
- arms[i], (int *) &plyr->weaponowned[i+1],
- &st_armson);
+ STlib_initMultIcon(&w_arms[i],
+ ST_ARMSX+(i%3)*ST_ARMSXSPACE,
+ ST_ARMSY+(i/3)*ST_ARMSYSPACE,
+ arms[i],
+ &plyr->weaponowned[i+1],
+ &st_armson);
}
// frags sum