mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
qtmux: do not add size to the pointer variable
Do not wrongly add the result of the function to the pointer to the buffer size. Instead, check the result to see if the serialization was ok. Based on a patch by: "Carsten Kroll <car@ximidi.com>" Fixes #602106
This commit is contained in:
parent
1d155a6357
commit
b53243fed3
1 changed files with 8 additions and 4 deletions
|
@ -1909,11 +1909,15 @@ atom_stsd_copy_data (AtomSTSD * stsd, guint8 ** buffer, guint64 * size,
|
|||
break;
|
||||
default:
|
||||
if (se->kind == VIDEO) {
|
||||
size += sample_entry_mp4v_copy_data ((SampleTableEntryMP4V *)
|
||||
walker->data, buffer, size, offset);
|
||||
if (!sample_entry_mp4v_copy_data ((SampleTableEntryMP4V *)
|
||||
walker->data, buffer, size, offset)) {
|
||||
return 0;
|
||||
}
|
||||
} else if (se->kind == AUDIO) {
|
||||
size += sample_entry_mp4a_copy_data ((SampleTableEntryMP4A *)
|
||||
walker->data, buffer, size, offset);
|
||||
if (!sample_entry_mp4a_copy_data ((SampleTableEntryMP4A *)
|
||||
walker->data, buffer, size, offset)) {
|
||||
return 0;
|
||||
}
|
||||
} else {
|
||||
if (!atom_hint_sample_entry_copy_data (
|
||||
(AtomHintSampleEntry *) walker->data, buffer, size, offset)) {
|
||||
|
|
Loading…
Reference in a new issue