From fad341b0e9c3a315e870a62478f7b01128f804ee Mon Sep 17 00:00:00 2001
From: Steel Titanium <steeltitanium1@gmail.com>
Date: Tue, 15 Jan 2019 14:29:43 -0500
Subject: [PATCH] Fix skins overflow

---
 src/r_things.c | 4 ++--
 src/r_things.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/r_things.c b/src/r_things.c
index 67a45a76e4..0382596f16 100644
--- a/src/r_things.c
+++ b/src/r_things.c
@@ -2306,7 +2306,7 @@ void R_DrawMasked(void)
 // ==========================================================================
 
 INT32 numskins = 0;
-skin_t skins[MAXSKINS+1];
+skin_t skins[MAXSKINS];
 // FIXTHIS: don't work because it must be inistilised before the config load
 //#define SKINVALUES
 #ifdef SKINVALUES
@@ -2559,7 +2559,7 @@ void R_AddSkins(UINT16 wadnum)
 		// advance by default
 		lastlump = lump + 1;
 
-		if (numskins > MAXSKINS)
+		if (numskins >= MAXSKINS)
 		{
 			CONS_Debug(DBG_RENDER, "ignored skin (%d skins maximum)\n", MAXSKINS);
 			continue; // so we know how many skins couldn't be added
diff --git a/src/r_things.h b/src/r_things.h
index 6614e0aa4b..2823c3894e 100644
--- a/src/r_things.h
+++ b/src/r_things.h
@@ -180,7 +180,7 @@ typedef struct drawnode_s
 } drawnode_t;
 
 extern INT32 numskins;
-extern skin_t skins[MAXSKINS + 1];
+extern skin_t skins[MAXSKINS];
 
 void SetPlayerSkin(INT32 playernum,const char *skinname);
 void SetPlayerSkinByNum(INT32 playernum,INT32 skinnum); // Tails 03-16-2002
-- 
GitLab