X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=fecdec_filter.c;h=2c63fc6b00ac6d671f74142ac74060bacece8bed;hp=1ff4abbbed26122644ff47ad42a5c44f0bc3d5d3;hb=acebb60a3709eebbfed30dc47c1f324969e4d7c7;hpb=684ea7f70948c9ce5077a8a6460946ff86fefe46 diff --git a/fecdec_filter.c b/fecdec_filter.c index 1ff4abbb..2c63fc6b 100644 --- a/fecdec_filter.c +++ b/fecdec_filter.c @@ -104,7 +104,7 @@ struct private_fecdec_data { /** Iterate over all fecdec groups. */ #define FOR_EACH_FECDEC_GROUP(g, d) for (g = (d)->groups; \ - (g) - (d)->groups < NUM_FEC_GROUPS; (g)++) + (g) < (d)->groups + NUM_FEC_GROUPS; (g)++) static int group_complete(struct fecdec_group *fg) { @@ -396,6 +396,10 @@ static int dispatch_slice(char *buf, size_t len, struct fec_header *h, return 1; if (group_complete(fg)) { if (pfd->completion_status == GCS_NO_COMPLETE_GROUP) { + enum fec_group_usability u = group_is_usable(fg, pfd); + assert(u != FEC_GROUP_USABLE_SKIP_HEADER); + if (u == FEC_GROUP_UNUSABLE) + return 1; pfd->completion_status = GCS_FIRST_GROUP_COMPLETE; pfd->first_complete_group = fg; return 1;