avformat/wavarc: Check if extradata has been fully read
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
		
							parent
							
								
									8ead0ae68e
								
							
						
					
					
						commit
						2df271c78c
					
				@ -22,6 +22,7 @@
 | 
				
			|||||||
#include "libavutil/channel_layout.h"
 | 
					#include "libavutil/channel_layout.h"
 | 
				
			||||||
#include "libavutil/intreadwrite.h"
 | 
					#include "libavutil/intreadwrite.h"
 | 
				
			||||||
#include "avformat.h"
 | 
					#include "avformat.h"
 | 
				
			||||||
 | 
					#include "avio_internal.h"
 | 
				
			||||||
#include "demux.h"
 | 
					#include "demux.h"
 | 
				
			||||||
#include "internal.h"
 | 
					#include "internal.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -84,7 +85,9 @@ static int wavarc_read_header(AVFormatContext *s)
 | 
				
			|||||||
    if (ret < 0)
 | 
					    if (ret < 0)
 | 
				
			||||||
        return ret;
 | 
					        return ret;
 | 
				
			||||||
    memcpy(par->extradata, data, sizeof(data));
 | 
					    memcpy(par->extradata, data, sizeof(data));
 | 
				
			||||||
    avio_read(pb, par->extradata + sizeof(data), fmt_len);
 | 
					    ret = ffio_read_size(pb, par->extradata + sizeof(data), fmt_len);
 | 
				
			||||||
 | 
					    if (ret < 0)
 | 
				
			||||||
 | 
					        return ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    par->codec_type = AVMEDIA_TYPE_AUDIO;
 | 
					    par->codec_type = AVMEDIA_TYPE_AUDIO;
 | 
				
			||||||
    par->codec_id   = AV_CODEC_ID_WAVARC;
 | 
					    par->codec_id   = AV_CODEC_ID_WAVARC;
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user