From d0e1473ab750101eab1b29fe2a550c0358900543 Mon Sep 17 00:00:00 2001
From: bcoudurier <bcoudurier@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Date: Mon, 4 Jan 2010 22:58:19 +0000
Subject: [PATCH] simplify error handling in mov_read_default

git-svn-id: file:///var/local/repositories/ffmpeg/trunk@21024 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
---
 libavformat/mov.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 48242bb82..2b045bdcf 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -181,11 +181,10 @@ static int mov_read_default(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
     int64_t total_size = 0;
     MOVAtom a;
     int i;
-    int err = 0;
 
     if (atom.size < 0)
         atom.size = INT64_MAX;
-    while(((total_size + 8) < atom.size) && !url_feof(pb) && !err) {
+    while(((total_size + 8) < atom.size) && !url_feof(pb)) {
         int (*parse)(MOVContext*, ByteIOContext*, MOVAtom) = NULL;
         a.size = atom.size;
         a.type=0;
@@ -226,7 +225,9 @@ static int mov_read_default(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
         } else {
             int64_t start_pos = url_ftell(pb);
             int64_t left;
-            err = parse(c, pb, a);
+            int err = parse(c, pb, a);
+            if (err < 0)
+                return err;
             if (url_is_streamed(pb) && c->found_moov && c->found_mdat)
                 break;
             left = a.size - url_ftell(pb) + start_pos;
@@ -237,10 +238,10 @@ static int mov_read_default(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
         total_size += a.size;
     }
 
-    if (!err && total_size < atom.size && atom.size < 0x7ffff)
+    if (total_size < atom.size && atom.size < 0x7ffff)
         url_fskip(pb, atom.size - total_size);
 
-    return err;
+    return 0;
 }
 
 static int mov_read_dref(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
-- 
2.25.4