Merge branch 'maint'
authorAndre Noll <maan@systemlinux.org>
Sun, 7 Mar 2010 15:34:40 +0000 (16:34 +0100)
committerAndre Noll <maan@systemlinux.org>
Sun, 7 Mar 2010 15:34:40 +0000 (16:34 +0100)
vss.c

diff --git a/vss.c b/vss.c
index 1a038f0..d012645 100644 (file)
--- a/vss.c
+++ b/vss.c
@@ -290,19 +290,20 @@ static int setup_next_fec_group(struct fec_client *fc, struct vss_task *vsst)
                g->num = 0;
                g->start = *now;
        } else {
+               struct timeval tmp;
+               if (g->first_chunk + g->num_chunks >= mmd->afd.afhi.chunks_total)
+                       return 0;
                /*
                 * Start and duration of this group depend only on the previous
                 * group. Compute the new group start as g->start += g->duration.
                 */
-               struct timeval tmp = g->start;
+               tmp = g->start;
                tv_add(&tmp, &g->duration, &g->start);
                k = fc->fcp->data_slices_per_group + fc->num_extra_slices;
                set_group_timing(fc, g);
                g->first_chunk += g->num_chunks;
                g->num++;
        }
-       if (g->first_chunk >= mmd->afd.afhi.chunks_total)
-               return 0;
        if (need_audio_header(fc, vsst)) {
                ret = num_slices(vsst->header_len, fc, &g->num_header_slices);
                if (ret < 0)