Pavol Rusnak 2010-04-22 13:02:46 +00:00 committed by Git OBS Bridge
parent 00080e7a1c
commit bbb018bd4b

View File

@ -2,18 +2,24 @@ Index: loaders/load_it.c
===================================================================
--- loaders/load_it.c.orig
+++ loaders/load_it.c
@@ -862,6 +862,11 @@ BOOL IT_Load(BOOL curious)
#endif
IT_ProcessEnvelope(vol);
+
+ // Secunia SA37775
+ if (ih.volpts>= ENVPOINTS)
+ ih.volpts = ENVPOINTS-1;
+
for(u=0;u<ih.volpts;u++)
d->volenv[u].val=(ih.volnode[u]<<2);
@@ -747,6 +747,8 @@ BOOL IT_Load(BOOL curious)
ih. name##end =_mm_read_UBYTE(modreader); \
ih. name##susbeg=_mm_read_UBYTE(modreader); \
ih. name##susend=_mm_read_UBYTE(modreader); \
+ if (ih. name##pts>= ENVPOINTS) \
+ ih. name##pts = ENVPOINTS-1; \
for(lp=0;lp<ITENVCNT;lp++) { \
ih. name##node[lp]=_mm_read_##type (modreader); \
ih. name##tick[lp]=_mm_read_I_UWORD(modreader); \
@@ -760,6 +762,8 @@ BOOL IT_Load(BOOL curious)
ih. name/**/end =_mm_read_UBYTE(modreader); \
ih. name/**/susbeg=_mm_read_UBYTE(modreader); \
ih. name/**/susend=_mm_read_UBYTE(modreader); \
+ if (ih. name/**/pts>= ENVPOINTS) \
+ ih. name/**/pts = ENVPOINTS-1; \
for(lp=0;lp<ITENVCNT;lp++) { \
ih. name/**/node[lp]=_mm_read_/**/type (modreader); \
ih. name/**/tick[lp]=_mm_read_I_UWORD(modreader); \
Index: loaders/load_ult.c
===================================================================
--- loaders/load_ult.c.orig