Browse Source

avidec: simplify convoluted flow in avi_load_index()

Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard 13 years ago
parent
commit
c9403419b2
1 changed files with 7 additions and 11 deletions
  1. 7 11
      libavformat/avidec.c

+ 7 - 11
libavformat/avidec.c

@@ -1241,20 +1241,16 @@ static int avi_load_index(AVFormatContext *s)
                 (tag >> 16) & 0xff,
                 (tag >> 24) & 0xff,
                 size);
-        switch(tag) {
-        case MKTAG('i', 'd', 'x', '1'):
-            if (avi_read_idx1(s, size) < 0)
-                goto skip;
+
+        if (tag == MKTAG('i', 'd', 'x', '1') &&
+            avi_read_idx1(s, size) >= 0) {
             ret = 0;
-                goto the_end;
-            break;
-        default:
-        skip:
-            size += (size & 1);
-            if (avio_skip(pb, size) < 0)
-                goto the_end; // something is wrong here
             break;
         }
+
+        size += (size & 1);
+        if (avio_skip(pb, size) < 0)
+            break; // something is wrong here
     }
  the_end:
     avio_seek(pb, pos, SEEK_SET);