From: Thiago Santos Date: Fri, 15 May 2009 04:54:44 +0000 (-0300) Subject: [qtmux] Fixes segfault when adding a blob as first tag. X-Git-Tag: RELEASE-0.10.29~209 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8e95c502f72e265a74dfc4a5d76aab1d0951bde5;p=platform%2Fupstream%2Fgst-plugins-good.git [qtmux] Fixes segfault when adding a blob as first tag. Moves tags data initialization to the function that actually appends the tags to the list. Fixes #582702 Also fixes some style caught by the pre-commit hook. --- diff --git a/gst/quicktime/atoms.c b/gst/quicktime/atoms.c index df6958e04..a5d8fe387 100644 --- a/gst/quicktime/atoms.c +++ b/gst/quicktime/atoms.c @@ -1855,13 +1855,11 @@ 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); + size += sample_entry_mp4v_copy_data ((SampleTableEntryMP4V *) + walker->data, buffer, size, offset); } else if (se->kind == AUDIO) { - size += - sample_entry_mp4a_copy_data ((SampleTableEntryMP4A *) walker-> - data, buffer, size, offset); + size += sample_entry_mp4a_copy_data ((SampleTableEntryMP4A *) + walker->data, buffer, size, offset); } else { if (!atom_hint_sample_entry_copy_data ( (AtomHintSampleEntry *) walker->data, buffer, size, offset)) { @@ -2547,6 +2545,7 @@ atom_moov_append_tag (AtomMOOV * moov, AtomInfo * tag) { AtomILST *ilst; + atom_moov_init_metatags (moov); ilst = moov->udta->meta->ilst; ilst->entries = g_list_append (ilst->entries, tag); } @@ -2563,7 +2562,6 @@ atom_moov_add_tag (AtomMOOV * moov, guint32 fourcc, guint32 flags, atom_tag_data_alloc_data (tdata, size); g_memmove (tdata->data, data, size); - atom_moov_init_metatags (moov); atom_moov_append_tag (moov, build_atom_info_wrapper ((Atom *) tag, atom_tag_copy_data, atom_tag_free));