summaryrefslogtreecommitdiff
path: root/libavformat/matroskadec.c
diff options
context:
space:
mode:
authorAurelien Jacobs <aurel@gnuage.org>2008-08-05 00:41:40 +0000
committerAurelien Jacobs <aurel@gnuage.org>2008-08-05 00:41:40 +0000
commit44cea7651b010ed7dea46d4c71f170e2a3dbfaa6 (patch)
treeff749df0229ab4f1da0afdaa6fb38c22eb09399f /libavformat/matroskadec.c
parentdfde36a33e2807548ce5b0a0a4d1eda2f9e3924a (diff)
matroskadec: extract read_level_up out of ebml_read_element_id
Originally committed as revision 14585 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/matroskadec.c')
-rw-r--r--libavformat/matroskadec.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index 3b676214bb..498e3d9e75 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -559,10 +559,6 @@ ebml_read_element_id (MatroskaDemuxContext *matroska,
return read;
*id = matroska->peek_id = total | (1 << (read * 7));
- /* level tracking */
- if (level_up)
- *level_up = ebml_read_element_level_up(matroska);
-
return read;
}
@@ -591,10 +587,15 @@ ebml_peek_id (MatroskaDemuxContext *matroska,
int *level_up)
{
uint32_t id;
+ int res;
- if (ebml_read_element_id(matroska, &id, level_up) < 0)
+ res = ebml_read_element_id(matroska, &id, NULL);
+ if (res < 0)
return 0;
+ if (res > 0 && level_up)
+ *level_up = ebml_read_element_level_up(matroska);
+
return id;
}