diff --git a/src/r_patch.c b/src/r_patch.c
index 4304f3eab65f71e0e5a1568c1f10f752ccb88bc0..9e31d4d191b8a4e8876722c3c17156096eee92af 100644
--- a/src/r_patch.c
+++ b/src/r_patch.c
@@ -1212,15 +1212,17 @@ void R_CacheRotSprite(spritenum_t sprnum, UINT8 frame, spriteinfo_t *sprinfo, sp
 		INT32 width, height, leftoffset;
 		fixed_t ca, sa;
 		lumpnum_t lump = sprframe->lumppat[rot];
+#ifndef NO_PNG_LUMPS
 		size_t lumplength;
+#endif
 
 		if (lump == LUMPERROR)
 			return;
 
 		patch = (patch_t *)W_CacheLumpNum(lump, PU_STATIC);
+#ifndef NO_PNG_LUMPS
 		lumplength = W_LumpLength(lump);
 
-#ifndef NO_PNG_LUMPS
 		if (R_IsLumpPNG((UINT8 *)patch, lumplength))
 			patch = R_PNGToPatch((UINT8 *)patch, lumplength, NULL);
 		else