summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Greffrath2015-05-08 08:57:20 +0200
committerFabian Greffrath2015-05-08 08:57:20 +0200
commit744697c4fe213821c18dd882098b311550d42da7 (patch)
tree6cb2f3e9a4a2b338412b97a03d20e01ae4d1f2d9
parent2e8f6da6fdf0eb71e58d2cdaad24e5b0a332f675 (diff)
downloadchocolate-doom-744697c4fe213821c18dd882098b311550d42da7.tar.gz
chocolate-doom-744697c4fe213821c18dd882098b311550d42da7.tar.bz2
chocolate-doom-744697c4fe213821c18dd882098b311550d42da7.zip
warnings: fix "iteration XY invokes undefined behavior" warnings
These were caused by loops which caused overflow of variables of type angle_t (= unsigned) by multiplication with iterators of typed int in angle calculations. Changing the type of the iterator variables to "unsigned int" prevents the undefined behavior.
-rw-r--r--src/heretic/p_enemy.c4
-rw-r--r--src/heretic/p_pspr.c2
-rw-r--r--src/hexen/p_enemy.c2
3 files changed, 4 insertions, 4 deletions
diff --git a/src/heretic/p_enemy.c b/src/heretic/p_enemy.c
index b4222ec8..55608c54 100644
--- a/src/heretic/p_enemy.c
+++ b/src/heretic/p_enemy.c
@@ -1904,7 +1904,7 @@ void A_WhirlwindSeek(mobj_t * actor)
void A_HeadIceImpact(mobj_t * ice)
{
- int i;
+ unsigned int i;
angle_t angle;
mobj_t *shard;
@@ -2519,7 +2519,7 @@ void A_VolcanoBlast(mobj_t * volcano)
void A_VolcBallImpact(mobj_t * ball)
{
- int i;
+ unsigned int i;
mobj_t *tiny;
angle_t angle;
diff --git a/src/heretic/p_pspr.c b/src/heretic/p_pspr.c
index 2cbe3674..813dd6a2 100644
--- a/src/heretic/p_pspr.c
+++ b/src/heretic/p_pspr.c
@@ -1330,7 +1330,7 @@ void A_DeathBallImpact(mobj_t * ball)
void A_SpawnRippers(mobj_t * actor)
{
- int i;
+ unsigned int i;
angle_t angle;
mobj_t *ripper;
diff --git a/src/hexen/p_enemy.c b/src/hexen/p_enemy.c
index dc2c9fe5..38f3a2b5 100644
--- a/src/hexen/p_enemy.c
+++ b/src/hexen/p_enemy.c
@@ -3855,7 +3855,7 @@ void A_IceGuyDie(mobj_t * actor)
void A_IceGuyMissileExplode(mobj_t * actor)
{
mobj_t *mo;
- int i;
+ unsigned int i;
for (i = 0; i < 8; i++)
{