summaryrefslogtreecommitdiffstats
path: root/libmpeg2
diff options
context:
space:
mode:
authorhenry <henry@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-12-01 17:47:55 +0000
committerhenry <henry@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-12-01 17:47:55 +0000
commitc4a33d0dc42f8c6916a2534b6767afc7f629ecb9 (patch)
tree999b48fced7857576d22326d7afd07a3f9227834 /libmpeg2
parent4d696cc72900152f8622848498d5439d7f044978 (diff)
downloadmpv-c4a33d0dc42f8c6916a2534b6767afc7f629ecb9.tar.bz2
mpv-c4a33d0dc42f8c6916a2534b6767afc7f629ecb9.tar.xz
ignore invalid values in the sequence display extension (backport from 0.4.1)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21415 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpeg2')
-rw-r--r--libmpeg2/header.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libmpeg2/header.c b/libmpeg2/header.c
index 2010043359..2df830b39b 100644
--- a/libmpeg2/header.c
+++ b/libmpeg2/header.c
@@ -272,9 +272,11 @@ static int sequence_display_ext (mpeg2dec_t * mpeg2dec)
if (!(buffer[2] & 2)) /* missing marker_bit */
return 1;
- sequence->display_width = (buffer[1] << 6) | (buffer[2] >> 2);
- sequence->display_height =
- ((buffer[2]& 1 ) << 13) | (buffer[3] << 5) | (buffer[4] >> 3);
+ if( (buffer[1] << 6) | (buffer[2] >> 2) )
+ sequence->display_width = (buffer[1] << 6) | (buffer[2] >> 2);
+ if( ((buffer[2]& 1 ) << 13) | (buffer[3] << 5) | (buffer[4] >> 3) )
+ sequence->display_height =
+ ((buffer[2]& 1 ) << 13) | (buffer[3] << 5) | (buffer[4] >> 3);
return 0;
}