diff --git a/src/weapon.c b/src/weapon.c
index ba81d83..a91b99a 100644
--- a/src/weapon.c
+++ b/src/weapon.c
@@ -370,7 +370,8 @@ static void weapons_updateLayer(const double dt, const WeaponLayer layer) {
     /* Only increment if weapon wasn't deleted. */
     if(w == wlayer[i]) {
       weapon_update(wlayer[i], dt, layer);
-      i++;
+      if(w == wlayer[i])
+        i++;
     }
   }
 }