Closed Bug 566246 Opened 10 years ago Closed 10 years ago

Merge libnestegg to mozilla-central

Categories

(Core :: Audio/Video, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- alpha5+

People

(Reporter: roc, Assigned: kinetik)

References

Details

Attachments

(1 file, 4 obsolete files)

Need to extract the patches from mozilla-webmedia, attach a unified patch
here and get reviews.
Group: mozilla-corporation-confidential
Attached patch import libnestegg v0 (obsolete) — Splinter Review
Import media/libnestegg and toolkit/content/license.html changes.  Does not include any changes to the build system--they should be included in the patch attached to the import libvpx bug.
Note that this imports a newer version of libnestegg than we included in the nightly-webm dev builds.
Depends on: 566247
Attachment #446433 - Flags: review?(chris.double)
Comment on attachment 446433 [details] [diff] [review]
import libnestegg v0

r+ with the changes below

> diff --git a/media/libnestegg/include/nestegg.h b/media/libnestegg/include/nestegg.h
>    @code
>    nestegg * ctx;
>    nestegg_init(&ctx, io);

Documentation is out of date to the implementation. Missing log parameter.

>  /** User supplied read callback.
>      @param buffer  Buffer to read data into.
>      @param length  Length of supplied buffer in bytes.
>      @param userptr The #userdata supplied by the user.
>      @retval  1 Read succeeded.
>      @retval  0 End of stream.
>      @retval -1 Error. */
>  int (* read)(void * buffer, size_t length, void * userdata);

Documentation says the last parameter is 'userptr' but it is 'userdata'.

>    @retval #NESTEGG_TRACK_VIDEO Track type is audio.

Should be NESTEGG_TRACK_AUDIO

diff --git a/media/libnestegg/src/nestegg.c b/media/libnestegg/src/nestegg.c
>#if 0
>static void
>pool_free(void * p)
>{
>  h_free(p);
>}
>#endif

Unused code/comment.

>#if 0
>static int
>get_int(struct ebml_type type, int64_t * value)
>{
>  if (!type.read)
>    return -1;
>
>  assert(type.type == TYPE_INT);
>
>  *value = type.v.i;
>
>  return 0;
>}
>#endif

Unused code/comment.
Attachment #446433 - Flags: review?(chris.double) → review+
Attached patch patch v1 (obsolete) — Splinter Review
Address review comments.  Also includes upstream change (http://github.com/kinetiknz/nestegg/commit/8977670dd9c04bd4984a329595fafac8f6100f3e) to ignore track timecode scale, as this is not supported in WebM.
Attachment #446433 - Attachment is obsolete: true
Attachment #447275 - Flags: review+
Attached patch patch v2 (obsolete) — Splinter Review
Same as v1 but update.sh is updated to reflect autotoolified directory structure of nestegg and copyright is assigned to MoFo.
Attachment #447275 - Attachment is obsolete: true
Attachment #447415 - Flags: review+
Attached patch patch v3 (obsolete) — Splinter Review
Same as v2, but moves stdint.h cruft out to a separate file.
Attachment #447415 - Attachment is obsolete: true
Attachment #447435 - Flags: review+
Attached patch patch v4Splinter Review
Sorry for the bugspam.

Same as v3, but includes seek-to-end fix from http://github.com/kinetiknz/nestegg/commit/f9b8ff50024a9c6cc768249a19ce7a2107cf83f9.

Rerequesting review as this includes a logic change.
Attachment #447435 - Attachment is obsolete: true
Attachment #447470 - Flags: review?(chris.double)
We should probably add libnestegg to https://wiki.mozilla.org/ThirdPartyCode when we check in.
Attachment #447470 - Flags: review?(chris.double) → review+
We want WebM support in alpha 5, marking as a blocker.
blocking2.0: --- → alpha5+
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Depends on: CVE-2015-4511
You need to log in before you can comment on or make changes to this bug.