diff options
author | Simon Howard | 2015-02-19 23:50:04 -0500 |
---|---|---|
committer | Simon Howard | 2015-02-19 23:52:02 -0500 |
commit | 714d7a29397b44fcb2b1fef2d675d296cb984264 (patch) | |
tree | 12a5fc0268107aa1ab7b4a2c827062d439331c33 | |
parent | 51ab62f6fb06b42c80c98ea71ab29d208d10e422 (diff) | |
download | chocolate-doom-714d7a29397b44fcb2b1fef2d675d296cb984264.tar.gz chocolate-doom-714d7a29397b44fcb2b1fef2d675d296cb984264.tar.bz2 chocolate-doom-714d7a29397b44fcb2b1fef2d675d296cb984264.zip |
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).
-rw-r--r-- | src/doom/d_player.h | 2 | ||||
-rw-r--r-- | 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 |