Index: branches/2018Q3/www/waterfox/Makefile =================================================================== --- branches/2018Q3/www/waterfox/Makefile (revision 474660) +++ branches/2018Q3/www/waterfox/Makefile (revision 474661) @@ -1,78 +1,76 @@ # $FreeBSD$ PORTNAME= waterfox -DISTVERSION= 56.2.1-55 -DISTVERSIONSUFFIX= -g6395bf177f76a -PORTREVISION= 3 +DISTVERSION= 56.2.2 CATEGORIES= www ipv6 MAINTAINER= jbeich@FreeBSD.org COMMENT= Distilled fork of Firefox DEPRECATED= Temporary experiment -EXPIRATION_DATE=2018-07-10 +EXPIRATION_DATE=2018-09-27 BUILD_DEPENDS= nspr>=4.16:devel/nspr \ nss>=3.32.1:security/nss \ icu>=59.1,1:devel/icu \ libevent>=2.1.8:devel/libevent \ harfbuzz>=1.4.7:print/harfbuzz \ graphite2>=1.3.10:graphics/graphite2 \ png>=1.6.31:graphics/png \ libvorbis>=1.3.5,3:audio/libvorbis \ libvpx>=1.5.0:multimedia/libvpx \ sqlite3>=3.19.3:databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ v4l_compat>0:multimedia/v4l_compat \ autoconf-2.13:devel/autoconf213 \ yasm:devel/yasm \ zip:archivers/zip # soundtouch>=1.9.0:audio/soundtouch \ LIB_DEPENDS= libv4l2.so:multimedia/libv4l USE_GITHUB= yes GH_ACCOUNT= MrAlex94 GH_PROJECT= Waterfox USE_GECKO= gecko MOZ_PKGCONFIG_FILES= # empty USE_MOZILLA= -soundtouch MOZILLA_NAME= Waterfox USE_GL= gl WATERFOX_ICON= ${MOZILLA}.png WATERFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default256.png WATERFOX_DESKTOP= ${MOZSRC}/taskcluster/docker/firefox-snap/firefox.desktop MOZ_OPTIONS= --enable-application=browser \ --with-app-name=${MOZILLA} \ --with-app-basename=${MOZILLA_NAME} \ --with-distribution-id=org.${MOZILLA}project OPTIONS_DEFAULT= BUNDLED_CAIRO .include "${.CURDIR}/../../www/firefox/Makefile.options" # Inconsistent fallback order (libcubeb vs. audio_device) SNDIO_PREVENTS= ${OPTIONS_MULTI_AUDIO:NSNDIO} post-patch: @${REINPLACE_CMD} -e 's/%u/%U/' -e '/X-MultipleArgs/d' \ -e 's/firefox/${MOZILLA}/' \ -e 's/Firefox/${MOZILLA_NAME}/' \ ${WATERFOX_DESKTOP} @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/browser/app/nsBrowserApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-install: ${INSTALL_DATA} ${WATERFOX_DESKTOP} \ ${STAGEDIR}${PREFIX}/share/applications/${MOZILLA}.desktop ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${LN} -sf ${WATERFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${WATERFOX_ICON} .include Index: branches/2018Q3/www/waterfox/distinfo =================================================================== --- branches/2018Q3/www/waterfox/distinfo (revision 474660) +++ branches/2018Q3/www/waterfox/distinfo (revision 474661) @@ -1,3 +1,3 @@ -TIMESTAMP = 1530543888 -SHA256 (MrAlex94-Waterfox-56.2.1-55-g6395bf177f76a_GH0.tar.gz) = 768ff4628b2f4dcf1868dfae711a10b69d2166c544a1252dd4463c2b596676ec -SIZE (MrAlex94-Waterfox-56.2.1-55-g6395bf177f76a_GH0.tar.gz) = 395130631 +TIMESTAMP = 1531411206 +SHA256 (MrAlex94-Waterfox-56.2.2_GH0.tar.gz) = cdca42bb619f0a4dedf216c78fe965775fd5e6cb14c8b5e677fe264b1f5667b2 +SIZE (MrAlex94-Waterfox-56.2.2_GH0.tar.gz) = 395130444 Index: branches/2018Q3/www/waterfox/files/patch-bug1452576 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1452576 (revision 474660) +++ branches/2018Q3/www/waterfox/files/patch-bug1452576 (nonexistent) @@ -1,92 +0,0 @@ -commit fac32e857b4b -Author: Andrea Marchesini -Date: Thu May 10 09:02:16 2018 +0200 - - Bug 1452576 - Improve StructuredCloneHolder for fuzzy tests. r=decoder, a=RyanVM - - --HG-- - extra : source : c8d6bf455ae5ac9a31ff9fc5418e87a66f12e89c ---- - dom/base/StructuredCloneHolder.cpp | 34 ++++++++++++++++++---------------- - 1 file changed, 18 insertions(+), 16 deletions(-) - -diff --git dom/base/StructuredCloneHolder.cpp dom/base/StructuredCloneHolder.cpp -index 745ef7871b856..9f697fc2878e7 100644 ---- dom/base/StructuredCloneHolder.cpp -+++ dom/base/StructuredCloneHolder.cpp -@@ -1024,9 +1024,9 @@ StructuredCloneHolder::CustomReadHandler(JSContext* aCx, - return ReadFormData(aCx, aReader, aIndex, this); - } - -- if (aTag == SCTAG_DOM_IMAGEBITMAP) { -- MOZ_ASSERT(mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -- mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread); -+ if (aTag == SCTAG_DOM_IMAGEBITMAP && -+ (mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -+ mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread)) { - - // Get the current global object. - // This can be null. -@@ -1040,7 +1040,9 @@ StructuredCloneHolder::CustomReadHandler(JSContext* aCx, - return StructuredCloneBlob::ReadStructuredClone(aCx, aReader, this); - } - -- if (aTag == SCTAG_DOM_WASM) { -+ if (aTag == SCTAG_DOM_WASM && -+ (mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -+ mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread)) { - return ReadWasmModule(aCx, aIndex, this); - } - -@@ -1175,9 +1177,9 @@ StructuredCloneHolder::CustomReadTransferHandler(JSContext* aCx, - return true; - } - -- if (aTag == SCTAG_DOM_CANVAS) { -- MOZ_ASSERT(mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -- mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread); -+ if (aTag == SCTAG_DOM_CANVAS && -+ (mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -+ mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread)) { - MOZ_ASSERT(aContent); - OffscreenCanvasCloneData* data = - static_cast(aContent); -@@ -1195,9 +1197,9 @@ StructuredCloneHolder::CustomReadTransferHandler(JSContext* aCx, - return true; - } - -- if (aTag == SCTAG_DOM_IMAGEBITMAP) { -- MOZ_ASSERT(mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -- mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread); -+ if (aTag == SCTAG_DOM_IMAGEBITMAP && -+ (mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -+ mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread)) { - MOZ_ASSERT(aContent); - ImageBitmapCloneData* data = - static_cast(aContent); -@@ -1320,9 +1322,9 @@ StructuredCloneHolder::CustomFreeTransferHandler(uint32_t aTag, - return; - } - -- if (aTag == SCTAG_DOM_CANVAS) { -- MOZ_ASSERT(mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -- mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread); -+ if (aTag == SCTAG_DOM_CANVAS && -+ (mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -+ mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread)) { - MOZ_ASSERT(aContent); - OffscreenCanvasCloneData* data = - static_cast(aContent); -@@ -1330,9 +1332,9 @@ StructuredCloneHolder::CustomFreeTransferHandler(uint32_t aTag, - return; - } - -- if (aTag == SCTAG_DOM_IMAGEBITMAP) { -- MOZ_ASSERT(mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -- mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread); -+ if (aTag == SCTAG_DOM_IMAGEBITMAP && -+ (mStructuredCloneScope == StructuredCloneScope::SameProcessSameThread || -+ mStructuredCloneScope == StructuredCloneScope::SameProcessDifferentThread)) { - MOZ_ASSERT(aContent); - ImageBitmapCloneData* data = - static_cast(aContent); Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1452576 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1458048 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1458048 (revision 474660) +++ branches/2018Q3/www/waterfox/files/patch-bug1458048 (nonexistent) @@ -1,40 +0,0 @@ -commit 66dfec8053be -Author: Daniel Minor -Date: Wed Jun 20 21:18:50 2018 -0400 - - Bug 1458048 - Cherry pick usersctp rev 8789a6da02e2c7c03522bc6f275b302f6ef977fe; r=drno, a=RyanVM - - --HG-- - extra : source : 492697e43fb4abf3cca014249bc35797f3312236 - extra : amend_source : 2a960ee15610dd344ceffd22dab70994cbf52198 ---- - netwerk/sctp/src/netinet/sctp_auth.c | 4 +++- - netwerk/sctp/src/netinet/sctp_pcb.c | 4 +++- - 2 files changed, 6 insertions(+), 2 deletions(-) - -diff --git netwerk/sctp/src/netinet/sctp_auth.c netwerk/sctp/src/netinet/sctp_auth.c -index 50432ad8a5954..ee5ca36ce37b1 100755 ---- netwerk/sctp/src/netinet/sctp_auth.c -+++ netwerk/sctp/src/netinet/sctp_auth.c -@@ -1525,6 +1525,8 @@ sctp_auth_get_cookie_params(struct sctp_tcb *stcb, struct mbuf *m, - if (p_random != NULL) { - keylen = sizeof(*p_random) + random_len; - bcopy(p_random, new_key->key, keylen); -+ } else { -+ keylen = 0; - } - /* append in the AUTH chunks */ - if (chunks != NULL) { -diff --git netwerk/sctp/src/netinet/sctp_pcb.c netwerk/sctp/src/netinet/sctp_pcb.c -index 2970970250a2a..58c164f5039c7 100755 ---- netwerk/sctp/src/netinet/sctp_pcb.c -+++ netwerk/sctp/src/netinet/sctp_pcb.c -@@ -7688,6 +7688,8 @@ sctp_load_addresses_from_init(struct sctp_tcb *stcb, struct mbuf *m, - if (p_random != NULL) { - keylen = sizeof(*p_random) + random_len; - bcopy(p_random, new_key->key, keylen); -+ } else { -+ keylen = 0; - } - /* append in the AUTH chunks */ - if (chunks != NULL) { Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1458048 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1458270 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1458270 (revision 474660) +++ branches/2018Q3/www/waterfox/files/patch-bug1458270 (nonexistent) @@ -1,125 +0,0 @@ -commit df3a104363d4 -Author: David Major -Date: Tue May 8 17:37:25 2018 -0400 - - Bug 1458270 - Clean up in the shutdown observer. r=milan, a=RyanVM - - --HG-- - extra : source : 74cb61ae46eec86a761dfd8b245dff06bbf14634 ---- - widget/GfxInfoBase.cpp | 8 ++++++-- - widget/GfxInfoX11.cpp | 8 ++++++-- - widget/android/GfxInfo.cpp | 4 ++++ - widget/cocoa/GfxInfo.mm | 4 ++++ - widget/uikit/GfxInfo.cpp | 4 ++++ - widget/windows/GfxInfo.cpp | 4 ++++ - 6 files changed, 28 insertions(+), 4 deletions(-) - -diff --git widget/GfxInfoBase.cpp widget/GfxInfoBase.cpp -index 560a49e4d237b..d407acb3e611b 100644 ---- widget/GfxInfoBase.cpp -+++ widget/GfxInfoBase.cpp -@@ -65,11 +65,15 @@ public: - delete GfxInfoBase::mFeatureStatus; - GfxInfoBase::mFeatureStatus = nullptr; - -- for (uint32_t i = 0; i < DeviceFamilyMax; i++) -+ for (uint32_t i = 0; i < DeviceFamilyMax; i++) { - delete GfxDriverInfo::mDeviceFamilies[i]; -+ GfxDriverInfo::mDeviceFamilies[i] = nullptr; -+ } - -- for (uint32_t i = 0; i < DeviceVendorMax; i++) -+ for (uint32_t i = 0; i < DeviceVendorMax; i++) { - delete GfxDriverInfo::mDeviceVendors[i]; -+ GfxDriverInfo::mDeviceVendors[i] = nullptr; -+ } - - GfxInfoBase::mShutdownOccurred = true; - -diff --git widget/GfxInfoX11.cpp widget/GfxInfoX11.cpp -index 098f82d2976d2..6d48a88c57c5f 100644 ---- widget/GfxInfoX11.cpp -+++ widget/GfxInfoX11.cpp -@@ -275,8 +275,6 @@ GfxInfo::GetFeatureStatusImpl(int32_t aFeature, - OperatingSystem* aOS /* = nullptr */) - - { -- GetData(); -- - NS_ENSURE_ARG_POINTER(aStatus); - *aStatus = nsIGfxInfo::FEATURE_STATUS_UNKNOWN; - aSuggestedDriverVersion.SetIsVoid(true); -@@ -284,6 +282,12 @@ GfxInfo::GetFeatureStatusImpl(int32_t aFeature, - if (aOS) - *aOS = os; - -+ if (mShutdownOccurred) { -+ return NS_OK; -+ } -+ -+ GetData(); -+ - if (mGLMajorVersion == 1) { - // We're on OpenGL 1. In most cases that indicates really old hardware. - // We better block them, rather than rely on them to fail gracefully, because they don't! -diff --git widget/android/GfxInfo.cpp widget/android/GfxInfo.cpp -index 13d097e380c1a..4fc2c0919447c 100644 ---- widget/android/GfxInfo.cpp -+++ widget/android/GfxInfo.cpp -@@ -392,6 +392,10 @@ GfxInfo::GetFeatureStatusImpl(int32_t aFeature, - if (aOS) - *aOS = os; - -+ if (mShutdownOccurred) { -+ return NS_OK; -+ } -+ - // OpenGL layers are never blacklisted on Android. - // This early return is so we avoid potentially slow - // GLStrings initialization on startup when we initialize GL layers. -diff --git widget/cocoa/GfxInfo.mm widget/cocoa/GfxInfo.mm -index f0cc36a18847d..bf6092488beab 100644 ---- widget/cocoa/GfxInfo.mm -+++ widget/cocoa/GfxInfo.mm -@@ -338,6 +338,10 @@ GfxInfo::GetFeatureStatusImpl(int32_t aFeature, - if (aOS) - *aOS = os; - -+ if (mShutdownOccurred) { -+ return NS_OK; -+ } -+ - // Don't evaluate special cases when we're evaluating the downloaded blocklist. - if (!aDriverInfo.Length()) { - if (aFeature == nsIGfxInfo::FEATURE_WEBGL_MSAA) { -diff --git widget/uikit/GfxInfo.cpp widget/uikit/GfxInfo.cpp -index 2aea3b5eaba0d..cabe993dd06f1 100644 ---- widget/uikit/GfxInfo.cpp -+++ widget/uikit/GfxInfo.cpp -@@ -175,6 +175,10 @@ GfxInfo::GetFeatureStatusImpl(int32_t aFeature, - if (aOS) - *aOS = OperatingSystem::Ios; - -+ if (mShutdownOccurred) { -+ return NS_OK; -+ } -+ - // OpenGL layers are never blacklisted on iOS. - // This early return is so we avoid potentially slow - // GLStrings initialization on startup when we initialize GL layers. -diff --git widget/windows/GfxInfo.cpp widget/windows/GfxInfo.cpp -index dd2798803449f..409c428b493f7 100644 ---- widget/windows/GfxInfo.cpp -+++ widget/windows/GfxInfo.cpp -@@ -1453,6 +1453,10 @@ GfxInfo::GetFeatureStatusImpl(int32_t aFeature, - if (aOS) - *aOS = os; - -+ if (mShutdownOccurred) { -+ return NS_OK; -+ } -+ - // Don't evaluate special cases if we're checking the downloaded blocklist. - if (!aDriverInfo.Length()) { - nsAutoString adapterVendorID; Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1458270 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1462912 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1462912 (revision 474660) +++ branches/2018Q3/www/waterfox/files/patch-bug1462912 (nonexistent) @@ -1,57 +0,0 @@ -commit 8fbbe9d566d3 (origin/beta) -Author: Alex Gaynor -Date: Tue May 22 13:04:59 2018 -0400 - - Bug 1462912 - Fixed BufferList::Extract to handle the case where the call consumes the entirety of the BufferList. r=froydnj, a=RyanVM - - MozReview-Commit-ID: 1LWODn8JaNL - - --HG-- - extra : source : 96a6ea5ea3468b4c9e20ff8d9795a7ef136213a9 ---- - mfbt/BufferList.h | 9 ++++++++- - mfbt/tests/TestBufferList.cpp | 12 ++++++++++++ - 2 files changed, 20 insertions(+), 1 deletion(-) - -diff --git mfbt/BufferList.h mfbt/BufferList.h -index a2e7aac32a9f3..1b35874f3df0d 100644 ---- mfbt/BufferList.h -+++ mfbt/BufferList.h -@@ -614,7 +614,14 @@ BufferList::Extract(IterImpl& aIter, size_t aSize, bool* aSuccess) - mSegments[aIter.mSegment].mCapacity)); - aIter.Advance(*this, aIter.RemainingInSegment()); - } -- MOZ_RELEASE_ASSERT(aIter.mSegment == copyStart + segmentsToCopy); -+ // Due to the way IterImpl works, there are two cases here: (1) if we've -+ // consumed the entirety of the BufferList, then the iterator is pointed at -+ // the end of the final segment, (2) otherwise it is pointed at the start -+ // of the next segment. We want to verify that we really consumed all -+ // |segmentsToCopy| segments. -+ MOZ_RELEASE_ASSERT( -+ (aIter.mSegment == copyStart + segmentsToCopy) || -+ (aIter.Done() && aIter.mSegment == copyStart + segmentsToCopy - 1)); - mSegments.erase(mSegments.begin() + copyStart, - mSegments.begin() + copyStart + segmentsToCopy); - -diff --git mfbt/tests/TestBufferList.cpp mfbt/tests/TestBufferList.cpp -index 207fa106f556f..325f8a3aa7ada 100644 ---- mfbt/tests/TestBufferList.cpp -+++ mfbt/tests/TestBufferList.cpp -@@ -279,5 +279,17 @@ int main(void) - MOZ_RELEASE_ASSERT(bl9.Size() == 8); - MOZ_RELEASE_ASSERT(!iter.Done()); - -+ BufferList bl10(0, 0, 8); -+ bl10.WriteBytes("abcdefgh", 8); -+ bl10.WriteBytes("12345678", 8); -+ iter = bl10.Iter(); -+ BufferList bl11 = bl10.Extract(iter, 16, &success); -+ MOZ_RELEASE_ASSERT(success); -+ MOZ_RELEASE_ASSERT(bl11.Size() == 16); -+ MOZ_RELEASE_ASSERT(iter.Done()); -+ iter = bl11.Iter(); -+ MOZ_RELEASE_ASSERT(bl11.ReadBytes(iter, data, 16)); -+ MOZ_RELEASE_ASSERT(memcmp(data, "abcdefgh12345678", 16) == 0); -+ - return 0; - } Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1462912 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1463494 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1463494 (revision 474660) +++ branches/2018Q3/www/waterfox/files/patch-bug1463494 (nonexistent) @@ -1,50 +0,0 @@ -commit 2314ad56620e -Author: Randell Jesup -Date: Fri May 25 21:16:28 2018 -0400 - - Bug 1463494 - Delete the sensor observerlist array in a deferred manner. r=froydnj, r=jchen, a=abillings - - Clean up sensorlist if Dispatch fails. - - --HG-- - extra : source : 494d77b62c333c2b71097d4ecf41c1a60dc495a2 ---- - hal/Hal.cpp | 19 +++++++++++++++++-- - 1 file changed, 17 insertions(+), 2 deletions(-) - -diff --git hal/Hal.cpp hal/Hal.cpp -index ddd7121a91dd1..6b389407f737a 100644 ---- hal/Hal.cpp -+++ hal/Hal.cpp -@@ -439,14 +439,29 @@ UnregisterSensorObserver(SensorType aSensor, ISensorObserver *aObserver) { - } - DisableSensorNotifications(aSensor); - -- // Destroy sSensorObservers only if all observer lists are empty. - for (int i = 0; i < NUM_SENSOR_TYPE; i++) { - if (gSensorObservers[i].Length() > 0) { - return; - } - } -- delete [] gSensorObservers; -+ -+ // We want to destroy gSensorObservers if all observer lists are -+ // empty, but we have to defer the deallocation via a runnable to -+ // mainthread (since we may be inside NotifySensorChange()/Broadcast() -+ // when it calls UnregisterSensorObserver()). -+ SensorObserverList* sensorlists = gSensorObservers; - gSensorObservers = nullptr; -+ -+ // Unlike DispatchToMainThread, DispatchToCurrentThread doesn't leak a runnable if -+ // it fails (and we assert we're on MainThread). -+ if (NS_FAILED(NS_DispatchToCurrentThread(NS_NewRunnableFunction("UnregisterSensorObserver", -+ [sensorlists]() -> void { -+ delete [] sensorlists; -+ })))) -+ { -+ // Still need to delete sensorlists if the dispatch fails -+ delete [] sensorlists; -+ } - } - - void Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1463494 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1464079 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1464079 (revision 474660) +++ branches/2018Q3/www/waterfox/files/patch-bug1464079 (nonexistent) @@ -1,28 +0,0 @@ -commit 3b9d019a49e9 -Author: Byron Campen [:bwc] -Date: Thu May 31 11:30:19 2018 -0500 - - Bug 1464079 - Bring ICE connection state change callback up to spec. r=jib, a=RyanVM - - --HG-- - extra : source : 4e4dadfffd60538ec94ff6e77e47cf8dc0cec4e4 ---- - dom/media/PeerConnection.js | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git dom/media/PeerConnection.js dom/media/PeerConnection.js -index 694deaa78d26f..18ae4a8231f37 100644 ---- dom/media/PeerConnection.js -+++ dom/media/PeerConnection.js -@@ -1801,7 +1801,10 @@ class PeerConnectionObserver { - break; - - case "IceConnectionState": -- this.handleIceConnectionStateChange(this._dompc._pc.iceConnectionState); -+ let connState = this._dompc._pc.iceConnectionState; -+ this._dompc._queueTaskWithClosedCheck(() => { -+ this.handleIceConnectionStateChange(connState); -+ }); - break; - - case "IceGatheringState": Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1464079 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1431285 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1431285 (nonexistent) +++ branches/2018Q3/www/waterfox/files/patch-bug1431285 (revision 474661) @@ -0,0 +1,34 @@ +commit 767fca9e52ef +Author: Bobby Holley +Date: Tue Jul 3 23:47:48 2018 +0000 + + Bug 1431285 - Cap the number of style threads at six. r=emilio a=lizzard + + MozReview-Commit-ID: 3qI1mIvDn8j + + Differential Revision: https://phabricator.services.mozilla.com/D1928 + + --HG-- + extra : source : 0d61bbcd24d8eb49d2beea278859da868186f783 +--- + servo/components/style/gecko/global_style_data.rs | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git servo/components/style/gecko/global_style_data.rs servo/components/style/gecko/global_style_data.rs +index f1cb107dff0fa..6671de9867d2f 100644 +--- servo/components/style/gecko/global_style_data.rs ++++ servo/components/style/gecko/global_style_data.rs +@@ -65,7 +65,12 @@ lazy_static! { + .map(|s| s.parse::().expect("invalid STYLO_THREADS value")); + let mut num_threads = match stylo_threads { + Ok(num) => num, +- _ => cmp::max(num_cpus::get() * 3 / 4, 1), ++ // The default heuristic is num_virtual_cores * .75. This gives us ++ // three threads on a hyper-threaded dual core, and six threads on ++ // a hyper-threaded quad core. The performance benefit of additional ++ // threads seems to level off at around six, so we cap it there on ++ // many-core machines (see bug 1431285 comment 14). ++ _ => cmp::min(cmp::max(num_cpus::get() * 3 / 4, 1), 6), + }; + + // If num_threads is one, there's no point in creating a thread pool, so Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1431285 ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1472925 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1472925 (nonexistent) +++ branches/2018Q3/www/waterfox/files/patch-bug1472925 (revision 474661) @@ -0,0 +1,83 @@ +commit 8ffab3ae0ea3 +Author: Karl Tomlinson +Date: Tue Jul 3 17:23:09 2018 +1200 + + Bug 1472925 - Keep a strong reference to MediaStreamGraph from GraphDriver. r=padenot, a=lizzard +--- + dom/media/GraphDriver.cpp | 7 ++++--- + dom/media/GraphDriver.h | 6 ++---- + dom/media/MediaStreamGraph.cpp | 3 ++- + 3 files changed, 8 insertions(+), 8 deletions(-) + +diff --git dom/media/GraphDriver.cpp dom/media/GraphDriver.cpp +index fd003ac9dbc6a..197debf299582 100644 +--- dom/media/GraphDriver.cpp ++++ dom/media/GraphDriver.cpp +@@ -179,7 +179,8 @@ class MediaStreamGraphInitThreadRunnable : public Runn + NS_IMETHOD Run() override + { + LOG(LogLevel::Debug, +- ("Starting a new system driver for graph %p", mDriver->mGraphImpl)); ++ ("Starting a new system driver for graph %p", ++ mDriver->mGraphImpl.get())); + + RefPtr previousDriver; + { +@@ -217,7 +218,7 @@ void + ThreadedDriver::Start() + { + LOG(LogLevel::Debug, +- ("Starting thread for a SystemClockDriver %p", mGraphImpl)); ++ ("Starting thread for a SystemClockDriver %p", mGraphImpl.get())); + Unused << NS_WARN_IF(mThread); + if (!mThread) { // Ensure we haven't already started it + nsCOMPtr event = new MediaStreamGraphInitThreadRunnable(this); +@@ -784,7 +785,7 @@ void + AudioCallbackDriver::Resume() + { + LOG(LogLevel::Debug, +- ("Resuming audio threads for MediaStreamGraph %p", mGraphImpl)); ++ ("Resuming audio threads for MediaStreamGraph %p", mGraphImpl.get())); + if (cubeb_stream_start(mAudioStream) != CUBEB_OK) { + NS_WARNING("Could not start cubeb stream for MSG."); + } +@@ -859,7 +860,7 @@ AudioCallbackDriver::Revive() + } else { + LOG(LogLevel::Debug, + ("Starting audio threads for MediaStreamGraph %p from a new thread.", +- mGraphImpl)); ++ mGraphImpl.get())); + RefPtr initEvent = + new AsyncCubebTask(this, AsyncCubebOperation::INIT); + initEvent->Dispatch(); +diff --git dom/media/GraphDriver.h dom/media/GraphDriver.h +index 5c085dc36bff5..ca77b5752569f 100644 +--- dom/media/GraphDriver.h ++++ dom/media/GraphDriver.h +@@ -211,10 +211,8 @@ protected: + // Time of the end of this graph iteration. This must be accessed while having + // the monitor. + GraphTime mIterationEnd; +- // The MediaStreamGraphImpl that owns this driver. This has a lifetime longer +- // than the driver, and will never be null. Hence, it can be accesed without +- // monitor. +- MediaStreamGraphImpl* mGraphImpl; ++ // The MediaStreamGraphImpl associated with this driver. ++ const RefPtr mGraphImpl; + + // This is used on the main thread (during initialization), and the graph + // thread. No monitor needed because we know the graph thread does not run +diff --git dom/media/MediaStreamGraph.cpp dom/media/MediaStreamGraph.cpp +index a3c8b26c2663d..4e6175e0d9fed 100644 +--- dom/media/MediaStreamGraph.cpp ++++ dom/media/MediaStreamGraph.cpp +@@ -3661,7 +3661,8 @@ MediaStreamGraphImpl::Destroy() + // First unregister from memory reporting. + UnregisterWeakMemoryReporter(this); + +- // Clear the self reference which will destroy this instance. ++ // Clear the self reference which will destroy this instance if all ++ // associated GraphDrivers are destroyed. + mSelfRef = nullptr; + } + Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1472925 ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3/www/waterfox/files/patch-bug1473041 =================================================================== --- branches/2018Q3/www/waterfox/files/patch-bug1473041 (nonexistent) +++ branches/2018Q3/www/waterfox/files/patch-bug1473041 (revision 474661) @@ -0,0 +1,30 @@ +commit 9bfdb471cdb0 +Author: Lee Salzman +Date: Thu Jul 12 14:19:07 2018 -0400 + + Bug 1473041 - save and restore PermitSubpixelAA state for basic layer paint callback. r=mstange a=lizzard + + --HG-- + extra : source : e6698ef51a7e2f049350b09d67fa7338d2bd405a +--- + gfx/layers/basic/BasicPaintedLayer.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git gfx/layers/basic/BasicPaintedLayer.cpp gfx/layers/basic/BasicPaintedLayer.cpp +index 7fae4e2e78a67..431a328da95ed 100644 +--- gfx/layers/basic/BasicPaintedLayer.cpp ++++ gfx/layers/basic/BasicPaintedLayer.cpp +@@ -90,9 +90,12 @@ BasicPaintedLayer::PaintThebes(gfxContext* aContext, + context = aContext; + } + if (context) { +- SetAntialiasingFlags(this, context->GetDrawTarget()); ++ DrawTarget* target = context->GetDrawTarget(); ++ bool oldAA = target->GetPermitSubpixelAA(); ++ SetAntialiasingFlags(this, target); + aCallback(this, context, toDraw, toDraw, DrawRegionClip::NONE, + nsIntRegion(), aCallbackData); ++ target->SetPermitSubpixelAA(oldAA); + } + if (needsGroup && availableGroup) { + BasicManager()->PopGroupForLayer(group); Property changes on: branches/2018Q3/www/waterfox/files/patch-bug1473041 ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2018Q3 =================================================================== --- branches/2018Q3 (revision 474660) +++ branches/2018Q3 (revision 474661) Property changes on: branches/2018Q3 ___________________________________________________________________ Modified: svn:mergeinfo ## -0,0 +0,1 ## Merged /head:r474311,474659