blob: 09d2fb68f4cbbb4816265bc0a73e803916bd734d [file] [log] [blame]
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);