16 lines
637 B
Diff
16 lines
637 B
Diff
Index: libdumb-0.9.3/src/it/itread.c
|
|
===================================================================
|
|
--- libdumb-0.9.3.orig/src/it/itread.c 2006-07-21 11:05:48.000000000 +0200
|
|
+++ libdumb-0.9.3/src/it/itread.c 2006-07-21 11:07:22.000000000 +0200
|
|
@@ -292,6 +292,11 @@
|
|
|
|
envelope->flags = dumbfile_getc(f);
|
|
envelope->n_nodes = dumbfile_getc(f);
|
|
+ if(envelope->n_nodes > 25) {
|
|
+ TRACE("IT error: wrong number of envelope nodes (%d)\n", envelope->n_nodes);
|
|
+ envelope->n_nodes = 0;
|
|
+ return -1;
|
|
+ }
|
|
envelope->loop_start = dumbfile_getc(f);
|
|
envelope->loop_end = dumbfile_getc(f);
|
|
envelope->sus_loop_start = dumbfile_getc(f);
|