mozilla-bmo1573381.patch
branchfirefox70
changeset 1112 8a4f5aea2475
parent 1111 97a6da6d7e29
child 1113 8e9195853a32
--- a/mozilla-bmo1573381.patch	Sun Oct 20 14:25:55 2019 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-# HG changeset patch
-# Parent  45680ce4ca06795cbca1ea5a9ae8a7a11ab95cf1
-The code tries to find a codec in a list of codecs. For this it searches for a given prefix.
-But the prefix is of type char16_t, which means 2 bytes per character instead of 1, as was compared here.
-On big endian this created some false positives, as the order of bytes is different and some characters only
-occupy "the first" byte, having the second null'ed out.
-Noticed because of gtest: MediaMIMETypes.MediaCodecs
-
-Upstream bugreport: https://bugzilla.mozilla.org/show_bug.cgi?id=1573381
-
-diff -r 45680ce4ca06 -r 381102061fcc dom/media/MediaMIMETypes.cpp
---- a/dom/media/MediaMIMETypes.cpp	Mon Aug 05 09:28:53 2019 +0200
-+++ b/dom/media/MediaMIMETypes.cpp	Tue Aug 13 07:51:27 2019 +0200
-@@ -87,7 +87,7 @@
-   const size_t prefixLength = aCodecPrefix.Length();
-   for (const auto& myCodec : Range()) {
-     if (myCodec.Length() >= prefixLength &&
--        memcmp(myCodec.Data(), aCodecPrefix.Data(), prefixLength) == 0) {
-+        memcmp(myCodec.Data(), aCodecPrefix.Data(), prefixLength * sizeof(char16_t)) == 0) {
-       return true;
-     }
-   }