diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index 941691adb6437609c7855bd36caabc13693315cf..0ee04b0c64e77bbc321af8bc4769522d249afa89 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -390,28 +390,22 @@ void init_checksum(ByteIOContext *s,
 /* XXX: put an inline version */
 int get_byte(ByteIOContext *s)
 {
-    if (s->buf_ptr < s->buf_end) {
-        return *s->buf_ptr++;
-    } else {
+    if (s->buf_ptr >= s->buf_end)
         fill_buffer(s);
         if (s->buf_ptr < s->buf_end)
             return *s->buf_ptr++;
         else
             return 0;
-    }
 }
 
 int url_fgetc(ByteIOContext *s)
 {
-    if (s->buf_ptr < s->buf_end) {
-        return *s->buf_ptr++;
-    } else {
+    if (s->buf_ptr >= s->buf_end)
         fill_buffer(s);
         if (s->buf_ptr < s->buf_end)
             return *s->buf_ptr++;
         else
             return URL_EOF;
-    }
 }
 
 int get_buffer(ByteIOContext *s, unsigned char *buf, int size)