Revision 0e71841b

View differences:

libavcodec/wmadec.c
330 330
        iv = iptab[last_exp];
331 331
        max_scale = v;
332 332
        n = *ptr++;
333
        do {
334
            *q++ = iv;
335
            *q++ = iv;
336
            *q++ = iv;
337
            *q++ = iv;
338
        } while (n -= 4);
333
        switch (n & 3) do {
334
        case 0: *q++ = iv;
335
        case 3: *q++ = iv;
336
        case 2: *q++ = iv;
337
        case 1: *q++ = iv;
338
        } while ((n -= 4) > 0);
339 339
    }else
340 340
        last_exp = 36;
341 341

  
......
352 352
        if (v > max_scale)
353 353
            max_scale = v;
354 354
        n = *ptr++;
355
        do {
356
            *q++ = iv;
357
            *q++ = iv;
358
            *q++ = iv;
359
            *q++ = iv;
360
        } while (n -= 4);
355
        switch (n & 3) do {
356
        case 0: *q++ = iv;
357
        case 3: *q++ = iv;
358
        case 2: *q++ = iv;
359
        case 1: *q++ = iv;
360
        } while ((n -= 4) > 0);
361 361
    }
362 362
    s->max_exponent[ch] = max_scale;
363 363
    return 0;

Also available in: Unified diff