| 
																	
																	
																		
																	
																	
																 | 
																@@ -850,6 +850,7 @@ static int mxf_read_cryptographic_context(void *arg, AVIOContext *pb, int tag, i | 
															
														
														
													
														
															
																 | 
																 | 
																static int mxf_read_strong_ref_array(AVIOContext *pb, UID **refs, int *count) | 
																 | 
																 | 
																static int mxf_read_strong_ref_array(AVIOContext *pb, UID **refs, int *count) | 
															
														
														
													
														
															
																 | 
																 | 
																{ | 
																 | 
																 | 
																{ | 
															
														
														
													
														
															
																 | 
																 | 
																    *count = avio_rb32(pb); | 
																 | 
																 | 
																    *count = avio_rb32(pb); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    av_free(*refs); | 
															
														
														
													
														
															
																 | 
																 | 
																    *refs = av_calloc(*count, sizeof(UID)); | 
																 | 
																 | 
																    *refs = av_calloc(*count, sizeof(UID)); | 
															
														
														
													
														
															
																 | 
																 | 
																    if (!*refs) { | 
																 | 
																 | 
																    if (!*refs) { | 
															
														
														
													
														
															
																 | 
																 | 
																        *count = 0; | 
																 | 
																 | 
																        *count = 0; | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																	
																	
																		
																	
																	
																 | 
																@@ -903,10 +904,8 @@ static int mxf_read_content_storage(void *arg, AVIOContext *pb, int tag, int siz | 
															
														
														
													
														
															
																 | 
																 | 
																    case 0x1901: | 
																 | 
																 | 
																    case 0x1901: | 
															
														
														
													
														
															
																 | 
																 | 
																        if (mxf->packages_refs) | 
																 | 
																 | 
																        if (mxf->packages_refs) | 
															
														
														
													
														
															
																 | 
																 | 
																            av_log(mxf->fc, AV_LOG_VERBOSE, "Multiple packages_refs\n"); | 
																 | 
																 | 
																            av_log(mxf->fc, AV_LOG_VERBOSE, "Multiple packages_refs\n"); | 
															
														
														
													
														
															
																 | 
																 | 
																        av_free(mxf->packages_refs); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																        return mxf_read_strong_ref_array(pb, &mxf->packages_refs, &mxf->packages_count); | 
																 | 
																 | 
																        return mxf_read_strong_ref_array(pb, &mxf->packages_refs, &mxf->packages_count); | 
															
														
														
													
														
															
																 | 
																 | 
																    case 0x1902: | 
																 | 
																 | 
																    case 0x1902: | 
															
														
														
													
														
															
																 | 
																 | 
																        av_free(mxf->essence_container_data_refs); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																        return mxf_read_strong_ref_array(pb, &mxf->essence_container_data_refs, &mxf->essence_container_data_count); | 
																 | 
																 | 
																        return mxf_read_strong_ref_array(pb, &mxf->essence_container_data_refs, &mxf->essence_container_data_count); | 
															
														
														
													
														
															
																 | 
																 | 
																    } | 
																 | 
																 | 
																    } | 
															
														
														
													
														
															
																 | 
																 | 
																    return 0; | 
																 | 
																 | 
																    return 0; | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																	
																	
																	
																 | 
																
  |