mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-05 15:08:53 +00:00
asfdemux: accept fragments in a continued packet where the subsequent fragments
declare a size of 0. Fixes bug 600037.
This commit is contained in:
parent
3784de031d
commit
5ccedb2a38
1 changed files with 10 additions and 2 deletions
|
@ -101,8 +101,16 @@ asf_payload_find_previous_fragment (AsfPayload * payload, AsfStream * stream)
|
||||||
|
|
||||||
if (G_UNLIKELY (ret->mo_size != payload->mo_size ||
|
if (G_UNLIKELY (ret->mo_size != payload->mo_size ||
|
||||||
ret->mo_number != payload->mo_number || ret->mo_offset != 0)) {
|
ret->mo_number != payload->mo_number || ret->mo_offset != 0)) {
|
||||||
|
if (payload->mo_size != 0) {
|
||||||
GST_WARNING ("Previous fragment does not match continued fragment");
|
GST_WARNING ("Previous fragment does not match continued fragment");
|
||||||
return NULL;
|
return NULL;
|
||||||
|
} else {
|
||||||
|
// Warn about this case, but accept it anyway: files in the wild sometimes
|
||||||
|
// have continued packets where the subsequent fragments say that they're
|
||||||
|
// zero-sized.
|
||||||
|
GST_WARNING ("Previous fragment found, but current fragment has "
|
||||||
|
"zero size, accepting anyway");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#if 0
|
#if 0
|
||||||
if (this_fragment->mo_offset + this_payload_len > first_fragment->mo_size) {
|
if (this_fragment->mo_offset + this_payload_len > first_fragment->mo_size) {
|
||||||
|
|
Loading…
Reference in a new issue