fecdec.c: Add some more sanity checks to find_group().
authorAndre Noll <maan@systemlinux.org>
Sun, 1 Mar 2009 20:09:37 +0000 (21:09 +0100)
committerAndre Noll <maan@systemlinux.org>
Sun, 1 Mar 2009 20:09:37 +0000 (21:09 +0100)
fecdec_filter.c

index 8b326de..6aa9071 100644 (file)
@@ -28,7 +28,7 @@
 #define NUM_FEC_GROUPS 3
 
 /** Size of the output buffer of the fecdec filter. */
 #define NUM_FEC_GROUPS 3
 
 /** Size of the output buffer of the fecdec filter. */
-#define FECDEC_OUTBUF_SIZE 81920
+#define FECDEC_OUTBUF_SIZE (128 * 1024)
 
 /** Data read from the header of a slice. */
 struct fec_header {
 
 /** Data read from the header of a slice. */
 struct fec_header {
@@ -112,7 +112,10 @@ static int find_group(struct fec_header *h,
        FOR_EACH_FECDEC_GROUP(fg, pfd) {
                if (fg->h.group_num != h->group_num)
                        continue;
        FOR_EACH_FECDEC_GROUP(fg, pfd) {
                if (fg->h.group_num != h->group_num)
                        continue;
-               /* FIXME: Add some more sanity checks here */
+               if (fg->h.slices_per_group != h->slices_per_group)
+                       continue;
+               if (fg->h.data_slices_per_group != h->data_slices_per_group)
+                       continue;
                *result = fg;
                return 1;
        }
                *result = fg;
                return 1;
        }