diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c
index 86097822e9ddd431d66536d9bc9c414ac3ab0e8e..d4728315ad88f97e5f1f16ac16ed037a8f7376ce 100644
--- a/src/hardware/hw_md2.c
+++ b/src/hardware/hw_md2.c
@@ -1198,7 +1198,7 @@ static UINT8 P_GetModelSprite2(md2_t *md2, skin_t *skin, UINT8 spr2, player_t *p
 	if (!md2 || !skin)
 		return 0;
 
-	if ((spr2 & ~FF_SPR2SUPER) >= free_spr2)
+	if ((unsigned)(spr2 & ~FF_SPR2SUPER) >= free_spr2)
 		return 0;
 
 	while (!(md2->model->spr2frames[spr2*2 + 1])
diff --git a/src/r_things.c b/src/r_things.c
index 645d10015bd505763bc8045e72d3cbe729d491b6..92f2b946020bde6317faf9f52102cdab58f10d2d 100644
--- a/src/r_things.c
+++ b/src/r_things.c
@@ -2511,7 +2511,7 @@ UINT8 P_GetSkinSprite2(skin_t *skin, UINT8 spr2, player_t *player)
 	if (!skin)
 		return 0;
 
-	if ((spr2 & ~FF_SPR2SUPER) >= free_spr2)
+	if ((unsigned)(spr2 & ~FF_SPR2SUPER) >= free_spr2)
 		return 0;
 
 	while (!(skin->sprites[spr2].numframes)