diff --git a/accessible/base/FocusManager.cpp b/accessible/base/FocusManager.cpp index e3575415dd61..5350a9a59934 100644 --- a/accessible/base/FocusManager.cpp +++ b/accessible/base/FocusManager.cpp @@ -15,6 +15,7 @@ #include "nsFocusManager.h" #include "mozilla/EventStateManager.h" #include "mozilla/dom/Element.h" +#include "mozilla/dom/TabParent.h" namespace mozilla { namespace a11y { @@ -190,12 +191,34 @@ FocusManager::ActiveItemChanged(Accessible* aItem, bool aCheckIfActive) } mActiveItem = aItem; + // If mActiveItem is null, we might need to shift a11y focus to a remote + // element. + if (!mActiveItem && XRE_IsParentProcess()) { + nsFocusManager* domfm = nsFocusManager::GetFocusManager(); + if (domfm) { + nsIContent* focusedElm = domfm->GetFocusedContent(); + if (focusedElm) { + bool remote = EventStateManager::IsRemoteTarget(focusedElm); + if (remote) { + dom::TabParent* tab = dom::TabParent::GetFrom(focusedElm); + if (tab) { + a11y::DocAccessibleParent* dap = tab->GetTopLevelDocAccessible(); + if (dap) { + Unused << dap->SendRestoreFocus(); + } + } + } + } + } + } + // If active item is changed then fire accessible focus event on it, otherwise // if there's no an active item then fire focus event to accessible having // DOM focus. Accessible* target = FocusedAccessible(); - if (target) + if (target) { DispatchFocusEvent(target->Document(), target); + } } void diff --git a/accessible/ipc/other/DocAccessibleChild.cpp b/accessible/ipc/other/DocAccessibleChild.cpp index c9302669b65e..e37f99a053b6 100644 --- a/accessible/ipc/other/DocAccessibleChild.cpp +++ b/accessible/ipc/other/DocAccessibleChild.cpp @@ -6,6 +6,7 @@ #include "DocAccessibleChild.h" +#include "nsAccessibilityService.h" #include "Accessible-inl.h" #include "ProxyAccessible.h" #include "Relation.h" @@ -2003,5 +2004,12 @@ DocAccessibleChild::RecvDOMNodeID(const uint64_t& aID, nsString* aDOMNodeID) return IPC_OK(); } +mozilla::ipc::IPCResult +DocAccessibleChild::RecvRestoreFocus() +{ + FocusMgr()->ForceFocusEvent(); + return IPC_OK(); +} + } } diff --git a/accessible/ipc/other/DocAccessibleChild.h b/accessible/ipc/other/DocAccessibleChild.h index a20f25e9a144..9734a977192e 100644 --- a/accessible/ipc/other/DocAccessibleChild.h +++ b/accessible/ipc/other/DocAccessibleChild.h @@ -38,6 +38,8 @@ public: MOZ_COUNT_DTOR_INHERITED(DocAccessibleChild, DocAccessibleChildBase); } + virtual mozilla::ipc::IPCResult RecvRestoreFocus() override; + /* * Return the state for the accessible with given ID. */ diff --git a/accessible/ipc/other/PDocAccessible.ipdl b/accessible/ipc/other/PDocAccessible.ipdl index 1885ed786319..4c084bbee125 100644 --- a/accessible/ipc/other/PDocAccessible.ipdl +++ b/accessible/ipc/other/PDocAccessible.ipdl @@ -73,6 +73,12 @@ parent: child: async __delete__(); + /* + * Called as a result of focus shifting from chrome to content + * elements through keyboard navigation. + */ + async RestoreFocus(); + // Accessible nested(inside_sync) sync State(uint64_t aID) returns(uint64_t states); nested(inside_sync) sync NativeState(uint64_t aID) returns(uint64_t states); diff --git a/accessible/ipc/win/DocAccessibleChild.cpp b/accessible/ipc/win/DocAccessibleChild.cpp index 4987131da0a3..1333107b34c2 100644 --- a/accessible/ipc/win/DocAccessibleChild.cpp +++ b/accessible/ipc/win/DocAccessibleChild.cpp @@ -6,6 +6,7 @@ #include "DocAccessibleChild.h" +#include "nsAccessibilityService.h" #include "Accessible-inl.h" #include "mozilla/a11y/PlatformChild.h" #include "mozilla/ClearOnShutdown.h" @@ -307,6 +308,13 @@ DocAccessibleChild::SendBindChildDoc(DocAccessibleChild* aChildDoc, return true; } +ipc::IPCResult +DocAccessibleChild::RecvRestoreFocus() +{ + FocusMgr()->ForceFocusEvent(); + return IPC_OK(); +} + } // namespace a11y } // namespace mozilla diff --git a/accessible/ipc/win/DocAccessibleChild.h b/accessible/ipc/win/DocAccessibleChild.h index 383c6823a123..a32887cba2de 100644 --- a/accessible/ipc/win/DocAccessibleChild.h +++ b/accessible/ipc/win/DocAccessibleChild.h @@ -28,10 +28,12 @@ public: virtual void Shutdown() override; virtual ipc::IPCResult - RecvParentCOMProxy(const IAccessibleHolder& aParentCOMProxy) override; + RecvParentCOMProxy(const IAccessibleHolder& aParentCOMProxy) override; virtual ipc::IPCResult RecvEmulatedWindow(const WindowsHandle& aEmulatedWindowHandle, const IAccessibleHolder& aEmulatedWindowCOMProxy) override; + virtual ipc::IPCResult + RecvRestoreFocus() override; HWND GetNativeWindowHandle() const; IAccessible* GetEmulatedWindowIAccessible() const { return mEmulatedWindowProxy.get(); } diff --git a/accessible/ipc/win/PDocAccessible.ipdl b/accessible/ipc/win/PDocAccessible.ipdl index 50594eabe003..4fb0c41ef68b 100644 --- a/accessible/ipc/win/PDocAccessible.ipdl +++ b/accessible/ipc/win/PDocAccessible.ipdl @@ -74,6 +74,11 @@ child: async ParentCOMProxy(IAccessibleHolder aParentCOMProxy); async EmulatedWindow(WindowsHandle aEmulatedWindowHandle, IAccessibleHolder aEmulatedWindowCOMProxy); + /* + * Called as a result of focus shifting from chrome to content + * elements through keyboard navigation. + */ + async RestoreFocus(); async __delete__(); }; diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js index ff1781dfe122..be6facbf3f97 100644 --- a/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js @@ -72,7 +72,7 @@ pref("extensions.startupScanScopes", 0); // This is where the profiler WebExtension API will look for breakpad symbols. // NOTE: deliberately http right now since https://symbols.mozilla.org is not supported. pref("extensions.geckoProfiler.symbols.url", "http://symbols.mozilla.org/"); -pref("extensions.geckoProfiler.acceptedExtensionIds", "geckoprofiler@mozilla.com"); +pref("extensions.geckoProfiler.acceptedExtensionIds", "geckoprofiler@mozilla.com,quantum-foxfooding@mozilla.com"); #if defined(XP_LINUX) || defined (XP_MACOSX) pref("extensions.geckoProfiler.getSymbolRules", "localBreakpad,remoteBreakpad,nm"); #else // defined(XP_WIN) diff --git a/browser/base/content/test/static/browser_all_files_referenced.js b/browser/base/content/test/static/browser_all_files_referenced.js index 4c7dc665060e..cbd55cddcb0d 100644 --- a/browser/base/content/test/static/browser_all_files_referenced.js +++ b/browser/base/content/test/static/browser_all_files_referenced.js @@ -1,6 +1,10 @@ /* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ +// Note to run this test similar to try server, you need to run: +// ./mach package +// ./mach mochitest --appname dist + // Slow on asan builds. requestLongerTimeout(5); @@ -324,7 +328,7 @@ function parseCodeFile(fileUri) { let baseUri; for (let line of data.split("\n")) { let urls = - line.match(/["']chrome:\/\/[a-zA-Z0-9 -]+\/(content|skin|locale)\/[^"' ]*["']/g); + line.match(/["'`]chrome:\/\/[a-zA-Z0-9 -]+\/(content|skin|locale)\/[^"'` ]*["'`]/g); if (!urls) { urls = line.match(/["']resource:\/\/[^"']+["']/g); if (urls && isDevtools && @@ -388,8 +392,14 @@ function parseCodeFile(fileUri) { // Remove quotes. url = url.slice(1, -1); // Remove ? or \ trailing characters. - if (url.endsWith("?") || url.endsWith("\\")) + if (url.endsWith("\\")) { url = url.slice(0, -1); + } + + let pos = url.indexOf("?"); + if (pos != -1) { + url = url.slice(0, pos); + } // Make urls like chrome://browser/skin/ point to an actual file, // and remove the ref if any. diff --git a/browser/themes/shared/browser.inc.css b/browser/themes/shared/browser.inc.css index 8cf516b2caea..696a72db5bdd 100644 --- a/browser/themes/shared/browser.inc.css +++ b/browser/themes/shared/browser.inc.css @@ -6,11 +6,11 @@ %ifdef CAN_DRAW_IN_TITLEBAR /* Add space for dragging the window */ %ifdef MENUBAR_CAN_AUTOHIDE -:root[tabsintitlebar] #toolbar-menubar[autohide=true] ~ #TabsToolbar { +:root[tabsintitlebar][sizemode=normal] #toolbar-menubar[autohide=true] ~ #TabsToolbar { padding-inline-start: 40px; } %else -:root[tabsintitlebar] #TabsToolbar { +:root[tabsintitlebar][sizemode=normal] #TabsToolbar { padding-inline-start: 40px; } %endif diff --git a/browser/themes/windows/content-contextmenu.svg b/browser/themes/windows/content-contextmenu.svg deleted file mode 100644 index b72b24708dfe..000000000000 --- a/browser/themes/windows/content-contextmenu.svg +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/config/external/nspr/pr/moz.build b/config/external/nspr/pr/moz.build index bbf22223b5f7..d4fee38f7881 100644 --- a/config/external/nspr/pr/moz.build +++ b/config/external/nspr/pr/moz.build @@ -56,6 +56,19 @@ elif CONFIG['OS_TARGET'] == 'Darwin': ] if not CONFIG['MOZ_IOS']: DEFINES['HAVE_CRT_EXTERNS_H'] = True +elif CONFIG['OS_TARGET'] == 'SunOS': + DEFINES.update( + HAVE_FCNTL_FILE_LOCKING=True, + HAVE_SOCKLEN_T=True, + _PR_HAVE_OFF64_T=True, + _PR_INET6=True, + ) + DEFINES['SOLARIS'] = True + SOURCES += ['/nsprpub/pr/src/md/unix/solaris.c'] + if CONFIG['CPU_ARCH'] == 'x86_64': + SOURCES += ['/nsprpub/pr/src/md/unix/os_SunOS_x86_64.s'] + elif CONFIG['CPU_ARCH'] == 'x86': + SOURCES += ['/nsprpub/pr/src/md/unix/os_SunOS_x86.s'] elif CONFIG['OS_TARGET'] == 'WINNT': OS_LIBS += [ 'advapi32', @@ -229,6 +242,7 @@ EXPORTS.nspr.md += [ '/nsprpub/pr/include/md/_linux.cfg', '/nsprpub/pr/include/md/_netbsd.cfg', '/nsprpub/pr/include/md/_openbsd.cfg', + '/nsprpub/pr/include/md/_solaris.cfg', '/nsprpub/pr/include/md/_win95.cfg', ] diff --git a/config/external/nspr/prcpucfg.h b/config/external/nspr/prcpucfg.h index 5f79627337a9..8769abeeb85e 100644 --- a/config/external/nspr/prcpucfg.h +++ b/config/external/nspr/prcpucfg.h @@ -22,6 +22,8 @@ #include "md/_openbsd.cfg" #elif defined(__linux__) #include "md/_linux.cfg" +#elif defined(__sun__) +#include "md/_solaris.cfg" #else #error "Unsupported platform!" #endif diff --git a/dom/base/test/file_js_cache_syntax_error.html b/dom/base/test/file_js_cache_syntax_error.html new file mode 100644 index 000000000000..cc4a9b2daac5 --- /dev/null +++ b/dom/base/test/file_js_cache_syntax_error.html @@ -0,0 +1,10 @@ + + + + + Do not save bytecode on compilation errors + + + + + diff --git a/dom/base/test/file_js_cache_syntax_error.js b/dom/base/test/file_js_cache_syntax_error.js new file mode 100644 index 000000000000..fcf587ae703e --- /dev/null +++ b/dom/base/test/file_js_cache_syntax_error.js @@ -0,0 +1 @@ +var // SyntaxError: missing variable name. diff --git a/dom/base/test/mochitest.ini b/dom/base/test/mochitest.ini index 3a8a75cb313b..d50e70f5d3b8 100644 --- a/dom/base/test/mochitest.ini +++ b/dom/base/test/mochitest.ini @@ -760,6 +760,8 @@ support-files = file_js_cache.js file_js_cache_save_after_load.html file_js_cache_save_after_load.js + file_js_cache_syntax_error.html + file_js_cache_syntax_error.js [test_setInterval_uncatchable_exception.html] skip-if = debug == false [test_settimeout_extra_arguments.html] diff --git a/dom/base/test/test_script_loader_js_cache.html b/dom/base/test/test_script_loader_js_cache.html index 618207feca92..95a0b1571c03 100644 --- a/dom/base/test/test_script_loader_js_cache.html +++ b/dom/base/test/test_script_loader_js_cache.html @@ -191,6 +191,23 @@ }, "Save bytecode after the initialization of the page"); + promise_test(async function() { + // (see above) + await SpecialPowers.pushPrefEnv({set: [ + ['dom.script_loader.bytecode_cache.enabled', true], + ['dom.expose_test_interfaces', true], + ['dom.script_loader.bytecode_cache.strategy', -1] + ]}); + + // The test page loads a script which contains a syntax error, we should + // not attempt to encode any bytecode for it. + var stateMachineResult = + WaitForScriptTagEvent("file_js_cache_syntax_error.html"); + assert_equals(await stateMachineResult, "source_exec", + "Check the lack of bytecode encoding"); + + }, "Do not save bytecode on compilation errors"); + done(); diff --git a/dom/fetch/FetchDriver.cpp b/dom/fetch/FetchDriver.cpp index 6e13e294583a..4fccb249d093 100644 --- a/dom/fetch/FetchDriver.cpp +++ b/dom/fetch/FetchDriver.cpp @@ -657,6 +657,53 @@ public: } }; +struct SRIVerifierAndOutputHolder { + SRIVerifierAndOutputHolder(SRICheckDataVerifier* aVerifier, + nsIOutputStream* aOutputStream) + : mVerifier(aVerifier) + , mOutputStream(aOutputStream) + {} + + SRICheckDataVerifier* mVerifier; + nsIOutputStream* mOutputStream; + +private: + SRIVerifierAndOutputHolder() = delete; +}; + +// Just like NS_CopySegmentToStream, but also sends the data into an +// SRICheckDataVerifier. +nsresult +CopySegmentToStreamAndSRI(nsIInputStream* aInStr, + void* aClosure, + const char* aBuffer, + uint32_t aOffset, + uint32_t aCount, + uint32_t* aCountWritten) +{ + auto holder = static_cast(aClosure); + MOZ_DIAGNOSTIC_ASSERT(holder && holder->mVerifier && holder->mOutputStream, + "Bogus holder"); + nsresult rv = + holder->mVerifier->Update(aCount, + reinterpret_cast(aBuffer)); + NS_ENSURE_SUCCESS(rv, rv); + + // The rest is just like NS_CopySegmentToStream. + *aCountWritten = 0; + while (aCount) { + uint32_t n = 0; + rv = holder->mOutputStream->Write(aBuffer, aCount, &n); + if (NS_FAILED(rv)) { + return rv; + } + aBuffer += n; + aCount -= n; + *aCountWritten += n; + } + return NS_OK; +} + } // anonymous namespace NS_IMETHODIMP @@ -692,39 +739,10 @@ FetchDriver::OnDataAvailable(nsIRequest* aRequest, !mRequest->GetIntegrity().IsEmpty()) { MOZ_ASSERT(mSRIDataVerifier); - uint32_t aWrite; - nsTArray buffer; - nsresult rv; - buffer.SetCapacity(aCount); - while (aCount > 0) { - rv = aInputStream->Read(reinterpret_cast(buffer.Elements()), - aCount, &aRead); - if (NS_WARN_IF(NS_FAILED(rv))) { - return rv; - } - - rv = mSRIDataVerifier->Update(aRead, (uint8_t*)buffer.Elements()); - NS_ENSURE_SUCCESS(rv, rv); - - while (aRead > 0) { - rv = mPipeOutputStream->Write(reinterpret_cast(buffer.Elements()), - aRead, &aWrite); - if (NS_WARN_IF(NS_FAILED(rv))) { - return rv; - } - - if (aRead < aWrite) { - return NS_ERROR_FAILURE; - } - - aRead -= aWrite; - } - - - aCount -= aWrite; - } - - return NS_OK; + SRIVerifierAndOutputHolder holder(mSRIDataVerifier, mPipeOutputStream); + nsresult rv = aInputStream->ReadSegments(CopySegmentToStreamAndSRI, + &holder, aCount, &aRead); + return rv; } nsresult rv = aInputStream->ReadSegments(NS_CopySegmentToStream, diff --git a/dom/media/test/test_webvtt_empty_displaystate.html b/dom/media/test/test_webvtt_empty_displaystate.html index 42c8008dcc93..3572daafd758 100644 --- a/dom/media/test/test_webvtt_empty_displaystate.html +++ b/dom/media/test/test_webvtt_empty_displaystate.html @@ -48,6 +48,10 @@ function runTest() { checkCueEvents(); } + video.onloadedmetadata = function () { + ok(video.duration > 2, "video.duration should larger than 2"); + } + info("--- create the type of track ---"); isnot(window.TextTrack, undefined, "TextTrack should be defined."); @@ -59,7 +63,7 @@ function runTest() { isnot(window.TextTrackCue, undefined, "TextTrackCue should be defined."); isnot(window.VTTCue, undefined, "VTTCue should be defined."); - var cue = new VTTCue(0, 1, "Test cue"); + var cue = new VTTCue(1, 2, "Test cue"); ok(cue instanceof TextTrackCue, "Cue should be an instanceof TextTrackCue."); ok(cue instanceof VTTCue, "Cue should be an instanceof VTTCue."); @@ -76,7 +80,7 @@ function runTest() { if (cueChrome.getActive) { checkCueDisplayState(cue, true /* has display-state */); } else { - ok(false, "The cue start time is 0, should be always active!?"); + info("This is a missing cue, video.currentTime is "+ video.currentTime); } cue.onexit = function () { diff --git a/dom/script/ScriptLoader.cpp b/dom/script/ScriptLoader.cpp index 437071b48b44..c0efe1aa3f4f 100644 --- a/dom/script/ScriptLoader.cpp +++ b/dom/script/ScriptLoader.cpp @@ -2132,7 +2132,7 @@ ScriptLoader::EvaluateScript(ScriptLoadRequest* aRequest) } // Queue the current script load request to later save the bytecode. - if (NS_SUCCEEDED(rv) && encodeBytecode) { + if (script && encodeBytecode) { aRequest->mScript = script; HoldJSObjects(aRequest); TRACE_FOR_TEST(aRequest->mElement, "scriptloader_encode"); diff --git a/dom/security/nsCSPParser.cpp b/dom/security/nsCSPParser.cpp index 7b9f7f415965..f46331cf7641 100644 --- a/dom/security/nsCSPParser.cpp +++ b/dom/security/nsCSPParser.cpp @@ -135,6 +135,7 @@ nsCSPParser::nsCSPParser(cspTokens& aTokens, , mUnsafeInlineKeywordSrc(nullptr) , mChildSrc(nullptr) , mFrameSrc(nullptr) + , mParsingFrameAncestorsDir(false) , mTokens(aTokens) , mSelfURI(aSelfURI) , mPolicy(nullptr) @@ -813,6 +814,7 @@ nsCSPParser::sourceExpression() if (nsCSPHostSrc *cspHost = hostSource()) { // Do not forget to set the parsed scheme. cspHost->setScheme(parsedScheme); + cspHost->setWithinFrameAncestorsDir(mParsingFrameAncestorsDir); return cspHost; } // Error was reported in hostSource() @@ -1220,6 +1222,9 @@ nsCSPParser::directive() mStrictDynamic = false; mUnsafeInlineKeywordSrc = nullptr; + mParsingFrameAncestorsDir = + CSP_IsDirective(mCurDir[0], nsIContentSecurityPolicy::FRAME_ANCESTORS_DIRECTIVE); + // Try to parse all the srcs by handing the array off to directiveValue nsTArray srcs; directiveValue(srcs); diff --git a/dom/security/nsCSPParser.h b/dom/security/nsCSPParser.h index 590dd70273a0..d5f1be94fcc3 100644 --- a/dom/security/nsCSPParser.h +++ b/dom/security/nsCSPParser.h @@ -251,6 +251,10 @@ class nsCSPParser { nsCSPChildSrcDirective* mChildSrc; nsCSPDirective* mFrameSrc; + // cache variable to let nsCSPHostSrc know that it's within + // the frame-ancestors directive. + bool mParsingFrameAncestorsDir; + cspTokens mTokens; nsIURI* mSelfURI; nsCSPPolicy* mPolicy; diff --git a/dom/security/nsCSPUtils.cpp b/dom/security/nsCSPUtils.cpp index 14eaba261942..ecc2a7412165 100644 --- a/dom/security/nsCSPUtils.cpp +++ b/dom/security/nsCSPUtils.cpp @@ -522,6 +522,7 @@ nsCSPSchemeSrc::toString(nsAString& outStr) const nsCSPHostSrc::nsCSPHostSrc(const nsAString& aHost) : mHost(aHost) , mGeneratedFromSelfKeyword(false) + , mWithinFrameAncstorsDir(false) { ToLowerCase(mHost); } @@ -705,6 +706,11 @@ nsCSPHostSrc::permits(nsIURI* aUri, const nsAString& aNonce, bool aWasRedirected rv = url->GetFilePath(uriPath); NS_ENSURE_SUCCESS(rv, false); + if (mWithinFrameAncstorsDir) { + // no path matching for frame-ancestors to not leak any path information. + return true; + } + nsString decodedUriPath; CSP_PercentDecodeStr(NS_ConvertUTF8toUTF16(uriPath), decodedUriPath); diff --git a/dom/security/nsCSPUtils.h b/dom/security/nsCSPUtils.h index b2d1ec5c6c01..4665637f8903 100644 --- a/dom/security/nsCSPUtils.h +++ b/dom/security/nsCSPUtils.h @@ -257,7 +257,10 @@ class nsCSPHostSrc : public nsCSPBaseSrc { void appendPath(const nsAString &aPath); inline void setGeneratedFromSelfKeyword() const - { mGeneratedFromSelfKeyword = true;} + { mGeneratedFromSelfKeyword = true; } + + inline void setWithinFrameAncestorsDir(bool aValue) const + { mWithinFrameAncstorsDir = aValue; } inline void getScheme(nsAString& outStr) const { outStr.Assign(mScheme); }; @@ -277,6 +280,7 @@ class nsCSPHostSrc : public nsCSPBaseSrc { nsString mPort; nsString mPath; mutable bool mGeneratedFromSelfKeyword; + mutable bool mWithinFrameAncstorsDir; }; /* =============== nsCSPKeywordSrc ============ */ diff --git a/dom/security/test/csp/file_frameancestors_main.js b/dom/security/test/csp/file_frameancestors_main.js index 6ea1c2326466..ef95b7ee5354 100644 --- a/dom/security/test/csp/file_frameancestors_main.js +++ b/dom/security/test/csp/file_frameancestors_main.js @@ -9,7 +9,10 @@ function setupFrames() { b: 'http://example.com/tests/dom/security/test/csp/file_frameancestors.sjs' }; - var host = { a: 'http://mochi.test:8888', b: 'http://example.com:80' }; + // In both cases (base.a, base.b) the path starts with /tests/. Let's make sure this + // path within the CSP policy is completely ignored when enforcing frame ancestors. + // To test this behavior we use /foo/ and /bar/ as dummy values for the path. + var host = { a: 'http://mochi.test:8888/foo/', b: 'http://example.com:80/bar/' }; var innerframeuri = null; var elt = null; diff --git a/gfx/layers/Layers.h b/gfx/layers/Layers.h index 392f436af8eb..db9d5cea726c 100644 --- a/gfx/layers/Layers.h +++ b/gfx/layers/Layers.h @@ -2250,6 +2250,12 @@ public: return mEventRegionsOverride; } + void SetFilterChain(nsTArray&& aFilterChain) { + mFilterChain = aFilterChain; + } + + nsTArray& GetFilterChain() { return mFilterChain; } + protected: friend class ReadbackProcessor; @@ -2336,6 +2342,7 @@ protected: // the intermediate surface. bool mChildrenChanged; EventRegionsOverride mEventRegionsOverride; + nsTArray mFilterChain; }; /** diff --git a/gfx/layers/LayersTypes.cpp b/gfx/layers/LayersTypes.cpp new file mode 100644 index 000000000000..76d8255a1dba --- /dev/null +++ b/gfx/layers/LayersTypes.cpp @@ -0,0 +1,38 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "LayersTypes.h" + +#include "nsStyleStruct.h" // for nsStyleFilter + +namespace mozilla { +namespace layers { + +CSSFilter ToCSSFilter(const nsStyleFilter& filter) +{ + switch (filter.GetType()) { + case NS_STYLE_FILTER_BRIGHTNESS: { + return { + CSSFilterType::BRIGHTNESS, + filter.GetFilterParameter().GetFactorOrPercentValue(), + }; + } + case NS_STYLE_FILTER_CONTRAST: { + return { + CSSFilterType::CONTRAST, + filter.GetFilterParameter().GetFactorOrPercentValue(), + }; + } + // All other filter types should be prevented by the code which converts + // display items into layers. + default: + MOZ_ASSERT_UNREACHABLE("Tried to convert an unsupported filter"); + return { CSSFilterType::CONTRAST, 0 }; + } +} + +} // namespace layers +} // namespace mozilla + diff --git a/gfx/layers/LayersTypes.h b/gfx/layers/LayersTypes.h index b1b21eb6e6fb..9a0108d982ea 100644 --- a/gfx/layers/LayersTypes.h +++ b/gfx/layers/LayersTypes.h @@ -35,6 +35,8 @@ namespace android { class MOZ_EXPORT GraphicBuffer; } // namespace android +struct nsStyleFilter; + namespace mozilla { namespace layers { @@ -309,6 +311,25 @@ enum class ScrollDirection : uint32_t { SENTINEL /* for IPC serialization */ }; +enum class CSSFilterType : int8_t { + BLUR, + BRIGHTNESS, + CONTRAST, + GRAYSCALE, + HUE_ROTATE, + INVERT, + OPACITY, + SATURATE, + SEPIA, +}; + +struct CSSFilter { + CSSFilterType type; + float argument; +}; + +CSSFilter ToCSSFilter(const nsStyleFilter& filter); + } // namespace layers } // namespace mozilla diff --git a/gfx/layers/moz.build b/gfx/layers/moz.build index 8a575f4172ce..6b902006ea24 100644 --- a/gfx/layers/moz.build +++ b/gfx/layers/moz.build @@ -383,6 +383,7 @@ UNIFIED_SOURCES += [ 'LayerScope.cpp', 'LayersLogging.cpp', 'LayerSorter.cpp', + 'LayersTypes.cpp', 'opengl/CompositingRenderTargetOGL.cpp', 'opengl/CompositorOGL.cpp', 'opengl/GLBlitTextureImageHelper.cpp', diff --git a/gfx/layers/wr/StackingContextHelper.cpp b/gfx/layers/wr/StackingContextHelper.cpp index df3f60de7c14..235b9fdca6dc 100644 --- a/gfx/layers/wr/StackingContextHelper.cpp +++ b/gfx/layers/wr/StackingContextHelper.cpp @@ -20,16 +20,19 @@ StackingContextHelper::StackingContextHelper() StackingContextHelper::StackingContextHelper(const StackingContextHelper& aParentSC, wr::DisplayListBuilder& aBuilder, WebRenderLayer* aLayer, - const Maybe& aTransform) + const Maybe& aTransform, + const nsTArray& aFilters) : mBuilder(&aBuilder) { WrRect scBounds = aParentSC.ToRelativeWrRect(aLayer->BoundsForStackingContext()); Layer* layer = aLayer->GetLayer(); mTransform = aTransform.valueOr(layer->GetTransform()); + float opacity = 1.0f; mBuilder->PushStackingContext(scBounds, 0, &opacity, mTransform.IsIdentity() ? nullptr : &mTransform, - wr::ToWrMixBlendMode(layer->GetMixBlendMode())); + wr::ToWrMixBlendMode(layer->GetMixBlendMode()), + aFilters); mOrigin = aLayer->Bounds().TopLeft(); } @@ -38,18 +41,21 @@ StackingContextHelper::StackingContextHelper(const StackingContextHelper& aParen WebRenderLayer* aLayer, uint64_t aAnimationsId, float* aOpacityPtr, - gfx::Matrix4x4* aTransformPtr) + gfx::Matrix4x4* aTransformPtr, + const nsTArray& aFilters) : mBuilder(&aBuilder) { WrRect scBounds = aParentSC.ToRelativeWrRect(aLayer->BoundsForStackingContext()); if (aTransformPtr) { mTransform = *aTransformPtr; } + mBuilder->PushStackingContext(scBounds, aAnimationsId, aOpacityPtr, aTransformPtr, - wr::ToWrMixBlendMode(aLayer->GetLayer()->GetMixBlendMode())); + wr::ToWrMixBlendMode(aLayer->GetLayer()->GetMixBlendMode()), + aFilters); mOrigin = aLayer->Bounds().TopLeft(); } diff --git a/gfx/layers/wr/StackingContextHelper.h b/gfx/layers/wr/StackingContextHelper.h index 57efb1049d33..02bf9d95d559 100644 --- a/gfx/layers/wr/StackingContextHelper.h +++ b/gfx/layers/wr/StackingContextHelper.h @@ -31,7 +31,8 @@ public: StackingContextHelper(const StackingContextHelper& aParentSC, wr::DisplayListBuilder& aBuilder, WebRenderLayer* aLayer, - const Maybe& aTransform = Nothing()); + const Maybe& aTransform = Nothing(), + const nsTArray& aFilters = nsTArray()); // Alternate constructor which invokes the version of PushStackingContext // for animations. StackingContextHelper(const StackingContextHelper& aParentSC, @@ -39,7 +40,8 @@ public: WebRenderLayer* aLayer, uint64_t aAnimationsId, float* aOpacityPtr, - gfx::Matrix4x4* aTransformPtr); + gfx::Matrix4x4* aTransformPtr, + const nsTArray& aFilters = nsTArray()); // This version of the constructor should only be used at the root level // of the tree, so that we have a StackingContextHelper to pass down into // the RenderLayer traversal, but don't actually want it to push a stacking diff --git a/gfx/layers/wr/WebRenderCompositableHolder.cpp b/gfx/layers/wr/WebRenderCompositableHolder.cpp index 442513a47207..850a6d107527 100644 --- a/gfx/layers/wr/WebRenderCompositableHolder.cpp +++ b/gfx/layers/wr/WebRenderCompositableHolder.cpp @@ -352,7 +352,8 @@ WebRenderCompositableHolder::ApplyAsyncImages(wr::WebRenderAPI* aApi) 0, &opacity, holder->mScTransform.IsIdentity() ? nullptr : &holder->mScTransform, - holder->mMixBlendMode); + holder->mMixBlendMode, + nsTArray()); LayerRect rect(0, 0, holder->mCurrentTexture->GetSize().width, holder->mCurrentTexture->GetSize().height); if (holder->mScaleToSize.isSome()) { diff --git a/gfx/layers/wr/WebRenderContainerLayer.cpp b/gfx/layers/wr/WebRenderContainerLayer.cpp index 611b04f63d3a..209bf0708132 100644 --- a/gfx/layers/wr/WebRenderContainerLayer.cpp +++ b/gfx/layers/wr/WebRenderContainerLayer.cpp @@ -114,8 +114,13 @@ WebRenderContainerLayer::RenderLayer(wr::DisplayListBuilder& aBuilder, transformForSC = nullptr; } + nsTArray filters; + for (const CSSFilter& filter : this->GetFilterChain()) { + filters.AppendElement(wr::ToWrFilterOp(filter)); + } + ScrollingLayersHelper scroller(this, aBuilder, aSc); - StackingContextHelper sc(aSc, aBuilder, this, animationsId, opacityForSC, transformForSC); + StackingContextHelper sc(aSc, aBuilder, this, animationsId, opacityForSC, transformForSC, filters); LayerRect rect = Bounds(); DumpLayerInfo("ContainerLayer", rect); diff --git a/gfx/thebes/gfxPrefs.h b/gfx/thebes/gfxPrefs.h index 7a24aa2426f4..0c4e4be42cd5 100644 --- a/gfx/thebes/gfxPrefs.h +++ b/gfx/thebes/gfxPrefs.h @@ -504,6 +504,7 @@ private: DECL_OVERRIDE_PREF(Live, "layers.advanced.caret-layers", LayersAllowCaretLayers, gfxPrefs::OverrideBase_WebRender()); DECL_OVERRIDE_PREF(Live, "layers.advanced.columnRule-layers", LayersAllowColumnRuleLayers, gfxPrefs::OverrideBase_WebRender()); DECL_OVERRIDE_PREF(Live, "layers.advanced.displaybuttonborder-layers", LayersAllowDisplayButtonBorder, gfxPrefs::OverrideBase_WebRender()); + DECL_OVERRIDE_PREF(Live, "layers.advanced.filter-layers", LayersAllowFilterLayers, gfxPrefs::OverrideBase_WebRender()); DECL_OVERRIDE_PREF(Live, "layers.advanced.image-layers", LayersAllowImageLayers, gfxPrefs::OverrideBase_WebRendest()); DECL_OVERRIDE_PREF(Live, "layers.advanced.outline-layers", LayersAllowOutlineLayers, gfxPrefs::OverrideBase_WebRender()); DECL_OVERRIDE_PREF(Live, "layers.advanced.solid-color", LayersAllowSolidColorLayers, gfxPrefs::OverrideBase_WebRender()); diff --git a/gfx/webrender_bindings/WebRenderAPI.cpp b/gfx/webrender_bindings/WebRenderAPI.cpp index 3b03c0ec0186..ce2bbd789001 100644 --- a/gfx/webrender_bindings/WebRenderAPI.cpp +++ b/gfx/webrender_bindings/WebRenderAPI.cpp @@ -556,7 +556,8 @@ DisplayListBuilder::PushStackingContext(const WrRect& aBounds, const uint64_t& aAnimationId, const float* aOpacity, const gfx::Matrix4x4* aTransform, - const WrMixBlendMode& aMixBlendMode) + const WrMixBlendMode& aMixBlendMode, + const nsTArray& aFilters) { WrMatrix matrix; if (aTransform) { @@ -566,7 +567,8 @@ DisplayListBuilder::PushStackingContext(const WrRect& aBounds, WRDL_LOG("PushStackingContext b=%s t=%s\n", Stringify(aBounds).c_str(), aTransform ? Stringify(*aTransform).c_str() : "none"); wr_dp_push_stacking_context(mWrState, aBounds, aAnimationId, aOpacity, - maybeTransform, aMixBlendMode); + maybeTransform, aMixBlendMode, + aFilters.Elements(), aFilters.Length()); } void diff --git a/gfx/webrender_bindings/WebRenderAPI.h b/gfx/webrender_bindings/WebRenderAPI.h index ea72b897fa72..c4d41c209de0 100644 --- a/gfx/webrender_bindings/WebRenderAPI.h +++ b/gfx/webrender_bindings/WebRenderAPI.h @@ -150,7 +150,8 @@ public: const uint64_t& aAnimationId, const float* aOpacity, const gfx::Matrix4x4* aTransform, - const WrMixBlendMode& aMixBlendMode); + const WrMixBlendMode& aMixBlendMode, + const nsTArray& aFilters); void PopStackingContext(); void PushClip(const WrRect& aClipRect, diff --git a/gfx/webrender_bindings/WebRenderTypes.h b/gfx/webrender_bindings/WebRenderTypes.h index 2c182f962347..0b729bec6795 100644 --- a/gfx/webrender_bindings/WebRenderTypes.h +++ b/gfx/webrender_bindings/WebRenderTypes.h @@ -11,6 +11,7 @@ #include "mozilla/gfx/Matrix.h" #include "mozilla/gfx/Types.h" #include "mozilla/gfx/Tools.h" +#include "mozilla/layers/LayersTypes.h" #include "mozilla/Range.h" #include "Units.h" #include "nsStyleConsts.h" @@ -551,6 +552,38 @@ struct BuiltDisplayList { WrBuiltDisplayListDescriptor dl_desc; }; +static inline WrFilterOpType ToWrFilterOpType(const layers::CSSFilterType type) { + switch (type) { + case layers::CSSFilterType::BLUR: + return WrFilterOpType::Blur; + case layers::CSSFilterType::BRIGHTNESS: + return WrFilterOpType::Brightness; + case layers::CSSFilterType::CONTRAST: + return WrFilterOpType::Contrast; + case layers::CSSFilterType::GRAYSCALE: + return WrFilterOpType::Grayscale; + case layers::CSSFilterType::HUE_ROTATE: + return WrFilterOpType::HueRotate; + case layers::CSSFilterType::INVERT: + return WrFilterOpType::Invert; + case layers::CSSFilterType::OPACITY: + return WrFilterOpType::Opacity; + case layers::CSSFilterType::SATURATE: + return WrFilterOpType::Saturate; + case layers::CSSFilterType::SEPIA: + return WrFilterOpType::Sepia; + } + MOZ_ASSERT_UNREACHABLE("Tried to convert unknown filter type."); + return WrFilterOpType::Grayscale; +} + +static inline WrFilterOp ToWrFilterOp(const layers::CSSFilter& filter) { + return { + ToWrFilterOpType(filter.type), + filter.argument, + }; +} + } // namespace wr } // namespace mozilla diff --git a/gfx/webrender_bindings/src/bindings.rs b/gfx/webrender_bindings/src/bindings.rs index 9cc0934583f9..170299134d0b 100644 --- a/gfx/webrender_bindings/src/bindings.rs +++ b/gfx/webrender_bindings/src/bindings.rs @@ -2,7 +2,7 @@ use std::collections::HashSet; use std::ffi::CString; use std::{mem, slice}; use std::path::PathBuf; -use std::os::raw::{c_void, c_char}; +use std::os::raw::{c_void, c_char, c_float}; use std::collections::HashMap; use gleam::gl; @@ -59,6 +59,27 @@ type WrYuvColorSpace = YuvColorSpace; #[derive(Copy, Clone)] pub struct WrExternalImageId(pub u64); +#[repr(u32)] +#[derive(Copy, Clone)] +pub enum WrFilterOpType { + Blur = 0, + Brightness = 1, + Contrast = 2, + Grayscale = 3, + HueRotate = 4, + Invert = 5, + Opacity = 6, + Saturate = 7, + Sepia = 8, +} + +#[repr(C)] +#[derive(Copy, Clone)] +pub struct WrFilterOp { + filter_type: WrFilterOpType, + argument: c_float, +} + impl Into for WrExternalImageId { fn into(self) -> ExternalImageId { ExternalImageId(self.0) @@ -1245,12 +1266,28 @@ pub extern "C" fn wr_dp_push_stacking_context(state: &mut WrState, animation_id: u64, opacity: *const f32, transform: *const WrMatrix, - mix_blend_mode: WrMixBlendMode) { + mix_blend_mode: WrMixBlendMode, + filters: *const WrFilterOp, + filter_count: usize) { assert!(unsafe { !is_in_render_thread() }); let bounds = bounds.into(); - let mut filters: Vec = Vec::new(); + let c_filters = make_slice(filters, filter_count); + let mut filters : Vec = c_filters.iter().map(|c_filter| { + match c_filter.filter_type { + WrFilterOpType::Blur => FilterOp::Blur(Au::from_f32_px(c_filter.argument)), + WrFilterOpType::Brightness => FilterOp::Brightness(c_filter.argument), + WrFilterOpType::Contrast => FilterOp::Contrast(c_filter.argument), + WrFilterOpType::Grayscale => FilterOp::Grayscale(c_filter.argument), + WrFilterOpType::HueRotate => FilterOp::HueRotate(c_filter.argument), + WrFilterOpType::Invert => FilterOp::Invert(c_filter.argument), + WrFilterOpType::Opacity => FilterOp::Opacity(PropertyBinding::Value(c_filter.argument)), + WrFilterOpType::Saturate => FilterOp::Saturate(c_filter.argument), + WrFilterOpType::Sepia => FilterOp::Sepia(c_filter.argument), + } + }).collect(); + let opacity = unsafe { opacity.as_ref() }; if let Some(opacity) = opacity { if *opacity < 1.0 { diff --git a/gfx/webrender_bindings/webrender_ffi_generated.h b/gfx/webrender_bindings/webrender_ffi_generated.h index 08506b069a52..47ca1cafd058 100644 --- a/gfx/webrender_bindings/webrender_ffi_generated.h +++ b/gfx/webrender_bindings/webrender_ffi_generated.h @@ -51,6 +51,20 @@ enum class WrExternalImageType : uint32_t { Sentinel /* this must be last for serialization purposes. */ }; +enum class WrFilterOpType : uint32_t { + Blur = 0, + Brightness = 1, + Contrast = 2, + Grayscale = 3, + HueRotate = 4, + Invert = 5, + Opacity = 6, + Saturate = 7, + Sepia = 8, + + Sentinel /* this must be last for serialization purposes. */ +}; + enum class WrGradientExtendMode : uint32_t { Clamp = 0, Repeat = 1, @@ -423,6 +437,16 @@ struct WrComplexClipRegion { } }; +struct WrFilterOp { + WrFilterOpType filter_type; + float argument; + + bool operator==(const WrFilterOp& aOther) const { + return filter_type == aOther.filter_type && + argument == aOther.argument; + } +}; + struct WrGlyphInstance { uint32_t index; WrPoint point; @@ -784,7 +808,9 @@ void wr_dp_push_stacking_context(WrState *aState, uint64_t aAnimationId, const float *aOpacity, const WrMatrix *aTransform, - WrMixBlendMode aMixBlendMode) + WrMixBlendMode aMixBlendMode, + const WrFilterOp *aFilters, + size_t aFilterCount) WR_FUNC; WR_INLINE diff --git a/image/RasterImage.cpp b/image/RasterImage.cpp index 27241ec65987..8585272ab49c 100644 --- a/image/RasterImage.cpp +++ b/image/RasterImage.cpp @@ -471,6 +471,7 @@ RasterImage::OnSurfaceDiscardedInternal(bool aAnimatedFramesDiscarded) if (aAnimatedFramesDiscarded && mAnimationState) { MOZ_ASSERT(gfxPrefs::ImageMemAnimatedDiscardable()); + mImageContainer = nullptr; gfx::IntRect rect = mAnimationState->UpdateState(mAnimationFinished, this, mSize); NotifyProgress(NoProgress, rect); @@ -1086,6 +1087,7 @@ RasterImage::Discard() SurfaceCache::RemoveImage(ImageKey(this)); if (mAnimationState) { + mImageContainer = nullptr; gfx::IntRect rect = mAnimationState->UpdateState(mAnimationFinished, this, mSize); NotifyProgress(NoProgress, rect); diff --git a/js/public/HashTable.h b/js/public/HashTable.h index 29a3956fd3b9..57f53adc98b5 100644 --- a/js/public/HashTable.h +++ b/js/public/HashTable.h @@ -915,11 +915,11 @@ class HashTable : private AllocPolicy {} bool isValid() const { - return !entry_; + return !!entry_; } bool found() const { - if (isValid()) + if (!isValid()) return false; #ifdef JS_DEBUG MOZ_ASSERT(generation == table_->generation()); @@ -1789,11 +1789,12 @@ class HashTable : private AllocPolicy { mozilla::ReentrancyGuard g(*this); MOZ_ASSERT(table); + MOZ_ASSERT_IF(p.isValid(), p.table_ == this); MOZ_ASSERT(!p.found()); MOZ_ASSERT(!(p.keyHash & sCollisionBit)); // Check for error from ensureHash() here. - if (p.isValid()) + if (!p.isValid()) return false; // Changing an entry from removed to live does not affect whether we @@ -1859,7 +1860,7 @@ class HashTable : private AllocPolicy MOZ_MUST_USE bool relookupOrAdd(AddPtr& p, const Lookup& l, Args&&... args) { // Check for error from ensureHash() here. - if (p.isValid()) + if (!p.isValid()) return false; #ifdef JS_DEBUG diff --git a/js/public/ProfilingFrameIterator.h b/js/public/ProfilingFrameIterator.h index 550ac518a193..09c22670d0e4 100644 --- a/js/public/ProfilingFrameIterator.h +++ b/js/public/ProfilingFrameIterator.h @@ -37,7 +37,7 @@ struct ForEachTrackedOptimizationAttemptOp; struct ForEachTrackedOptimizationTypeInfoOp; // This iterator can be used to walk the stack of a thread suspended at an -// arbitrary pc. To provide acurate results, profiling must have been enabled +// arbitrary pc. To provide accurate results, profiling must have been enabled // (via EnableRuntimeProfilingStack) before executing the callstack being // unwound. // @@ -50,11 +50,6 @@ class MOZ_NON_PARAM JS_PUBLIC_API(ProfilingFrameIterator) uint32_t sampleBufferGen_; js::Activation* activation_; - // When moving past a JitActivation, we need to save the prevJitTop - // from it to use as the exit-frame pointer when the next caller jit - // activation (if any) comes around. - void* savedPrevJitTop_; - static const unsigned StorageSpace = 8 * sizeof(void*); alignas(void*) unsigned char storage_[StorageSpace]; diff --git a/js/src/builtin/Function.js b/js/src/builtin/Function.js index 78f1fc29247f..e34b5bb3eb58 100644 --- a/js/src/builtin/Function.js +++ b/js/src/builtin/Function.js @@ -50,11 +50,20 @@ function FunctionBind(thisArg, ...boundArgs) { * construct helper functions. This avoids having to use rest parameters and * destructuring in the fast path. * + * Directly embedding the for-loop to combine bound and call arguments may + * inhibit inlining of the bound function, so we use a separate combiner + * function to perform this task. This combiner function is created lazily to + * ensure we only pay its construction cost when needed. + * * All bind_bindFunction{X} functions have the same signature to enable simple * reading out of closed-over state by debugging functions. */ function bind_bindFunction0(fun, thisArg, boundArgs) { return function bound() { + // Ensure we allocate a call-object slot for |boundArgs|, so the + // debugger can access this value. + if (false) void boundArgs; + var newTarget; if (_IsConstructing()) { newTarget = new.target; @@ -73,6 +82,9 @@ function bind_bindFunction0(fun, thisArg, boundArgs) { return constructContentFunction(fun, newTarget, SPREAD(arguments, 4)); case 5: return constructContentFunction(fun, newTarget, SPREAD(arguments, 5)); + default: + var args = FUN_APPLY(bind_mapArguments, null, arguments); + return bind_constructFunctionN(fun, newTarget, args); } } else { switch (arguments.length) { @@ -88,16 +100,21 @@ function bind_bindFunction0(fun, thisArg, boundArgs) { return callContentFunction(fun, thisArg, SPREAD(arguments, 4)); case 5: return callContentFunction(fun, thisArg, SPREAD(arguments, 5)); + default: + return FUN_APPLY(fun, thisArg, arguments); } } - var callArgs = FUN_APPLY(bind_mapArguments, null, arguments); - return bind_invokeFunctionN(fun, thisArg, newTarget, boundArgs, callArgs); }; } function bind_bindFunction1(fun, thisArg, boundArgs) { var bound1 = boundArgs[0]; + var combiner = null; return function bound() { + // Ensure we allocate a call-object slot for |boundArgs|, so the + // debugger can access this value. + if (false) void boundArgs; + var newTarget; if (_IsConstructing()) { newTarget = new.target; @@ -133,15 +150,34 @@ function bind_bindFunction1(fun, thisArg, boundArgs) { return callContentFunction(fun, thisArg, bound1, SPREAD(arguments, 5)); } } - var callArgs = FUN_APPLY(bind_mapArguments, null, arguments); - return bind_invokeFunctionN(fun, thisArg, newTarget, boundArgs, callArgs); + + if (combiner === null) { + combiner = function() { + var callArgsCount = arguments.length; + var args = std_Array(1 + callArgsCount); + _DefineDataProperty(args, 0, bound1); + for (var i = 0; i < callArgsCount; i++) + _DefineDataProperty(args, i + 1, arguments[i]); + return args; + }; + } + + var args = FUN_APPLY(combiner, null, arguments); + if (newTarget === undefined) + return bind_applyFunctionN(fun, thisArg, args); + return bind_constructFunctionN(fun, newTarget, args); }; } function bind_bindFunction2(fun, thisArg, boundArgs) { var bound1 = boundArgs[0]; var bound2 = boundArgs[1]; + var combiner = null; return function bound() { + // Ensure we allocate a call-object slot for |boundArgs|, so the + // debugger can access this value. + if (false) void boundArgs; + var newTarget; if (_IsConstructing()) { newTarget = new.target; @@ -177,13 +213,29 @@ function bind_bindFunction2(fun, thisArg, boundArgs) { return callContentFunction(fun, thisArg, bound1, bound2, SPREAD(arguments, 5)); } } - var callArgs = FUN_APPLY(bind_mapArguments, null, arguments); - return bind_invokeFunctionN(fun, thisArg, newTarget, boundArgs, callArgs); + + if (combiner === null) { + combiner = function() { + var callArgsCount = arguments.length; + var args = std_Array(2 + callArgsCount); + _DefineDataProperty(args, 0, bound1); + _DefineDataProperty(args, 1, bound2); + for (var i = 0; i < callArgsCount; i++) + _DefineDataProperty(args, i + 2, arguments[i]); + return args; + }; + } + + var args = FUN_APPLY(combiner, null, arguments); + if (newTarget === undefined) + return bind_applyFunctionN(fun, thisArg, args); + return bind_constructFunctionN(fun, newTarget, args); }; } function bind_bindFunctionN(fun, thisArg, boundArgs) { assert(boundArgs.length > 2, "Fast paths should be used for few-bound-args cases."); + var combiner = null; return function bound() { var newTarget; if (_IsConstructing()) { @@ -194,11 +246,26 @@ function bind_bindFunctionN(fun, thisArg, boundArgs) { if (arguments.length === 0) { if (newTarget !== undefined) return bind_constructFunctionN(fun, newTarget, boundArgs); - return bind_applyFunctionN(fun, thisArg, boundArgs); } - var callArgs = FUN_APPLY(bind_mapArguments, null, arguments); - return bind_invokeFunctionN(fun, thisArg, newTarget, boundArgs, callArgs); + + if (combiner === null) { + combiner = function() { + var boundArgsCount = boundArgs.length; + var callArgsCount = arguments.length; + var args = std_Array(boundArgsCount + callArgsCount); + for (var i = 0; i < boundArgsCount; i++) + _DefineDataProperty(args, i, boundArgs[i]); + for (var i = 0; i < callArgsCount; i++) + _DefineDataProperty(args, i + boundArgsCount, arguments[i]); + return args; + }; + } + + var args = FUN_APPLY(combiner, null, arguments); + if (newTarget !== undefined) + return bind_constructFunctionN(fun, newTarget, args); + return bind_applyFunctionN(fun, thisArg, args); }; } @@ -210,19 +277,6 @@ function bind_mapArguments() { return args; } -function bind_invokeFunctionN(fun, thisArg, newTarget, boundArgs, callArgs) { - var boundArgsCount = boundArgs.length; - var callArgsCount = callArgs.length; - var args = std_Array(boundArgsCount + callArgsCount); - for (var i = 0; i < boundArgsCount; i++) - _DefineDataProperty(args, i, boundArgs[i]); - for (var i = 0; i < callArgsCount; i++) - _DefineDataProperty(args, i + boundArgsCount, callArgs[i]); - if (newTarget !== undefined) - return bind_constructFunctionN(fun, newTarget, args); - return bind_applyFunctionN(fun, thisArg, args); -} - function bind_applyFunctionN(fun, thisArg, args) { switch (args.length) { case 0: diff --git a/js/src/builtin/Intl.js b/js/src/builtin/Intl.js index 3251db98b69f..f4ffdc608226 100644 --- a/js/src/builtin/Intl.js +++ b/js/src/builtin/Intl.js @@ -436,18 +436,24 @@ function CanonicalizeLanguageTag(locale) { subtags[i] = subtag; i++; } + + // Directly return when the language tag doesn't contain any extension or + // private use sub-tags. + if (i === subtags.length) + return callFunction(std_Array_join, subtags, "-"); + var normal = callFunction(std_Array_join, callFunction(std_Array_slice, subtags, 0, i), "-"); // Extension sequences are sorted by their singleton characters. // "u-ca-chinese-t-zh-latn" -> "t-zh-latn-u-ca-chinese" - var extensions = new List(); + var extensions = []; while (i < subtags.length && subtags[i] !== "x") { var extensionStart = i; i++; while (i < subtags.length && subtags[i].length > 1) i++; var extension = callFunction(std_Array_join, callFunction(std_Array_slice, subtags, extensionStart, i), "-"); - callFunction(std_Array_push, extensions, extension); + _DefineDataProperty(extensions, extensions.length, extension); } callFunction(std_Array_sort, extensions); @@ -806,10 +812,13 @@ function addSpecialMissingLanguageTags(availableLocales) { */ function CanonicalizeLocaleList(locales) { if (locales === undefined) - return new List(); - var seen = new List(); - if (typeof locales === "string") - locales = [locales]; + return []; + if (typeof locales === "string") { + if (!IsStructurallyValidLanguageTag(locales)) + ThrowRangeError(JSMSG_INVALID_LANGUAGE_TAG, locales); + return [CanonicalizeLanguageTag(locales)]; + } + var seen = []; var O = ToObject(locales); var len = ToLength(O.length); var k = 0; @@ -825,7 +834,7 @@ function CanonicalizeLocaleList(locales) { ThrowRangeError(JSMSG_INVALID_LANGUAGE_TAG, tag); tag = CanonicalizeLanguageTag(tag); if (callFunction(ArrayIndexOf, seen, tag) === -1) - callFunction(std_Array_push, seen, tag); + _DefineDataProperty(seen, seen.length, tag); } k++; } @@ -1181,7 +1190,7 @@ function ResolveLocale(availableLocales, requestedLocales, options, relevantExte function LookupSupportedLocales(availableLocales, requestedLocales) { // Steps 1-2. var len = requestedLocales.length; - var subset = new List(); + var subset = []; // Steps 3-4. var k = 0; @@ -1193,14 +1202,14 @@ function LookupSupportedLocales(availableLocales, requestedLocales) { // Step 4.c-d. var availableLocale = BestAvailableLocale(availableLocales, noExtensionsLocale); if (availableLocale !== undefined) - callFunction(std_Array_push, subset, locale); + _DefineDataProperty(subset, subset.length, locale); // Step 4.e. k++; } // Steps 5-6. - return callFunction(std_Array_slice, subset, 0); + return subset; } @@ -3438,16 +3447,8 @@ function Intl_PluralRules_resolvedOptions() { * ES2017 Intl draft rev 947aa9a0c853422824a0c9510d8f09be3eb416b9 */ function Intl_getCanonicalLocales(locales) { - // Step 1. - var localeList = CanonicalizeLocaleList(locales); - - // Step 2 (Inlined CreateArrayFromList). - var array = []; - - for (var n = 0, len = localeList.length; n < len; n++) - _DefineDataProperty(array, n, localeList[n]); - - return array; + // Steps 1-2. + return CanonicalizeLocaleList(locales); } /** diff --git a/js/src/builtin/RegExpGlobalReplaceOpt.h.js b/js/src/builtin/RegExpGlobalReplaceOpt.h.js index 0c80fecdef31..0ae85722eebf 100644 --- a/js/src/builtin/RegExpGlobalReplaceOpt.h.js +++ b/js/src/builtin/RegExpGlobalReplaceOpt.h.js @@ -31,7 +31,7 @@ function FUNC_NAME(rx, S, lengthS, replaceValue, fullUnicode var lastIndex = 0; rx.lastIndex = 0; -#if defined(FUNCTIONAL) +#if defined(FUNCTIONAL) || defined(ELEMBASE) // Save the original source and flags, so we can check if the replacer // function recompiled the regexp. var originalSource = UnsafeGetStringFromReservedSlot(rx, REGEXP_SOURCE_SLOT); @@ -109,7 +109,7 @@ function FUNC_NAME(rx, S, lengthS, replaceValue, fullUnicode break; } -#if defined(FUNCTIONAL) +#if defined(FUNCTIONAL) || defined(ELEMBASE) // Ensure the current source and flags match the original regexp, the // replaceValue function may have called RegExp#compile. if (UnsafeGetStringFromReservedSlot(rx, REGEXP_SOURCE_SLOT) !== originalSource || diff --git a/js/src/frontend/Parser.cpp b/js/src/frontend/Parser.cpp index 019e002d8bcd..e1821492d288 100644 --- a/js/src/frontend/Parser.cpp +++ b/js/src/frontend/Parser.cpp @@ -2265,7 +2265,7 @@ Parser::moduleBody(ModuleSharedContext* modulesc) DeclaredNamePtr p = modulepc.varScope().lookupDeclaredName(name); if (!p) { JSAutoByteString str; - if (!str.encodeLatin1(context, name)) + if (!AtomToPrintableString(context, name, &str)) return null(); JS_ReportErrorNumberLatin1(context, GetErrorMessage, nullptr, diff --git a/js/src/gc/GCRuntime.h b/js/src/gc/GCRuntime.h index df7219183553..056b12a0cd73 100644 --- a/js/src/gc/GCRuntime.h +++ b/js/src/gc/GCRuntime.h @@ -1005,6 +1005,7 @@ class GCRuntime SliceBudget& budget, AllocKind kind); static IncrementalProgress sweepAtomsTable(GCRuntime* gc, FreeOp* fop, Zone* zone, SliceBudget& budget, AllocKind kind); + void startSweepingAtomsTable(); IncrementalProgress sweepAtomsTable(SliceBudget& budget); static IncrementalProgress finalizeAllocKind(GCRuntime* gc, FreeOp* fop, Zone* zone, SliceBudget& budget, AllocKind kind); diff --git a/js/src/gdb/mozilla/unwind.py b/js/src/gdb/mozilla/unwind.py index 6020c2d6b40a..f80b69421644 100644 --- a/js/src/gdb/mozilla/unwind.py +++ b/js/src/gdb/mozilla/unwind.py @@ -434,17 +434,16 @@ class UnwinderState(object): elif self.activation is None: cx = self.get_tls_context() self.activation = cx['jitActivation'] - jittop = cx['jitTop'] else: - jittop = self.activation['prevJitTop_'] self.activation = self.activation['prevJitActivation_'] - if jittop == 0: + exitFP = self.activation['exitFP_'] + if exitFP == 0: return None exit_sp = pending_frame.read_register(self.SP_REGISTER) frame_type = self.typecache.JitFrame_Exit - return self.create_frame(pc, exit_sp, jittop, frame_type, pending_frame) + return self.create_frame(pc, exit_sp, exitFP, frame_type, pending_frame) # A wrapper for unwind_entry_frame_registers that handles # architecture-independent boilerplate. diff --git a/js/src/jit-test/tests/arguments/args-redefine-iterator-1.js b/js/src/jit-test/tests/arguments/args-redefine-iterator-1.js new file mode 100644 index 000000000000..77241a6ae79a --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-iterator-1.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, Symbol.iterator, { }); + for (var i = 0; i < 5; i++) + assertEq(a[Symbol.iterator], Array.prototype[Symbol.iterator]); + + var desc = Object.getOwnPropertyDescriptor(a, Symbol.iterator); + assertEq(desc.value, Array.prototype[Symbol.iterator]); + assertEq(desc.writable, true); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, true); +} +t(); diff --git a/js/src/jit-test/tests/arguments/args-redefine-iterator-2.js b/js/src/jit-test/tests/arguments/args-redefine-iterator-2.js new file mode 100644 index 000000000000..186be930c4a5 --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-iterator-2.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, Symbol.iterator, { writable: false, enumerable: true, configurable: false }); + for (var i = 0; i < 5; i++) + assertEq(a[Symbol.iterator], Array.prototype[Symbol.iterator]); + + var desc = Object.getOwnPropertyDescriptor(a, Symbol.iterator); + assertEq(desc.value, Array.prototype[Symbol.iterator]); + assertEq(desc.writable, false); + assertEq(desc.enumerable, true); + assertEq(desc.configurable, false); +} +t(); diff --git a/js/src/jit-test/tests/arguments/args-redefine-length-3.js b/js/src/jit-test/tests/arguments/args-redefine-length-3.js new file mode 100644 index 000000000000..a4d6823acfa5 --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-length-3.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, "length", { }); + for (var i = 0; i < 5; i++) + assertEq(a.length, 0); + + var desc = Object.getOwnPropertyDescriptor(a, "length"); + assertEq(desc.value, 0); + assertEq(desc.writable, true); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, true); +} +t(); diff --git a/js/src/jit-test/tests/arguments/args-redefine-length-4.js b/js/src/jit-test/tests/arguments/args-redefine-length-4.js new file mode 100644 index 000000000000..1029e8fca32b --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-length-4.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, "length", { writable: false }); + for (var i = 0; i < 5; i++) + assertEq(a.length, 0); + + var desc = Object.getOwnPropertyDescriptor(a, "length"); + assertEq(desc.value, 0); + assertEq(desc.writable, false); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, true); +} +t(); diff --git a/js/src/jit-test/tests/arguments/args-redefine-length-5.js b/js/src/jit-test/tests/arguments/args-redefine-length-5.js new file mode 100644 index 000000000000..2ae30bf0f79f --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-length-5.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, "length", { enumerable: true }); + for (var i = 0; i < 5; i++) + assertEq(a.length, 0); + + var desc = Object.getOwnPropertyDescriptor(a, "length"); + assertEq(desc.value, 0); + assertEq(desc.writable, true); + assertEq(desc.enumerable, true); + assertEq(desc.configurable, true); +} +t(); diff --git a/js/src/jit-test/tests/arguments/args-redefine-length-6.js b/js/src/jit-test/tests/arguments/args-redefine-length-6.js new file mode 100644 index 000000000000..a4b768d4bd14 --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-length-6.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, "length", { configurable: false }); + for (var i = 0; i < 5; i++) + assertEq(a.length, 0); + + var desc = Object.getOwnPropertyDescriptor(a, "length"); + assertEq(desc.value, 0); + assertEq(desc.writable, true); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, false); +} +t(); diff --git a/js/src/jit-test/tests/arguments/args-redefine-length-7.js b/js/src/jit-test/tests/arguments/args-redefine-length-7.js new file mode 100644 index 000000000000..042b224740ab --- /dev/null +++ b/js/src/jit-test/tests/arguments/args-redefine-length-7.js @@ -0,0 +1,14 @@ +function t() +{ + var a = arguments; + Object.defineProperty(a, "length", { value: 0 }); + for (var i = 0; i < 5; i++) + assertEq(a.length, 0); + + var desc = Object.getOwnPropertyDescriptor(a, "length"); + assertEq(desc.value, 0); + assertEq(desc.writable, true); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, true); +} +t(); diff --git a/js/src/jit-test/tests/basic/external-strings-cgc.js b/js/src/jit-test/tests/basic/external-strings-cgc.js index 900610bb71a8..5519f688202f 100644 --- a/js/src/jit-test/tests/basic/external-strings-cgc.js +++ b/js/src/jit-test/tests/basic/external-strings-cgc.js @@ -1,3 +1,4 @@ +gczeal(0); startgc(1, "shrinking"); for (var i=0; i<100; i++) { gcslice(100000); diff --git a/js/src/jit-test/tests/basic/shifted-elements7.js b/js/src/jit-test/tests/basic/shifted-elements7.js new file mode 100644 index 000000000000..3adcb61be89d --- /dev/null +++ b/js/src/jit-test/tests/basic/shifted-elements7.js @@ -0,0 +1,47 @@ +function test1() { + var a = []; + for (var i = 0; i < 100; i++) + a.unshift("foo" + i); + for (var i = 99; i >= 0; i--) { + assertEq(a.shift(), "foo" + i); + a.unshift("foo" + (i - 1)); + } + assertEq(a.length, 100); +} +test1(); + +function sum(arr) { + var res = 0; + for (var i = 0; i < arr.length; i++) + res += arr[i]; + return res; +} +function test2() { + var a = []; + for (var i = 0; i < 200; i++) + a.push(i); + for (var i = 0; i < 100; i++) + a.shift(); + for (var i = 0; i < 200; i++) + a.unshift(i); + assertEq(a.length, 300); + assertEq(sum(a), 34850); +} +test2(); + +function test3() { + var a = []; + for (var i = 0; i < 200; i++) + a.push(i); + var toAdd = []; + var step = 1; + for (var i = 0; i < 2500; i += step) { + for (var j = 0; j < step; j++) + toAdd.unshift(i + j); + a.unshift(...toAdd); + step = Math.max((i / 16)|0, 1); + } + assertEq(a.length, 41463); + assertEq(sum(a), 26657756); +} +test3(); diff --git a/js/src/jit-test/tests/debug/bug1368736.js b/js/src/jit-test/tests/debug/bug1368736.js new file mode 100644 index 000000000000..b2a969715860 --- /dev/null +++ b/js/src/jit-test/tests/debug/bug1368736.js @@ -0,0 +1,18 @@ +g = newGlobal(); +hits = 0; +Debugger(g).onDebuggerStatement = function(frame) { + // Set a breakpoint at the JSOP_DEBUGAFTERYIELD op. + frame.script.setBreakpoint(71, {hit: function() { hits++; }}); +} +g.eval(` +function* range() { + debugger; + for (var i = 0; i < 3; i++) { + yield i; + } +} +var iter = range(); +for (var i = 0; i < 3; i++) + assertEq(iter.next().value, i); +`); +assertEq(hits, 2); diff --git a/js/src/jit-test/tests/gc/bug-1271110.js b/js/src/jit-test/tests/gc/bug-1271110.js index b3b68a277e2b..e9505fcb1a86 100644 --- a/js/src/jit-test/tests/gc/bug-1271110.js +++ b/js/src/jit-test/tests/gc/bug-1271110.js @@ -1,6 +1,8 @@ if (!('oomTest' in this)) quit(); +gczeal(0); + var x1 = []; var x2 = []; var x3 = []; diff --git a/js/src/jit-test/tests/gc/bug-1301496.js b/js/src/jit-test/tests/gc/bug-1301496.js index 7200ab98c952..79fa0448fb40 100644 --- a/js/src/jit-test/tests/gc/bug-1301496.js +++ b/js/src/jit-test/tests/gc/bug-1301496.js @@ -1,5 +1,6 @@ if (helperThreadCount() == 0) quit(); +gczeal(0); startgc(1, 'shrinking'); offThreadCompileScript(""); // Adapted from randomly chosen test: js/src/jit-test/tests/parser/bug-1263355-13.js diff --git a/js/src/jit-test/tests/gc/bug-1322648.js b/js/src/jit-test/tests/gc/bug-1322648.js index cd421865a7d9..51cb607ca5fe 100644 --- a/js/src/jit-test/tests/gc/bug-1322648.js +++ b/js/src/jit-test/tests/gc/bug-1322648.js @@ -1,5 +1,6 @@ if (helperThreadCount() == 0) quit(); +gczeal(0); print = function(s) {} startgc(1); offThreadCompileScript(""); diff --git a/js/src/jit-test/tests/gc/bug-1323868.js b/js/src/jit-test/tests/gc/bug-1323868.js index c7e8c9b08b4e..5ce91c588047 100644 --- a/js/src/jit-test/tests/gc/bug-1323868.js +++ b/js/src/jit-test/tests/gc/bug-1323868.js @@ -1,5 +1,6 @@ if (helperThreadCount() == 0) quit(); +gczeal(0); startgc(8301); offThreadCompileScript("(({a,b,c}))"); gcparam("maxBytes", gcparam("gcBytes")); diff --git a/js/src/jit-test/tests/gc/bug-1340010.js b/js/src/jit-test/tests/gc/bug-1340010.js index 80ae1fdc5dbc..1b38999120a6 100644 --- a/js/src/jit-test/tests/gc/bug-1340010.js +++ b/js/src/jit-test/tests/gc/bug-1340010.js @@ -2,6 +2,7 @@ if (helperThreadCount() === 0) quit(); if (!('deterministicgc' in this)) quit(); +gczeal(0); gc(); function weighted(wa) { diff --git a/js/src/jit-test/tests/gc/bug-1370069.js b/js/src/jit-test/tests/gc/bug-1370069.js new file mode 100644 index 000000000000..dd4daabf8a02 --- /dev/null +++ b/js/src/jit-test/tests/gc/bug-1370069.js @@ -0,0 +1,6 @@ +// |jit-test| error:SyntaxError +try { + eval("}"); +} catch (exc) {} +gczeal(17, 1); +6.900653737167637, (yield); diff --git a/js/src/jit-test/tests/gc/bug1283169.js b/js/src/jit-test/tests/gc/bug1283169.js index aa6802bb086a..da6156ee765b 100644 --- a/js/src/jit-test/tests/gc/bug1283169.js +++ b/js/src/jit-test/tests/gc/bug1283169.js @@ -1,4 +1,5 @@ if (helperThreadCount() === 0) quit(0); +gczeal(0); startgc(45); offThreadCompileScript("print(1)"); diff --git a/js/src/jit-test/tests/gc/gcparam.js b/js/src/jit-test/tests/gc/gcparam.js index c9320f72cda1..c218e7459d69 100644 --- a/js/src/jit-test/tests/gc/gcparam.js +++ b/js/src/jit-test/tests/gc/gcparam.js @@ -1,3 +1,5 @@ +gczeal(0); + function testGetParam(key) { gcparam(key); } diff --git a/js/src/jit-test/tests/gc/weak-marking-01.js b/js/src/jit-test/tests/gc/weak-marking-01.js index 7a100f6e1026..e2b4e1a1cfd8 100644 --- a/js/src/jit-test/tests/gc/weak-marking-01.js +++ b/js/src/jit-test/tests/gc/weak-marking-01.js @@ -3,6 +3,8 @@ // everything in functions because it seems like the toplevel script hangs onto // its object literals. +gczeal(0); + // All reachable keys should be found, and the rest should be swept. function basicSweeping() { var wm1 = new WeakMap(); diff --git a/js/src/jit-test/tests/gc/weak-marking-02.js b/js/src/jit-test/tests/gc/weak-marking-02.js index c3d9a0516576..ec4d60a3af9b 100644 --- a/js/src/jit-test/tests/gc/weak-marking-02.js +++ b/js/src/jit-test/tests/gc/weak-marking-02.js @@ -7,6 +7,8 @@ // in the WeakMap, and the actual "delegate" object in the target compartment // is the thing whose liveness is checked. +gczeal(0); + var g2 = newGlobal(); g2.eval('function genObj(name) { return {"name": name} }'); diff --git a/js/src/jit-test/tests/parser/bug-1263355-14.js b/js/src/jit-test/tests/parser/bug-1263355-14.js index 38b3777c360b..e667bafc11a1 100644 --- a/js/src/jit-test/tests/parser/bug-1263355-14.js +++ b/js/src/jit-test/tests/parser/bug-1263355-14.js @@ -1,3 +1,4 @@ +gczeal(0); function g() { for (var j = 0; j < 999; ++j) { try { diff --git a/js/src/jit/Bailouts.cpp b/js/src/jit/Bailouts.cpp index 79ce2bcb383c..7f6c6a9c2a17 100644 --- a/js/src/jit/Bailouts.cpp +++ b/js/src/jit/Bailouts.cpp @@ -33,10 +33,11 @@ jit::Bailout(BailoutStack* sp, BaselineBailoutInfo** bailoutInfo) MOZ_ASSERT(bailoutInfo); // We don't have an exit frame. - MOZ_ASSERT(IsInRange(FAKE_JIT_TOP_FOR_BAILOUT, 0, 0x1000) && - IsInRange(FAKE_JIT_TOP_FOR_BAILOUT + sizeof(CommonFrameLayout), 0, 0x1000), - "Fake jitTop pointer should be within the first page."); - cx->jitTop = FAKE_JIT_TOP_FOR_BAILOUT; + MOZ_ASSERT(IsInRange(FAKE_EXITFP_FOR_BAILOUT, 0, 0x1000) && + IsInRange(FAKE_EXITFP_FOR_BAILOUT + sizeof(CommonFrameLayout), 0, 0x1000), + "Fake exitfp pointer should be within the first page."); + + cx->activation()->asJit()->setExitFP(FAKE_EXITFP_FOR_BAILOUT); JitActivationIterator jitActivations(cx); BailoutFrameInfo bailoutData(jitActivations, sp); @@ -108,7 +109,7 @@ jit::InvalidationBailout(InvalidationBailoutStack* sp, size_t* frameSizeOut, JSContext* cx = TlsContext.get(); // We don't have an exit frame. - cx->jitTop = FAKE_JIT_TOP_FOR_BAILOUT; + cx->activation()->asJit()->setExitFP(FAKE_EXITFP_FOR_BAILOUT); JitActivationIterator jitActivations(cx); BailoutFrameInfo bailoutData(jitActivations, sp); @@ -192,9 +193,10 @@ jit::ExceptionHandlerBailout(JSContext* cx, const InlineFrameIterator& frame, // operation callback like a timeout handler. MOZ_ASSERT_IF(!excInfo.propagatingIonExceptionForDebugMode(), cx->isExceptionPending()); - uint8_t* prevJitTop = cx->jitTop; - auto restoreJitTop = mozilla::MakeScopeExit([&]() { cx->jitTop = prevJitTop; }); - cx->jitTop = FAKE_JIT_TOP_FOR_BAILOUT; + JitActivation* act = cx->activation()->asJit(); + uint8_t* prevExitFP = act->exitFP(); + auto restoreExitFP = mozilla::MakeScopeExit([&]() { act->setExitFP(prevExitFP); }); + act->setExitFP(FAKE_EXITFP_FOR_BAILOUT); gc::AutoSuppressGC suppress(cx); @@ -303,7 +305,7 @@ jit::CheckFrequentBailouts(JSContext* cx, JSScript* script, BailoutKind bailoutK void BailoutFrameInfo::attachOnJitActivation(const JitActivationIterator& jitActivations) { - MOZ_ASSERT(jitActivations.jitTop() == FAKE_JIT_TOP_FOR_BAILOUT); + MOZ_ASSERT(jitActivations.exitFP() == FAKE_EXITFP_FOR_BAILOUT); activation_ = jitActivations->asJit(); activation_->setBailoutData(this); } diff --git a/js/src/jit/Bailouts.h b/js/src/jit/Bailouts.h index 747f59b7d5e6..391b9a9b6852 100644 --- a/js/src/jit/Bailouts.h +++ b/js/src/jit/Bailouts.h @@ -102,7 +102,7 @@ static const uint32_t BAILOUT_RETURN_OVERRECURSED = 2; // This address is a magic number made to cause crashes while indicating that we // are making an attempt to mark the stack during a bailout. -static uint8_t * const FAKE_JIT_TOP_FOR_BAILOUT = reinterpret_cast(0xba1); +static uint8_t* const FAKE_EXITFP_FOR_BAILOUT = reinterpret_cast(0xba1); // BailoutStack is an architecture specific pointer to the stack, given by the // bailout handler. diff --git a/js/src/jit/BaselineIC.cpp b/js/src/jit/BaselineIC.cpp index bd2eb838acaa..b932f8e97078 100644 --- a/js/src/jit/BaselineIC.cpp +++ b/js/src/jit/BaselineIC.cpp @@ -3460,7 +3460,7 @@ ICCall_Native::Compiler::generateStubCode(MacroAssembler& masm) masm.push(scratch); masm.push(ICTailCallReg); masm.loadJSContext(scratch); - masm.enterFakeExitFrameForNative(scratch, isConstructing_); + masm.enterFakeExitFrameForNative(scratch, scratch, isConstructing_); // Execute call. masm.setupUnalignedABICall(scratch); @@ -3558,7 +3558,7 @@ ICCall_ClassHook::Compiler::generateStubCode(MacroAssembler& masm) masm.push(scratch); masm.push(ICTailCallReg); masm.loadJSContext(scratch); - masm.enterFakeExitFrameForNative(scratch, isConstructing_); + masm.enterFakeExitFrameForNative(scratch, scratch, isConstructing_); // Execute call. masm.setupUnalignedABICall(scratch); diff --git a/js/src/jit/CodeGenerator.cpp b/js/src/jit/CodeGenerator.cpp index 63327ae093d9..09c6f8f0cc4a 100644 --- a/js/src/jit/CodeGenerator.cpp +++ b/js/src/jit/CodeGenerator.cpp @@ -3918,7 +3918,7 @@ CodeGenerator::visitCallNative(LCallNative* call) // Construct native exit frame. uint32_t safepointOffset = masm.buildFakeExitFrame(tempReg); - masm.enterFakeExitFrameForNative(argContextReg, call->mir()->isConstructing()); + masm.enterFakeExitFrameForNative(argContextReg, tempReg, call->mir()->isConstructing()); markSafepointAt(safepointOffset, call); @@ -4047,7 +4047,7 @@ CodeGenerator::visitCallDOMNative(LCallDOMNative* call) // Construct native exit frame. uint32_t safepointOffset = masm.buildFakeExitFrame(argJSContext); masm.loadJSContext(argJSContext); - masm.enterFakeExitFrame(argJSContext, IonDOMMethodExitFrameLayoutToken); + masm.enterFakeExitFrame(argJSContext, argJSContext, IonDOMMethodExitFrameLayoutToken); markSafepointAt(safepointOffset, call); @@ -7945,7 +7945,7 @@ JitRuntime::generateLazyLinkStub(JSContext* cx) Register temp0 = regs.takeAny(); masm.loadJSContext(temp0); - masm.enterFakeExitFrame(temp0, LazyLinkExitFrameLayoutToken); + masm.enterFakeExitFrame(temp0, temp0, LazyLinkExitFrameLayoutToken); masm.PushStubCode(); masm.setupUnalignedABICall(temp0); @@ -11569,7 +11569,7 @@ CodeGenerator::visitGetDOMProperty(LGetDOMProperty* ins) uint32_t safepointOffset = masm.buildFakeExitFrame(JSContextReg); masm.loadJSContext(JSContextReg); - masm.enterFakeExitFrame(JSContextReg, IonDOMExitFrameLayoutGetterToken); + masm.enterFakeExitFrame(JSContextReg, JSContextReg, IonDOMExitFrameLayoutGetterToken); markSafepointAt(safepointOffset, ins); @@ -11667,7 +11667,7 @@ CodeGenerator::visitSetDOMProperty(LSetDOMProperty* ins) uint32_t safepointOffset = masm.buildFakeExitFrame(JSContextReg); masm.loadJSContext(JSContextReg); - masm.enterFakeExitFrame(JSContextReg, IonDOMExitFrameLayoutSetterToken); + masm.enterFakeExitFrame(JSContextReg, JSContextReg, IonDOMExitFrameLayoutSetterToken); markSafepointAt(safepointOffset, ins); diff --git a/js/src/jit/IonBuilder.cpp b/js/src/jit/IonBuilder.cpp index 011311ef93dc..895c3bbebfdc 100644 --- a/js/src/jit/IonBuilder.cpp +++ b/js/src/jit/IonBuilder.cpp @@ -1216,6 +1216,11 @@ IonBuilder::addOsrValueTypeBarrier(uint32_t slot, MInstruction** def_, osrBlock->insertBefore(osrBlock->lastIns(), barrier); osrBlock->rewriteSlot(slot, barrier); def = barrier; + + // If the TypeSet is more precise than |type|, adjust |type| for the + // code below. + if (type == MIRType::Value) + type = barrier->type(); } else if (type == MIRType::Null || type == MIRType::Undefined || type == MIRType::MagicOptimizedArguments) diff --git a/js/src/jit/IonCacheIRCompiler.cpp b/js/src/jit/IonCacheIRCompiler.cpp index 9c4fa6edb043..9806fdacb3de 100644 --- a/js/src/jit/IonCacheIRCompiler.cpp +++ b/js/src/jit/IonCacheIRCompiler.cpp @@ -945,7 +945,7 @@ IonCacheIRCompiler::emitCallNativeGetterResult() if (!masm.icBuildOOLFakeExitFrame(GetReturnAddressToIonCode(cx_), save)) return false; - masm.enterFakeExitFrame(argJSContext, IonOOLNativeExitFrameLayoutToken); + masm.enterFakeExitFrame(argJSContext, scratch, IonOOLNativeExitFrameLayoutToken); // Construct and execute call. masm.setupUnalignedABICall(scratch); @@ -1002,7 +1002,7 @@ IonCacheIRCompiler::emitCallProxyGetResult() if (!masm.icBuildOOLFakeExitFrame(GetReturnAddressToIonCode(cx_), save)) return false; - masm.enterFakeExitFrame(argJSContext, IonOOLProxyExitFrameLayoutToken); + masm.enterFakeExitFrame(argJSContext, scratch, IonOOLProxyExitFrameLayoutToken); // Make the call. masm.setupUnalignedABICall(scratch); @@ -1766,7 +1766,7 @@ IonCacheIRCompiler::emitCallNativeSetter() if (!masm.icBuildOOLFakeExitFrame(GetReturnAddressToIonCode(cx_), save)) return false; - masm.enterFakeExitFrame(argJSContext, IonOOLNativeExitFrameLayoutToken); + masm.enterFakeExitFrame(argJSContext, scratch, IonOOLNativeExitFrameLayoutToken); // Make the call. masm.setupUnalignedABICall(scratch); diff --git a/js/src/jit/JitFrames.cpp b/js/src/jit/JitFrames.cpp index 8eecfbf28eeb..264ef25302bc 100644 --- a/js/src/jit/JitFrames.cpp +++ b/js/src/jit/JitFrames.cpp @@ -107,7 +107,7 @@ JitFrameIterator::JitFrameIterator() } JitFrameIterator::JitFrameIterator(JSContext* cx) - : current_(cx->jitTop), + : current_(cx->activation()->asJit()->exitFP()), type_(JitFrame_Exit), returnAddressToFp_(nullptr), frameSize_(0), @@ -122,7 +122,7 @@ JitFrameIterator::JitFrameIterator(JSContext* cx) } JitFrameIterator::JitFrameIterator(const ActivationIterator& activations) - : current_(activations.jitTop()), + : current_(activations->asJit()->exitFP()), type_(JitFrame_Exit), returnAddressToFp_(nullptr), frameSize_(0), @@ -948,7 +948,7 @@ HandleException(ResumeFromException* rfe) ++iter; if (current) { - // Unwind the frame by updating jitTop. This is necessary so that + // Unwind the frame by updating exitFP. This is necessary so that // (1) debugger exception unwind and leave frame hooks don't see this // frame when they use ScriptFrameIter, and (2) ScriptFrameIter does // not crash when accessing an IonScript that's destroyed by the @@ -972,7 +972,7 @@ EnsureBareExitFrame(JSContext* cx, JitFrameLayout* frame) { ExitFrameLayout* exitFrame = reinterpret_cast(frame); - if (cx->jitTop == (uint8_t*)frame) { + if (cx->activation()->asJit()->exitFP() == (uint8_t*)frame) { // If we already called this function for the current frame, do // nothing. MOZ_ASSERT(exitFrame->isBareExit()); @@ -985,11 +985,12 @@ EnsureBareExitFrame(JSContext* cx, JitFrameLayout* frame) ++iter; MOZ_ASSERT(iter.current() == frame, "|frame| must be the top JS frame"); - MOZ_ASSERT((uint8_t*)exitFrame->footer() >= cx->jitTop, - "Must have space for ExitFooterFrame before jitTop"); + MOZ_ASSERT(!!cx->activation()->asJit()->exitFP()); + MOZ_ASSERT((uint8_t*)exitFrame->footer() >= cx->activation()->asJit()->exitFP(), + "Must have space for ExitFooterFrame before exitFP"); #endif - cx->jitTop = (uint8_t*)frame; + cx->activation()->asJit()->setExitFP((uint8_t*)frame); *exitFrame->footer()->addressOfJitCode() = ExitFrameLayout::BareToken(); MOZ_ASSERT(exitFrame->isBareExit()); } diff --git a/js/src/jit/MacroAssembler-inl.h b/js/src/jit/MacroAssembler-inl.h index 0d0ba916b9f3..e73c8419fe90 100644 --- a/js/src/jit/MacroAssembler-inl.h +++ b/js/src/jit/MacroAssembler-inl.h @@ -291,9 +291,9 @@ MacroAssembler::PushStubCode() } void -MacroAssembler::enterExitFrame(Register cxreg, const VMFunction* f) +MacroAssembler::enterExitFrame(Register cxreg, Register scratch, const VMFunction* f) { - linkExitFrame(cxreg); + linkExitFrame(cxreg, scratch); // Push the JitCode pointer. (Keep the code alive, when on the stack) PushStubCode(); // Push VMFunction pointer, to mark arguments. @@ -301,18 +301,18 @@ MacroAssembler::enterExitFrame(Register cxreg, const VMFunction* f) } void -MacroAssembler::enterFakeExitFrame(Register cxreg, enum ExitFrameTokenValues token) +MacroAssembler::enterFakeExitFrame(Register cxreg, Register scratch, enum ExitFrameTokenValues token) { - linkExitFrame(cxreg); + linkExitFrame(cxreg, scratch); Push(Imm32(token)); Push(ImmPtr(nullptr)); } void -MacroAssembler::enterFakeExitFrameForNative(Register cxreg, bool isConstructing) +MacroAssembler::enterFakeExitFrameForNative(Register cxreg, Register scratch, bool isConstructing) { - enterFakeExitFrame(cxreg, isConstructing ? ConstructNativeExitFrameLayoutToken - : CallNativeExitFrameLayoutToken); + enterFakeExitFrame(cxreg, scratch, isConstructing ? ConstructNativeExitFrameLayoutToken + : CallNativeExitFrameLayoutToken); } void diff --git a/js/src/jit/MacroAssembler.cpp b/js/src/jit/MacroAssembler.cpp index 8fea6a88f0ee..aef22f7684dd 100644 --- a/js/src/jit/MacroAssembler.cpp +++ b/js/src/jit/MacroAssembler.cpp @@ -1510,7 +1510,7 @@ void MacroAssembler::generateBailoutTail(Register scratch, Register bailoutInfo) { loadJSContext(scratch); - enterExitFrame(scratch); + enterExitFrame(scratch, scratch); Label baseline; @@ -1572,7 +1572,7 @@ MacroAssembler::generateBailoutTail(Register scratch, Register bailoutInfo) push(Address(bailoutInfo, offsetof(BaselineBailoutInfo, resumeAddr))); // No GC things to mark on the stack, push a bare token. loadJSContext(scratch); - enterFakeExitFrame(scratch, ExitFrameLayoutBareToken); + enterFakeExitFrame(scratch, scratch, ExitFrameLayoutBareToken); // If monitorStub is non-null, handle resumeAddr appropriately. Label noMonitor; @@ -2822,9 +2822,10 @@ MacroAssembler::callWithABI(wasm::BytecodeOffset callOffset, wasm::SymbolicAddre // Exit frame footer. void -MacroAssembler::linkExitFrame(Register cxreg) +MacroAssembler::linkExitFrame(Register cxreg, Register scratch) { - storeStackPtr(Address(cxreg, offsetof(JSContext, jitTop))); + loadPtr(Address(cxreg, JSContext::offsetOfActivation()), scratch); + storeStackPtr(Address(scratch, JitActivation::offsetOfExitFP())); } void diff --git a/js/src/jit/MacroAssembler.h b/js/src/jit/MacroAssembler.h index 26b9a4e9ce7e..4297d499341c 100644 --- a/js/src/jit/MacroAssembler.h +++ b/js/src/jit/MacroAssembler.h @@ -698,22 +698,22 @@ class MacroAssembler : public MacroAssemblerSpecific inline bool hasSelfReference() const; // Push stub code and the VMFunction pointer. - inline void enterExitFrame(Register cxreg, const VMFunction* f = nullptr); + inline void enterExitFrame(Register cxreg, Register scratch, const VMFunction* f = nullptr); // Push an exit frame token to identify which fake exit frame this footer // corresponds to. - inline void enterFakeExitFrame(Register cxreg, enum ExitFrameTokenValues token); + inline void enterFakeExitFrame(Register cxreg, Register scratch, enum ExitFrameTokenValues token); // Push an exit frame token for a native call. - inline void enterFakeExitFrameForNative(Register cxreg, bool isConstructing); + inline void enterFakeExitFrameForNative(Register cxreg, Register scratch, bool isConstructing); // Pop ExitFrame footer in addition to the extra frame. inline void leaveExitFrame(size_t extraFrame = 0); private: - // Save the top of the stack into JSontext::jitTop of the current thread, - // which should be the location of the latest exit frame. - void linkExitFrame(Register cxreg); + // Save the top of the stack into JitActivation::exitFP of the current + // thread, which should be the location of the latest exit frame. + void linkExitFrame(Register cxreg, Register scratch); // Patch the value of PushStubCode with the pointer to the finalized code. void linkSelfReference(JitCode* code); diff --git a/js/src/jit/VMFunctions.cpp b/js/src/jit/VMFunctions.cpp index b7f0e14d563d..37bf0ee0b9d3 100644 --- a/js/src/jit/VMFunctions.cpp +++ b/js/src/jit/VMFunctions.cpp @@ -810,8 +810,8 @@ bool DebugEpilogueOnBaselineReturn(JSContext* cx, BaselineFrame* frame, jsbytecode* pc) { if (!DebugEpilogue(cx, frame, pc, true)) { - // DebugEpilogue popped the frame by updating jitTop, so run the stop event - // here before we enter the exception handler. + // DebugEpilogue popped the frame by updating exitFP, so run the stop + // event here before we enter the exception handler. TraceLoggerThread* logger = TraceLoggerForCurrentThread(cx); TraceLogStopEvent(logger, TraceLogger_Baseline); TraceLogStopEvent(logger, TraceLogger_Scripts); @@ -837,9 +837,8 @@ DebugEpilogue(JSContext* cx, BaselineFrame* frame, jsbytecode* pc, bool ok) frame->setOverridePc(script->lastPC()); if (!ok) { - // Pop this frame by updating jitTop, so that the exception handling + // Pop this frame by updating exitFP, so that the exception handling // code will start at the previous frame. - JitFrameLayout* prefix = frame->framePrefix(); EnsureBareExitFrame(cx, prefix); return false; @@ -1061,6 +1060,14 @@ HandleDebugTrap(JSContext* cx, BaselineFrame* frame, uint8_t* retAddr, bool* mus RootedScript script(cx, frame->script()); jsbytecode* pc = script->baselineScript()->icEntryFromReturnAddress(retAddr).pc(script); + if (*pc == JSOP_DEBUGAFTERYIELD) { + // JSOP_DEBUGAFTERYIELD will set the frame's debuggee flag, but if we + // set a breakpoint there we have to do it now. + MOZ_ASSERT(!frame->isDebuggee()); + if (!DebugAfterYield(cx, frame)) + return false; + } + MOZ_ASSERT(frame->isDebuggee()); MOZ_ASSERT(script->stepModeEnabled() || script->hasBreakpointsAt(pc)); diff --git a/js/src/jit/arm/Trampoline-arm.cpp b/js/src/jit/arm/Trampoline-arm.cpp index b14c4f843b08..9870685a4dc1 100644 --- a/js/src/jit/arm/Trampoline-arm.cpp +++ b/js/src/jit/arm/Trampoline-arm.cpp @@ -288,7 +288,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type) masm.push(Imm32(0)); // Fake return address. // No GC things to mark on the stack, push a bare token. masm.loadJSContext(scratch); - masm.enterFakeExitFrame(scratch, ExitFrameLayoutBareToken); + masm.enterFakeExitFrame(scratch, scratch, ExitFrameLayoutBareToken); masm.push(framePtr); // BaselineFrame masm.push(r0); // jitcode @@ -777,8 +777,8 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) MacroAssembler masm(cx); AllocatableGeneralRegisterSet regs(Register::Codes::WrapperMask); - // Wrapper register set is a superset of Volatile register set. - JS_STATIC_ASSERT((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0); + static_assert((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0, + "Wrapper register set must be a superset of Volatile register set."); // The context is the first argument; r0 is the first argument register. Register cxreg = r0; @@ -795,7 +795,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) masm.pushReturnAddress(); masm.loadJSContext(cxreg); - masm.enterExitFrame(cxreg, &f); + masm.enterExitFrame(cxreg, regs.getAny(), &f); // Save the base of the argument set stored on the stack. Register argsBase = InvalidReg; diff --git a/js/src/jit/arm64/Trampoline-arm64.cpp b/js/src/jit/arm64/Trampoline-arm64.cpp index 6cfd3fa668c5..1592751ce3fe 100644 --- a/js/src/jit/arm64/Trampoline-arm64.cpp +++ b/js/src/jit/arm64/Trampoline-arm64.cpp @@ -190,7 +190,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type) masm.asVIXL().Push(x19, xzr); // Push xzr for a fake return address. // No GC things to mark: push a bare token. masm.loadJSContext(r19); - masm.enterFakeExitFrame(r19, ExitFrameLayoutBareToken); + masm.enterFakeExitFrame(r19, r19, ExitFrameLayoutBareToken); masm.push(BaselineFrameReg, reg_code); @@ -567,8 +567,8 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // the function call. AllocatableGeneralRegisterSet regs(Register::Codes::WrapperMask); - // Wrapper register set is a superset of the Volatile register set. - JS_STATIC_ASSERT((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0); + static_assert((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0, + "Wrapper register set must be a superset of the Volatile register set."); // Unlike on other platforms, it is the responsibility of the VM *callee* to // push the return address, while the caller must ensure that the address @@ -588,7 +588,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // // We're aligned to an exit frame, so link it up. masm.loadJSContext(reg_cx); - masm.enterExitFrame(reg_cx, &f); + masm.enterExitFrame(reg_cx, regs.getAny(), &f); // Save the current stack pointer as the base for copying arguments. Register argsBase = InvalidReg; diff --git a/js/src/jit/mips32/Trampoline-mips32.cpp b/js/src/jit/mips32/Trampoline-mips32.cpp index 7a245f2da9a1..b12ddd185a3e 100644 --- a/js/src/jit/mips32/Trampoline-mips32.cpp +++ b/js/src/jit/mips32/Trampoline-mips32.cpp @@ -255,7 +255,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type) // No GC things to mark, push a bare token. masm.loadJSContext(scratch); - masm.enterFakeExitFrame(scratch, ExitFrameLayoutBareToken); + masm.enterFakeExitFrame(scratch, scratch, ExitFrameLayoutBareToken); masm.reserveStack(2 * sizeof(uintptr_t)); masm.storePtr(framePtr, Address(StackPointer, sizeof(uintptr_t))); // BaselineFrame @@ -738,7 +738,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // We're aligned to an exit frame, so link it up. masm.loadJSContext(cxreg); - masm.enterExitFrame(cxreg, &f); + masm.enterExitFrame(cxreg, regs.getAny(), &f); // Save the base of the argument set stored on the stack. Register argsBase = InvalidReg; diff --git a/js/src/jit/mips64/Trampoline-mips64.cpp b/js/src/jit/mips64/Trampoline-mips64.cpp index 11d7e6b6e3cb..5a047052cb7e 100644 --- a/js/src/jit/mips64/Trampoline-mips64.cpp +++ b/js/src/jit/mips64/Trampoline-mips64.cpp @@ -272,7 +272,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type) // No GC things to mark, push a bare token. masm.loadJSContext(scratch); - masm.enterFakeExitFrame(scratch, ExitFrameLayoutBareToken); + masm.enterFakeExitFrame(scratch, scratch, ExitFrameLayoutBareToken); masm.reserveStack(2 * sizeof(uintptr_t)); masm.storePtr(framePtr, Address(StackPointer, sizeof(uintptr_t))); // BaselineFrame @@ -708,7 +708,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // We're aligned to an exit frame, so link it up. masm.loadJSContext(cxreg); - masm.enterExitFrame(cxreg, &f); + masm.enterExitFrame(cxreg, regs.getAny(), &f); // Save the base of the argument set stored on the stack. Register argsBase = InvalidReg; diff --git a/js/src/jit/x64/Trampoline-x64.cpp b/js/src/jit/x64/Trampoline-x64.cpp index 4e1a42a2faa7..2b1a1dd35496 100644 --- a/js/src/jit/x64/Trampoline-x64.cpp +++ b/js/src/jit/x64/Trampoline-x64.cpp @@ -231,7 +231,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type) masm.push(Imm32(0)); // Fake return address. // No GC things to mark, push a bare token. masm.loadJSContext(scratch); - masm.enterFakeExitFrame(scratch, ExitFrameLayoutBareToken); + masm.enterFakeExitFrame(scratch, scratch, ExitFrameLayoutBareToken); regs.add(valuesSize); @@ -667,8 +667,8 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // the function call. AllocatableGeneralRegisterSet regs(Register::Codes::WrapperMask); - // Wrapper register set is a superset of Volatile register set. - JS_STATIC_ASSERT((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0); + static_assert((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0, + "Wrapper register set must be a superset of Volatile register set"); // The context is the first argument. Register cxreg = IntArgReg0; @@ -682,7 +682,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // // We're aligned to an exit frame, so link it up. masm.loadJSContext(cxreg); - masm.enterExitFrame(cxreg, &f); + masm.enterExitFrame(cxreg, regs.getAny(), &f); // Save the current stack pointer as the base for copying arguments. Register argsBase = InvalidReg; diff --git a/js/src/jit/x86/Trampoline-x86.cpp b/js/src/jit/x86/Trampoline-x86.cpp index c225d6f5ebff..b3879caacbee 100644 --- a/js/src/jit/x86/Trampoline-x86.cpp +++ b/js/src/jit/x86/Trampoline-x86.cpp @@ -226,7 +226,7 @@ JitRuntime::generateEnterJIT(JSContext* cx, EnterJitType type) masm.push(Imm32(0)); // No GC things to mark on the stack, push a bare token. masm.loadJSContext(scratch); - masm.enterFakeExitFrame(scratch, ExitFrameLayoutBareToken); + masm.enterFakeExitFrame(scratch, scratch, ExitFrameLayoutBareToken); masm.push(framePtr); masm.push(jitcode); @@ -697,8 +697,8 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // the function call. AllocatableGeneralRegisterSet regs(Register::Codes::WrapperMask); - // Wrapper register set is a superset of Volatile register set. - JS_STATIC_ASSERT((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0); + static_assert((Register::Codes::VolatileMask & ~Register::Codes::WrapperMask) == 0, + "Wrapper register set must be a superset of Volatile register set."); // The context is the first argument. Register cxreg = regs.takeAny(); @@ -711,7 +711,7 @@ JitRuntime::generateVMWrapper(JSContext* cx, const VMFunction& f) // // We're aligned to an exit frame, so link it up. masm.loadJSContext(cxreg); - masm.enterExitFrame(cxreg, &f); + masm.enterExitFrame(cxreg, regs.getAny(), &f); // Save the current stack pointer as the base for copying arguments. Register argsBase = InvalidReg; diff --git a/js/src/jsarray.cpp b/js/src/jsarray.cpp index 2a77a16f08a6..85bae218a626 100644 --- a/js/src/jsarray.cpp +++ b/js/src/jsarray.cpp @@ -2504,15 +2504,17 @@ js::array_unshift(JSContext* cx, unsigned argc, Value* vp) NativeObject* nobj = &obj->as(); if (nobj->is() && !nobj->as().lengthIsWritable()) break; - DenseElementResult result = nobj->ensureDenseElements(cx, uint32_t(length), args.length()); - if (result != DenseElementResult::Success) { - if (result == DenseElementResult::Failure) - return false; - MOZ_ASSERT(result == DenseElementResult::Incomplete); - break; + if (!nobj->tryUnshiftDenseElements(args.length())) { + DenseElementResult result = nobj->ensureDenseElements(cx, uint32_t(length), args.length()); + if (result != DenseElementResult::Success) { + if (result == DenseElementResult::Failure) + return false; + MOZ_ASSERT(result == DenseElementResult::Incomplete); + break; + } + if (length > 0) + nobj->moveDenseElements(args.length(), 0, uint32_t(length)); } - if (length > 0) - nobj->moveDenseElements(args.length(), 0, uint32_t(length)); for (uint32_t i = 0; i < args.length(); i++) nobj->setDenseElementWithType(cx, i, args[i]); optimized = true; diff --git a/js/src/jsatom.cpp b/js/src/jsatom.cpp index 02ead72d1a85..867bd0bc5048 100644 --- a/js/src/jsatom.cpp +++ b/js/src/jsatom.cpp @@ -170,6 +170,19 @@ JSRuntime::finishAtoms() emptyString = nullptr; } +static inline void +TracePinnedAtoms(JSTracer* trc, const AtomSet& atoms) +{ + for (auto r = atoms.all(); !r.empty(); r.popFront()) { + const AtomStateEntry& entry = r.front(); + if (entry.isPinned()) { + JSAtom* atom = entry.asPtrUnbarriered(); + TraceRoot(trc, &atom, "interned_atom"); + MOZ_ASSERT(entry.asPtrUnbarriered() == atom); + } + } +} + void js::TraceAtoms(JSTracer* trc, AutoLockForExclusiveAccess& lock) { @@ -178,15 +191,9 @@ js::TraceAtoms(JSTracer* trc, AutoLockForExclusiveAccess& lock) if (rt->atomsAreFinished()) return; - for (AtomSet::Enum e(rt->atoms(lock)); !e.empty(); e.popFront()) { - const AtomStateEntry& entry = e.front(); - if (!entry.isPinned()) - continue; - - JSAtom* atom = entry.asPtrUnbarriered(); - TraceRoot(trc, &atom, "interned_atom"); - MOZ_ASSERT(entry.asPtrUnbarriered() == atom); - } + TracePinnedAtoms(trc, rt->atoms(lock)); + if (rt->atomsAddedWhileSweeping()) + TracePinnedAtoms(trc, *rt->atomsAddedWhileSweeping()); } void @@ -250,6 +257,17 @@ JSRuntime::transformToPermanentAtoms(JSContext* cx) return true; } +static inline AtomSet::Ptr +LookupAtomState(JSRuntime* rt, const AtomHasher::Lookup& lookup) +{ + MOZ_ASSERT(rt->currentThreadHasExclusiveAccess()); + + AtomSet::Ptr p = rt->unsafeAtoms().lookup(lookup); // Safe because we hold the lock. + if (!p && rt->atomsAddedWhileSweeping()) + p = rt->atomsAddedWhileSweeping()->lookup(lookup); + return p; +} + bool AtomIsPinned(JSContext* cx, JSAtom* atom) { @@ -267,7 +285,7 @@ AtomIsPinned(JSContext* cx, JSAtom* atom) AutoLockForExclusiveAccess lock(cx); - p = cx->runtime()->atoms(lock).lookup(lookup); + p = LookupAtomState(cx->runtime(), lookup); if (!p) return false; @@ -285,7 +303,7 @@ AtomIsPinnedInRuntime(JSRuntime* rt, JSAtom* atom) AtomHasher::Lookup lookup(atom); - AtomSet::Ptr p = rt->unsafeAtoms().lookup(lookup); + AtomSet::Ptr p = LookupAtomState(rt, lookup); MOZ_ASSERT(p); return p->isPinned(); @@ -362,7 +380,7 @@ AtomizeAndCopyChars(JSContext* cx, const CharT* tbchars, size_t length, PinningB // is dead. if (!p) { if (AtomSet::AddPtr p2 = atoms.lookupForAdd(lookup)) { - JSAtom* atom = p2->asPtr(cx); + JSAtom* atom = p2->asPtrUnbarriered(); if (!IsAboutToBeFinalizedUnbarriered(&atom)) p = p2; } @@ -400,7 +418,8 @@ AtomizeAndCopyChars(JSContext* cx, const CharT* tbchars, size_t length, PinningB // We have held the lock since looking up p, and the operations we've done // since then can't GC; therefore the atoms table has not been modified and // p is still valid. - if (!atoms.add(p, AtomStateEntry(atom, bool(pin)))) { + AtomSet* addSet = atomsAddedWhileSweeping ? atomsAddedWhileSweeping : &atoms; + if (!addSet->add(p, AtomStateEntry(atom, bool(pin)))) { ReportOutOfMemory(cx); /* SystemAllocPolicy does not report OOM. */ return nullptr; } @@ -440,7 +459,7 @@ js::AtomizeString(JSContext* cx, JSString* str, AutoLockForExclusiveAccess lock(cx); - p = cx->atoms(lock).lookup(lookup); + p = LookupAtomState(cx->runtime(), lookup); MOZ_ASSERT(p); /* Non-static atom must exist in atom state set. */ MOZ_ASSERT(p->asPtrUnbarriered() == &atom); MOZ_ASSERT(pin == PinAtom); diff --git a/js/src/jscntxt.cpp b/js/src/jscntxt.cpp index affb7b5e9307..19d956923310 100644 --- a/js/src/jscntxt.cpp +++ b/js/src/jscntxt.cpp @@ -1392,7 +1392,6 @@ JSContext::JSContext(JSRuntime* runtime, const JS::ContextOptions& options) handlingJitInterrupt_(false), osrTempData_(nullptr), ionReturnOverride_(MagicValue(JS_ARG_POISON)), - jitTop(nullptr), jitStackLimit(UINTPTR_MAX), jitStackLimitNoInterrupt(UINTPTR_MAX), getIncumbentGlobalCallback(nullptr), diff --git a/js/src/jscntxt.h b/js/src/jscntxt.h index 29eef845d84e..2b262a6a5bda 100644 --- a/js/src/jscntxt.h +++ b/js/src/jscntxt.h @@ -309,12 +309,6 @@ struct JSContext : public JS::RootingContext, JSRuntime* runtime() { return runtime_; } - static size_t offsetOfActivation() { - return offsetof(JSContext, activation_); - } - static size_t offsetOfProfilingActivation() { - return offsetof(JSContext, profilingActivation_); - } static size_t offsetOfCompartment() { return offsetof(JSContext, compartment_); } @@ -388,12 +382,19 @@ struct JSContext : public JS::RootingContext, js::Activation* activation() const { return activation_; } + static size_t offsetOfActivation() { + return offsetof(JSContext, activation_); + } + js::Activation* profilingActivation() const { return profilingActivation_; } void* addressOfProfilingActivation() { return (void*) &profilingActivation_; } + static size_t offsetOfProfilingActivation() { + return offsetof(JSContext, profilingActivation_); + } private: /* Space for interpreter frames. */ @@ -910,12 +911,6 @@ struct JSContext : public JS::RootingContext, ionReturnOverride_ = v; } - /* - * If Baseline or Ion code is on the stack, and has called into C++, this - * will be aligned to an exit frame. - */ - js::ThreadLocalData jitTop; - mozilla::Atomic jitStackLimit; // Like jitStackLimit, but not reset to trigger interrupts. diff --git a/js/src/jsfun.cpp b/js/src/jsfun.cpp index eb601d9eeb4c..02cf001f7243 100644 --- a/js/src/jsfun.cpp +++ b/js/src/jsfun.cpp @@ -77,16 +77,16 @@ fun_enumerate(JSContext* cx, HandleObject obj) if (!obj->isBoundFunction() && !obj->as().isArrow()) { id = NameToId(cx->names().prototype); - if (!HasProperty(cx, obj, id, &found)) + if (!HasOwnProperty(cx, obj, id, &found)) return false; } id = NameToId(cx->names().length); - if (!HasProperty(cx, obj, id, &found)) + if (!HasOwnProperty(cx, obj, id, &found)) return false; id = NameToId(cx->names().name); - if (!HasProperty(cx, obj, id, &found)) + if (!HasOwnProperty(cx, obj, id, &found)) return false; return true; @@ -1394,13 +1394,18 @@ JSFunction::getUnresolvedName(JSContext* cx, HandleFunction fun, MutableHandleAt // Bound functions are never unnamed. MOZ_ASSERT(name); - StringBuffer sb(cx); - if (!sb.append(cx->names().boundWithSpace) || !sb.append(name)) - return false; + JSAtom* boundName; + if (name->length() > 0) { + StringBuffer sb(cx); + if (!sb.append(cx->names().boundWithSpace) || !sb.append(name)) + return false; - JSAtom* boundName = sb.finishAtom(); - if (!boundName) - return false; + boundName = sb.finishAtom(); + if (!boundName) + return false; + } else { + boundName = cx->names().boundWithSpace; + } v.set(boundName); return true; diff --git a/js/src/jsgc.cpp b/js/src/jsgc.cpp index 5607d7a8ad43..d869c75e26e1 100644 --- a/js/src/jsgc.cpp +++ b/js/src/jsgc.cpp @@ -991,9 +991,14 @@ GCRuntime::setZeal(uint8_t zeal, uint32_t frequency) if (verifyPreData) VerifyBarriers(rt, PreBarrierVerifier); - if (zeal == 0 && hasZealMode(ZealMode::GenerationalGC)) { - evictNursery(JS::gcreason::DEBUG_GC); - nursery().leaveZealMode(); + if (zeal == 0) { + if (hasZealMode(ZealMode::GenerationalGC)) { + evictNursery(JS::gcreason::DEBUG_GC); + nursery().leaveZealMode(); + } + + if (isIncrementalGCInProgress()) + finishGC(JS::gcreason::DEBUG_GC); } ZealMode zealMode = ZealMode(zeal); @@ -5276,6 +5281,9 @@ GCRuntime::beginSweepingSweepGroup() joinTask(task, PhaseKind::SWEEP_WEAK_CACHES, lock); } + if (sweepingAtoms) + startSweepingAtomsTable(); + // Queue all GC things in all zones for sweeping, either on the foreground // or on the background thread. @@ -5493,6 +5501,27 @@ GCRuntime::mergeSweptObjectArenas(GCRuntime* gc, FreeOp* fop, Zone* zone, SliceB return Finished; } +void +GCRuntime::startSweepingAtomsTable() +{ + auto& maybeAtoms = maybeAtomsToSweep.ref(); + MOZ_ASSERT(maybeAtoms.isNothing()); + + AtomSet* atomsTable = rt->atomsForSweeping(); + if (!atomsTable) + return; + + // Create a secondary table to hold new atoms added while we're sweeping + // the main table incrementally. + if (!rt->createAtomsAddedWhileSweepingTable()) { + atomsTable->sweep(); + return; + } + + // Initialize remaining atoms to sweep. + maybeAtoms.emplace(*atomsTable); +} + /* static */ IncrementalProgress GCRuntime::sweepAtomsTable(GCRuntime* gc, FreeOp* fop, Zone* zone, SliceBudget& budget, AllocKind kind) @@ -5503,33 +5532,22 @@ GCRuntime::sweepAtomsTable(GCRuntime* gc, FreeOp* fop, Zone* zone, SliceBudget& return gc->sweepAtomsTable(budget); } + IncrementalProgress GCRuntime::sweepAtomsTable(SliceBudget& budget) { gcstats::AutoPhase ap(stats(), gcstats::PhaseKind::SWEEP_ATOMS_TABLE); auto& maybeAtoms = maybeAtomsToSweep.ref(); - MOZ_ASSERT_IF(maybeAtoms.isSome(), !maybeAtoms.ref().empty()); - - AtomSet* atomsTable = rt->atomsForSweeping(); - if (!atomsTable) + if (!maybeAtoms) return Finished; - if (maybeAtoms.isNothing()) { - // Create a secondary table to hold new atoms added while we're sweeping - // the main table incrementally. - if (!rt->createAtomsAddedWhileSweepingTable()) { - atomsTable->sweep(); - return Finished; - } - - // Initialize remaining atoms to sweep. - maybeAtoms.emplace(*atomsTable); - } + MOZ_ASSERT(rt->atomsAddedWhileSweeping()); // Sweep the table incrementally until we run out of work or budget. auto& atomsToSweep = *maybeAtoms; while (!atomsToSweep.empty()) { + budget.step(); if (budget.isOverBudget()) return NotFinished; @@ -5541,6 +5559,8 @@ GCRuntime::sweepAtomsTable(SliceBudget& budget) // Add any new atoms from the secondary table. AutoEnterOOMUnsafeRegion oomUnsafe; + AtomSet* atomsTable = rt->atomsForSweeping(); + MOZ_ASSERT(atomsTable); for (auto r = rt->atomsAddedWhileSweeping()->all(); !r.empty(); r.popFront()) { if (!atomsTable->putNew(AtomHasher::Lookup(r.front().asPtrUnbarriered()), r.front())) oomUnsafe.crash("Adding atom from secondary table after sweep"); diff --git a/js/src/jsscript.cpp b/js/src/jsscript.cpp index d5ee44127b4b..2ea5ced06d47 100644 --- a/js/src/jsscript.cpp +++ b/js/src/jsscript.cpp @@ -2065,7 +2065,9 @@ ScriptSource::xdrEncodeFunction(JSContext* cx, HandleFunction fun, HandleScriptS bool ScriptSource::xdrFinalizeEncoder(JS::TranscodeBuffer& buffer) { - MOZ_ASSERT(hasEncoder()); + if (!hasEncoder()) + return false; + auto cleanup = mozilla::MakeScopeExit([&] { xdrEncoder_.reset(nullptr); }); diff --git a/js/src/tests/ecma_6/Proxy/proxy-proto-lazy-props.js b/js/src/tests/ecma_6/Proxy/proxy-proto-lazy-props.js new file mode 100644 index 000000000000..fba89eecd500 --- /dev/null +++ b/js/src/tests/ecma_6/Proxy/proxy-proto-lazy-props.js @@ -0,0 +1,63 @@ +function makeProxyPrototype(target) { + return Object.setPrototypeOf(target, new Proxy({}, new Proxy({ + getPrototypeOf() { + return null; + }, + ownKeys() { + return []; + }, + get(t, pk, r) { + // Handle the non-standard __iterator__ hook. + if (pk !== "__iterator__") + throw new Error("Unexpected [[Get]]: " + String(pk)); + } + }, { + get(t, pk, r) { + if (pk in t) + return Reflect.get(t, pk, r); + throw new Error("Unexpected trap called: " + pk); + } + }))); +} + +function enumerateMappedArgs(x) { + var a = makeProxyPrototype(arguments); + + // Delete all lazy properties and ensure no [[Has]] trap is called for them + // on the prototype chain. + delete a.length; + delete a.callee; + delete a[Symbol.iterator]; + delete a[0]; + + for (var k in a); +} +enumerateMappedArgs(0); + +function enumerateUnmappedArgs(x) { + "use strict"; + var a = makeProxyPrototype(arguments); + + delete a.length; + // delete a.callee; // .callee is non-configurable + delete a[Symbol.iterator]; + delete a[0]; + + for (var k in a); +} +enumerateUnmappedArgs(0); + +function enumerateFunction() { + var f = makeProxyPrototype(function named() {}); + + // delete f.prototype; // .prototype is non-configurable + delete f.length; + delete f.name; + + for (var k in f); +} +enumerateFunction(); + + +if (typeof reportCompare === "function") + reportCompare(0, 0); diff --git a/js/src/tests/ecma_6/RegExp/replace-compile-elembase.js b/js/src/tests/ecma_6/RegExp/replace-compile-elembase.js new file mode 100644 index 000000000000..591d27cfe9b4 --- /dev/null +++ b/js/src/tests/ecma_6/RegExp/replace-compile-elembase.js @@ -0,0 +1,22 @@ +(function() { + var rx = /a/g; + var b = { + get a() { + rx.compile("b"); + return "A"; + } + }; + + // Replacer function which is applicable for the elem-base optimization in + // RegExp.prototype.@@replace. + function replacer(a) { + return b[a]; + } + + var result = rx[Symbol.replace]("aaa", replacer); + + assertEq(result, "AAA"); +})(); + +if (typeof reportCompare === "function") + reportCompare(true, true); diff --git a/js/src/vm/ArgumentsObject.cpp b/js/src/vm/ArgumentsObject.cpp index 93c7ac622637..5a770bbd9fb6 100644 --- a/js/src/vm/ArgumentsObject.cpp +++ b/js/src/vm/ArgumentsObject.cpp @@ -510,7 +510,7 @@ MappedArgSetter(JSContext* cx, HandleObject obj, HandleId id, MutableHandleValue /* * For simplicity we use delete/define to replace the property with a * simple data property. Note that we rely on ArgumentsObject::obj_delProperty - * to clear the corresponding reserved slot so the GC can collect its value. + * to set the corresponding override-bit. * Note also that we must define the property instead of setting it in case * the user has changed the prototype to an object that has a setter for * this id. @@ -529,10 +529,37 @@ DefineArgumentsIterator(JSContext* cx, Handle argsobj) RootedValue val(cx); if (!GlobalObject::getSelfHostedFunction(cx, cx->global(), shName, name, 0, &val)) return false; - return NativeDefineProperty(cx, argsobj, iteratorId, val, nullptr, nullptr, JSPROP_RESOLVING); } +/* static */ bool +ArgumentsObject::reifyLength(JSContext* cx, Handle obj) +{ + if (obj->hasOverriddenLength()) + return true; + + RootedId id(cx, NameToId(cx->names().length)); + RootedValue val(cx, Int32Value(obj->initialLength())); + if (!NativeDefineProperty(cx, obj, id, val, nullptr, nullptr, JSPROP_RESOLVING)) + return false; + + obj->markLengthOverridden(); + return true; +} + +/* static */ bool +ArgumentsObject::reifyIterator(JSContext* cx, Handle obj) +{ + if (obj->hasOverriddenIterator()) + return true; + + if (!DefineArgumentsIterator(cx, obj)) + return false; + + obj->markIteratorOverridden(); + return true; +} + /* static */ bool MappedArgumentsObject::obj_resolve(JSContext* cx, HandleObject obj, HandleId id, bool* resolvedp) { @@ -586,20 +613,20 @@ MappedArgumentsObject::obj_enumerate(JSContext* cx, HandleObject obj) // Trigger reflection. id = NameToId(cx->names().length); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; id = NameToId(cx->names().callee); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; id = SYMBOL_TO_JSID(cx->wellKnownSymbols().iterator); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; for (unsigned i = 0; i < argsobj->initialLength(); i++) { id = INT_TO_JSID(i); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; } @@ -714,7 +741,7 @@ UnmappedArgSetter(JSContext* cx, HandleObject obj, HandleId id, MutableHandleVal /* * For simplicity we use delete/define to replace the property with a * simple data property. Note that we rely on ArgumentsObject::obj_delProperty - * to clear the corresponding reserved slot so the GC can collect its value. + * to set the corresponding override-bit. */ ObjectOpResult ignored; return NativeDeleteProperty(cx, argsobj, id, ignored) && @@ -776,20 +803,20 @@ UnmappedArgumentsObject::obj_enumerate(JSContext* cx, HandleObject obj) // Trigger reflection. id = NameToId(cx->names().length); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; id = NameToId(cx->names().callee); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; id = SYMBOL_TO_JSID(cx->wellKnownSymbols().iterator); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; for (unsigned i = 0; i < argsobj->initialLength(); i++) { id = INT_TO_JSID(i); - if (!HasProperty(cx, argsobj, id, &found)) + if (!HasOwnProperty(cx, argsobj, id, &found)) return false; } diff --git a/js/src/vm/ArgumentsObject.h b/js/src/vm/ArgumentsObject.h index 482f2b3ca4d5..d0e645b3a70d 100644 --- a/js/src/vm/ArgumentsObject.h +++ b/js/src/vm/ArgumentsObject.h @@ -52,12 +52,10 @@ class RareArgumentsData } }; -/* - * ArgumentsData stores the initial indexed arguments provided to the - * corresponding and that function itself. It is used to store arguments[i] - * and arguments.callee -- up until the corresponding property is modified, - * when the relevant value is flagged to memorialize the modification. - */ +// ArgumentsData stores the initial indexed arguments provided to a function +// call. It is used to store arguments[i] -- up until the corresponding +// property is modified, when the relevant value is flagged to memorialize the +// modification. struct ArgumentsData { /* @@ -235,6 +233,11 @@ class ArgumentsObject : public NativeObject setFixedSlot(INITIAL_LENGTH_SLOT, Int32Value(v)); } + /* + * Create the default "length" property and set LENGTH_OVERRIDDEN_BIT. + */ + static bool reifyLength(JSContext* cx, Handle obj); + /* True iff arguments[@@iterator] has been assigned or its attributes * changed. */ bool hasOverriddenIterator() const { @@ -247,6 +250,11 @@ class ArgumentsObject : public NativeObject setFixedSlot(INITIAL_LENGTH_SLOT, Int32Value(v)); } + /* + * Create the default @@iterator property and set ITERATOR_OVERRIDDEN_BIT. + */ + static bool reifyIterator(JSContext* cx, Handle obj); + /* True iff any element has been assigned or its attributes * changed. */ bool hasOverriddenElement() const { diff --git a/js/src/vm/GeckoProfiler.cpp b/js/src/vm/GeckoProfiler.cpp index 498678441bf3..38cc3c2dc349 100644 --- a/js/src/vm/GeckoProfiler.cpp +++ b/js/src/vm/GeckoProfiler.cpp @@ -61,6 +61,23 @@ GeckoProfiler::setEventMarker(void (*fn)(const char*)) eventMarker_ = fn; } +/* Get a pointer to the top-most profiling frame, given the exit frame pointer. */ +static void* +GetTopProfilingJitFrame(Activation* act) +{ + if (!act || !act->isJit()) + return nullptr; + + // For null exitFrame, there is no previous exit frame, just return. + uint8_t* exitFP = act->asJit()->exitFP(); + if (!exitFP) + return nullptr; + + jit::JitProfilingFrameIterator iter(exitFP); + MOZ_ASSERT(!iter.done()); + return iter.fp(); +} + bool GeckoProfiler::enable(bool enabled) { @@ -119,14 +136,16 @@ GeckoProfiler::enable(bool enabled) if (target.context()->jitActivation) { // Walk through all activations, and set their lastProfilingFrame appropriately. if (enabled) { - void* lastProfilingFrame = GetTopProfilingJitFrame(target.context()->jitTop); + Activation* act = target.context()->activation(); + void* lastProfilingFrame = GetTopProfilingJitFrame(act); + jit::JitActivation* jitActivation = target.context()->jitActivation; while (jitActivation) { jitActivation->setLastProfilingFrame(lastProfilingFrame); jitActivation->setLastProfilingCallSite(nullptr); - lastProfilingFrame = GetTopProfilingJitFrame(jitActivation->prevJitTop()); jitActivation = jitActivation->prevJitActivation(); + lastProfilingFrame = GetTopProfilingJitFrame(jitActivation); } } else { jit::JitActivation* jitActivation = target.context()->jitActivation; @@ -544,15 +563,3 @@ AutoSuppressProfilerSampling::~AutoSuppressProfilerSampling() if (previouslyEnabled_) cx_->enableProfilerSampling(); } - -void* -js::GetTopProfilingJitFrame(uint8_t* exitFramePtr) -{ - // For null exitFrame, there is no previous exit frame, just return. - if (!exitFramePtr) - return nullptr; - - jit::JitProfilingFrameIterator iter(exitFramePtr); - MOZ_ASSERT(!iter.done()); - return iter.fp(); -} diff --git a/js/src/vm/GeckoProfiler.h b/js/src/vm/GeckoProfiler.h index 5991e5f55b10..80cb4071441e 100644 --- a/js/src/vm/GeckoProfiler.h +++ b/js/src/vm/GeckoProfiler.h @@ -294,10 +294,6 @@ class GeckoProfilerInstrumentation void disable() { profiler_ = nullptr; } }; - -/* Get a pointer to the top-most profiling frame, given the exit frame pointer. */ -void* GetTopProfilingJitFrame(uint8_t* exitFramePtr); - } /* namespace js */ #endif /* vm_GeckoProfiler_h */ diff --git a/js/src/vm/NativeObject-inl.h b/js/src/vm/NativeObject-inl.h index 4bbde4795414..c7dcd755e77f 100644 --- a/js/src/vm/NativeObject-inl.h +++ b/js/src/vm/NativeObject-inl.h @@ -181,6 +181,14 @@ NativeObject::tryShiftDenseElements(uint32_t count) return false; } + shiftDenseElementsUnchecked(count); + return true; +} + +inline void +NativeObject::shiftDenseElementsUnchecked(uint32_t count) +{ + ObjectElements* header = getElementsHeader(); MOZ_ASSERT(count > 0); MOZ_ASSERT(count < header->initializedLength); @@ -195,7 +203,6 @@ NativeObject::tryShiftDenseElements(uint32_t count) elements_ += count; ObjectElements* newHeader = getElementsHeader(); memmove(newHeader, header, sizeof(ObjectElements)); - return true; } inline void diff --git a/js/src/vm/NativeObject.cpp b/js/src/vm/NativeObject.cpp index d82f115fae69..82b601b09f9a 100644 --- a/js/src/vm/NativeObject.cpp +++ b/js/src/vm/NativeObject.cpp @@ -749,6 +749,87 @@ NativeObject::maybeMoveShiftedElements() moveShiftedElements(); } +bool +NativeObject::tryUnshiftDenseElements(uint32_t count) +{ + MOZ_ASSERT(count > 0); + + ObjectElements* header = getElementsHeader(); + uint32_t numShifted = header->numShiftedElements(); + + if (count > numShifted) { + // We need more elements than are easily available. Try to make space + // for more elements than we need (and shift the remaining ones) so + // that unshifting more elements later will be fast. + + // Don't bother reserving elements if the number of elements is small. + // Note that there's no technical reason for using this particular + // limit. + if (header->initializedLength <= 10 || + header->isCopyOnWrite() || + header->isFrozen() || + header->hasNonwritableArrayLength() || + MOZ_UNLIKELY(count > ObjectElements::MaxShiftedElements)) + { + return false; + } + + MOZ_ASSERT(header->capacity >= header->initializedLength); + uint32_t unusedCapacity = header->capacity - header->initializedLength; + + // Determine toShift, the number of extra elements we want to make + // available. + uint32_t toShift = count - numShifted; + MOZ_ASSERT(toShift <= ObjectElements::MaxShiftedElements, + "count <= MaxShiftedElements so toShift <= MaxShiftedElements"); + + // Give up if we need to allocate more elements. + if (toShift > unusedCapacity) + return false; + + // Move more elements than we need, so that other unshift calls will be + // fast. We just have to make sure we don't exceed unusedCapacity. + toShift = Min(toShift + unusedCapacity / 2, unusedCapacity); + + // Ensure |numShifted + toShift| does not exceed MaxShiftedElements. + if (numShifted + toShift > ObjectElements::MaxShiftedElements) + toShift = ObjectElements::MaxShiftedElements - numShifted; + + MOZ_ASSERT(count <= numShifted + toShift); + MOZ_ASSERT(numShifted + toShift <= ObjectElements::MaxShiftedElements); + MOZ_ASSERT(toShift <= unusedCapacity); + + // Now move/unshift the elements. + uint32_t initLen = header->initializedLength; + setDenseInitializedLength(initLen + toShift); + for (uint32_t i = 0; i < toShift; i++) + initDenseElement(initLen + i, UndefinedValue()); + moveDenseElements(toShift, 0, initLen); + + // Shift the elements we just prepended. + shiftDenseElementsUnchecked(toShift); + + // We can now fall-through to the fast path below. + header = getElementsHeader(); + MOZ_ASSERT(header->numShiftedElements() == numShifted + toShift); + + numShifted = header->numShiftedElements(); + MOZ_ASSERT(count <= numShifted); + } + + elements_ -= count; + ObjectElements* newHeader = getElementsHeader(); + memmove(newHeader, header, sizeof(ObjectElements)); + + newHeader->unshiftShiftedElements(count); + + // Initialize to |undefined| to ensure pre-barriers don't see garbage. + for (uint32_t i = 0; i < count; i++) + initDenseElement(i, UndefinedValue()); + + return true; +} + // Given a requested capacity (in elements) and (potentially) the length of an // array for which elements are being allocated, compute an actual allocation // amount (in elements). (Allocation amounts include space for an @@ -1525,21 +1606,26 @@ js::NativeDefineProperty(JSContext* cx, HandleNativeObject obj, HandleId id, return DefineTypedArrayElement(cx, obj, index, desc_, result); } } else if (obj->is()) { + Rooted argsobj(cx, &obj->as()); if (id == NameToId(cx->names().length)) { - // Either we are resolving the .length property on this object, or - // redefining it. In the latter case only, we must set a bit. To - // distinguish the two cases, we note that when resolving, the - // JSPROP_RESOLVING mask is set; whereas the first time it is - // redefined, it isn't set. - if ((desc_.attributes() & JSPROP_RESOLVING) == 0) - obj->as().markLengthOverridden(); + // Either we are resolving the .length property on this object, + // or redefining it. In the latter case only, we must reify the + // property. To distinguish the two cases, we note that when + // resolving, the JSPROP_RESOLVING mask is set; whereas the first + // time it is redefined, it isn't set. + if ((desc_.attributes() & JSPROP_RESOLVING) == 0) { + if (!ArgumentsObject::reifyLength(cx, argsobj)) + return false; + } } else if (JSID_IS_SYMBOL(id) && JSID_TO_SYMBOL(id) == cx->wellKnownSymbols().iterator) { // Do same thing as .length for [@@iterator]. - if ((desc_.attributes() & JSPROP_RESOLVING) == 0) - obj->as().markIteratorOverridden(); + if ((desc_.attributes() & JSPROP_RESOLVING) == 0) { + if (!ArgumentsObject::reifyIterator(cx, argsobj)) + return false; + } } else if (JSID_IS_INT(id)) { if ((desc_.attributes() & JSPROP_RESOLVING) == 0) - obj->as().markElementOverridden(); + argsobj->markElementOverridden(); } } diff --git a/js/src/vm/NativeObject.h b/js/src/vm/NativeObject.h index fd67997c17ce..0fa08ee6c0ec 100644 --- a/js/src/vm/NativeObject.h +++ b/js/src/vm/NativeObject.h @@ -283,6 +283,16 @@ class ObjectElements capacity -= count; initializedLength -= count; } + void unshiftShiftedElements(uint32_t count) { + MOZ_ASSERT(count > 0); + MOZ_ASSERT(!(flags & (NONWRITABLE_ARRAY_LENGTH | FROZEN | COPY_ON_WRITE))); + uint32_t numShifted = numShiftedElements(); + MOZ_ASSERT(count <= numShifted); + numShifted -= count; + flags = (numShifted << NumShiftedElementsShift) | (flags & FlagsMask); + capacity += count; + initializedLength += count; + } void clearShiftedElements() { flags &= FlagsMask; MOZ_ASSERT(numShiftedElements() == 0); @@ -955,6 +965,8 @@ class NativeObject : public ShapedObject getSlotAddressUnchecked(i)->HeapSlot::~HeapSlot(); } + inline void shiftDenseElementsUnchecked(uint32_t count); + public: static bool rollbackProperties(JSContext* cx, HandleNativeObject obj, uint32_t slotSpan); @@ -1074,6 +1086,9 @@ class NativeObject : public ShapedObject // Try to shift |count| dense elements, see the "Shifted elements" comment. inline bool tryShiftDenseElements(uint32_t count); + // Try to make space for |count| dense elements at the start of the array. + bool tryUnshiftDenseElements(uint32_t count); + // Move the elements header and all shifted elements to the start of the // allocated elements space, so that numShiftedElements is 0 afterwards. void moveShiftedElements(); diff --git a/js/src/vm/Stack.cpp b/js/src/vm/Stack.cpp index 6edb73e3bbe8..235691a8b5a3 100644 --- a/js/src/vm/Stack.cpp +++ b/js/src/vm/Stack.cpp @@ -1019,7 +1019,7 @@ FrameIter::updatePcQuadratic() jit::BaselineFrame* frame = data_.jitFrames_.baselineFrame(); jit::JitActivation* activation = data_.activations_->asJit(); - // ActivationIterator::jitTop_ may be invalid, so create a new + // activation's exitFP may be invalid, so create a new // activation iterator. data_.activations_ = ActivationIterator(data_.cx_); while (data_.activations_.activation() != activation) @@ -1405,7 +1405,7 @@ ActivationEntryMonitor::ActivationEntryMonitor(JSContext* cx, jit::CalleeToken e jit::JitActivation::JitActivation(JSContext* cx, bool active) : Activation(cx, Jit), - prevJitTop_(cx->jitTop), + exitFP_(nullptr), prevJitActivation_(cx->jitActivation), active_(active), rematerializedFrames_(nullptr), @@ -1425,11 +1425,8 @@ jit::JitActivation::~JitActivation() if (active_) { if (isProfiling()) unregisterProfiling(); - - cx_->jitTop = prevJitTop_; cx_->jitActivation = prevJitActivation_; } else { - MOZ_ASSERT(cx_->jitTop == prevJitTop_); MOZ_ASSERT(cx_->jitActivation == prevJitActivation_); } @@ -1444,13 +1441,6 @@ jit::JitActivation::~JitActivation() js_delete(rematerializedFrames_); } -bool -jit::JitActivation::isProfiling() const -{ - // All JitActivations can be profiled. - return true; -} - void jit::JitActivation::setBailoutData(jit::BailoutFrameInfo* bailoutData) { @@ -1478,18 +1468,14 @@ jit::JitActivation::setActive(JSContext* cx, bool active) if (active) { *((volatile bool*) active_) = true; - MOZ_ASSERT(prevJitTop_ == cx->jitTop); MOZ_ASSERT(prevJitActivation_ == cx->jitActivation); cx->jitActivation = this; registerProfiling(); - } else { unregisterProfiling(); - cx->jitTop = prevJitTop_; cx->jitActivation = prevJitActivation_; - *((volatile bool*) active_) = false; } } @@ -1761,8 +1747,7 @@ Activation::unregisterProfiling() } ActivationIterator::ActivationIterator(JSContext* cx) - : jitTop_(cx->jitTop) - , activation_(cx->activation_) + : activation_(cx->activation_) { MOZ_ASSERT(cx == TlsContext.get()); settle(); @@ -1781,7 +1766,6 @@ ActivationIterator::ActivationIterator(JSContext* cx, const CooperatingContext& // Tolerate a null target context, in case we are iterating over the // activations for a zone group that is not in use by any thread. - jitTop_ = target.context() ? target.context()->jitTop.ref() : nullptr; activation_ = target.context() ? target.context()->activation_.ref() : nullptr; settle(); @@ -1791,8 +1775,6 @@ ActivationIterator& ActivationIterator::operator++() { MOZ_ASSERT(activation_); - if (activation_->isJit() && activation_->asJit()->isActive()) - jitTop_ = activation_->asJit()->prevJitTop(); activation_ = activation_->prev(); settle(); return *this; @@ -1801,8 +1783,7 @@ ActivationIterator::operator++() void ActivationIterator::settle() { - // Stop at the next active activation. No need to update jitTop_, since - // we don't iterate over an active jit activation. + // Stop at the next active activation. while (!done() && activation_->isJit() && !activation_->asJit()->isActive()) activation_ = activation_->prev(); } @@ -1811,8 +1792,7 @@ JS::ProfilingFrameIterator::ProfilingFrameIterator(JSContext* cx, const Register uint32_t sampleBufferGen) : cx_(cx), sampleBufferGen_(sampleBufferGen), - activation_(nullptr), - savedPrevJitTop_(nullptr) + activation_(nullptr) { if (!cx->runtime()->geckoProfiler().enabled()) MOZ_CRASH("ProfilingFrameIterator called when geckoProfiler not enabled for runtime."); @@ -1888,9 +1868,6 @@ JS::ProfilingFrameIterator::iteratorConstruct(const RegisterState& state) if (activation_->isWasm()) { new (storage()) wasm::ProfilingFrameIterator(*activation_->asWasm(), state); - // Set savedPrevJitTop_ to the actual jitTop_ from the runtime. - AutoNoteSingleThreadedRegion anstr; - savedPrevJitTop_ = activation_->cx()->jitTop; return; } @@ -1910,8 +1887,7 @@ JS::ProfilingFrameIterator::iteratorConstruct() } MOZ_ASSERT(activation_->asJit()->isActive()); - MOZ_ASSERT(savedPrevJitTop_ != nullptr); - new (storage()) jit::JitProfilingFrameIterator(savedPrevJitTop_); + new (storage()) jit::JitProfilingFrameIterator(activation_->asJit()->exitFP()); } void @@ -1925,8 +1901,6 @@ JS::ProfilingFrameIterator::iteratorDestroy() return; } - // Save prevjitTop for later use - savedPrevJitTop_ = activation_->asJit()->prevJitTop(); jitIter().~JitProfilingFrameIterator(); } diff --git a/js/src/vm/Stack.h b/js/src/vm/Stack.h index a212ed24d985..c7ee4ec0d1be 100644 --- a/js/src/vm/Stack.h +++ b/js/src/vm/Stack.h @@ -1455,8 +1455,6 @@ class InterpreterActivation : public Activation // Iterates over a thread's activation list. class ActivationIterator { - uint8_t* jitTop_; - protected: Activation* activation_; @@ -1479,10 +1477,6 @@ class ActivationIterator Activation* activation() const { return activation_; } - uint8_t* jitTop() const { - MOZ_ASSERT(activation_->isJit()); - return jitTop_; - } bool done() const { return activation_ == nullptr; } @@ -1495,12 +1489,15 @@ class BailoutFrameInfo; // A JitActivation is used for frames running in Baseline or Ion. class JitActivation : public Activation { - uint8_t* prevJitTop_; + // If Baseline or Ion code is on the stack, and has called into C++, this + // will be aligned to an ExitFrame. + uint8_t* exitFP_; + JitActivation* prevJitActivation_; bool active_; // Rematerialized Ion frames which has info copied out of snapshots. Maps - // frame pointers (i.e. jitTop) to a vector of rematerializations of all + // frame pointers (i.e. exitFP_) to a vector of rematerializations of all // inline frames associated with that frame. // // This table is lazily initialized by calling getRematerializedFrame. @@ -1552,20 +1549,28 @@ class JitActivation : public Activation } void setActive(JSContext* cx, bool active = true); - bool isProfiling() const; - - uint8_t* prevJitTop() const { - return prevJitTop_; + bool isProfiling() const { + // All JitActivations can be profiled. + return true; } + JitActivation* prevJitActivation() const { return prevJitActivation_; } - static size_t offsetOfPrevJitTop() { - return offsetof(JitActivation, prevJitTop_); - } static size_t offsetOfPrevJitActivation() { return offsetof(JitActivation, prevJitActivation_); } + + void setExitFP(uint8_t* fp) { + exitFP_ = fp; + } + uint8_t* exitFP() const { + return exitFP_; + } + static size_t offsetOfExitFP() { + return offsetof(JitActivation, exitFP_); + } + static size_t offsetOfActiveUint8() { MOZ_ASSERT(sizeof(bool) == 1); return offsetof(JitActivation, active_); @@ -1678,6 +1683,11 @@ class JitActivationIterator : public ActivationIterator settle(); return *this; } + + uint8_t* exitFP() const { + MOZ_ASSERT(activation_->isJit()); + return activation_->asJit()->exitFP(); + } }; } // namespace jit diff --git a/js/src/wasm/WasmStubs.cpp b/js/src/wasm/WasmStubs.cpp index daf84ae20551..e5ee544fcfd6 100644 --- a/js/src/wasm/WasmStubs.cpp +++ b/js/src/wasm/WasmStubs.cpp @@ -777,10 +777,6 @@ wasm::GenerateImportJitExit(MacroAssembler& masm, const FuncImport& fi, Label* t masm.loadPtr(Address(cx, 0), cx); masm.loadPtr(Address(cx, JSContext::offsetOfActivation()), act); - // cx->jitTop = act->prevJitTop_; - masm.loadPtr(Address(act, JitActivation::offsetOfPrevJitTop()), tmp); - masm.storePtr(tmp, Address(cx, offsetof(JSContext, jitTop))); - // cx->jitActivation = act->prevJitActivation_; masm.loadPtr(Address(act, JitActivation::offsetOfPrevJitActivation()), tmp); masm.storePtr(tmp, Address(cx, offsetof(JSContext, jitActivation))); diff --git a/layout/painting/nsDisplayList.cpp b/layout/painting/nsDisplayList.cpp index dd748e36079e..0832341829c2 100644 --- a/layout/painting/nsDisplayList.cpp +++ b/layout/painting/nsDisplayList.cpp @@ -8635,6 +8635,17 @@ nsDisplayFilter::BuildLayer(nsDisplayListBuilder* aBuilder, BuildContainerLayerFor(aBuilder, aManager, mFrame, this, &mList, newContainerParameters, nullptr); + LayerState state = this->GetLayerState(aBuilder, aManager, newContainerParameters); + if (container && state != LAYER_SVG_EFFECTS) { + const nsTArray& filters = mFrame->StyleEffects()->mFilters; + nsTArray cssFilters = nsTArray(filters.Length()); + for (const nsStyleFilter& filter : filters) { + cssFilters.AppendElement(ToCSSFilter(filter)); + } + + container->SetFilterChain(Move(cssFilters)); + } + return container.forget(); } @@ -8667,7 +8678,25 @@ nsDisplayFilter::GetLayerState(nsDisplayListBuilder* aBuilder, LayerManager* aManager, const ContainerLayerParameters& aParameters) { - return LAYER_SVG_EFFECTS; + if (mFrame->IsFrameOfType(nsIFrame::eSVG)) { + return LAYER_SVG_EFFECTS; + } + + if (!ShouldUseAdvancedLayer(aManager, gfxPrefs::LayersAllowFilterLayers)) { + return LAYER_SVG_EFFECTS; + } + + // Due to differences in the way that WebRender filters operate + // only the brightness and contrast filters use that path. We + // can gradually enable more filters as WebRender bugs are fixed. + for (const nsStyleFilter& filter : mFrame->StyleEffects()->mFilters) { + if (filter.GetType() != NS_STYLE_FILTER_BRIGHTNESS && + filter.GetType() != NS_STYLE_FILTER_CONTRAST) { + return LAYER_SVG_EFFECTS; + } + } + + return LAYER_ACTIVE; } bool nsDisplayFilter::ComputeVisibility(nsDisplayListBuilder* aBuilder, diff --git a/layout/tables/nsTableFrame.cpp b/layout/tables/nsTableFrame.cpp index 510711f6b0f6..1d35bd27dc71 100644 --- a/layout/tables/nsTableFrame.cpp +++ b/layout/tables/nsTableFrame.cpp @@ -1428,6 +1428,74 @@ PaintRowGroupBackgroundByColIdx(nsTableRowGroupFrame* aRowGroup, } } +static inline bool FrameHasBorder(nsIFrame* f) +{ + if (!f->StyleVisibility()->IsVisible()) { + return false; + } + + if (f->StyleBorder()->HasBorder()) { + return true; + } + + return false; +} + +void nsTableFrame::CalcHasBCBorders() +{ + if (!IsBorderCollapse()) { + SetHasBCBorders(false); + return; + } + + if (FrameHasBorder(this)) { + SetHasBCBorders(true); + return; + } + + // Check col and col group has borders. + for (nsIFrame* f : this->GetChildList(kColGroupList)) { + if (FrameHasBorder(f)) { + SetHasBCBorders(true); + return; + } + + nsTableColGroupFrame *colGroup = static_cast(f); + for (nsTableColFrame* col = colGroup->GetFirstColumn(); col; col = col->GetNextCol()) { + if (FrameHasBorder(col)) { + SetHasBCBorders(true); + return; + } + } + } + + // check row group, row and cell has borders. + RowGroupArray rowGroups; + OrderRowGroups(rowGroups); + for (nsTableRowGroupFrame* rowGroup : rowGroups) { + if (FrameHasBorder(rowGroup)) { + SetHasBCBorders(true); + return; + } + + for (nsTableRowFrame* row = rowGroup->GetFirstRow(); row; row = row->GetNextRow()) { + if (FrameHasBorder(row)) { + SetHasBCBorders(true); + return; + } + + for (nsTableCellFrame* cell = row->GetFirstCell(); cell; cell = cell->GetNextCell()) { + if (FrameHasBorder(cell)) { + SetHasBCBorders(true); + return; + } + } + } + } + + SetHasBCBorders(false); +} + /* static */ void nsTableFrame::DisplayGenericTablePart(nsDisplayListBuilder* aBuilder, nsFrame* aFrame, @@ -1513,11 +1581,16 @@ nsTableFrame::DisplayGenericTablePart(nsDisplayListBuilder* aBuilder, nsTableFrame* table = static_cast(aFrame); // In the collapsed border model, overlay all collapsed borders. if (table->IsBorderCollapse()) { - aLists.BorderBackground()->AppendNewToTop( - new (aBuilder) nsDisplayTableBorderCollapse(aBuilder, table)); + if (table->HasBCBorders()) { + aLists.BorderBackground()->AppendNewToTop( + new (aBuilder) nsDisplayTableBorderCollapse(aBuilder, table)); + } } else { - aLists.BorderBackground()->AppendNewToTop( - new (aBuilder) nsDisplayBorder(aBuilder, table)); + const nsStyleBorder* borderStyle = aFrame->StyleBorder(); + if (borderStyle->HasBorder()) { + aLists.BorderBackground()->AppendNewToTop( + new (aBuilder) nsDisplayBorder(aBuilder, table)); + } } } } @@ -1525,28 +1598,6 @@ nsTableFrame::DisplayGenericTablePart(nsDisplayListBuilder* aBuilder, aFrame->DisplayOutline(aBuilder, aLists); } -static inline bool FrameHasBorderOrBackground(nsTableFrame* tableFrame, nsIFrame* f) -{ - if (!f->StyleVisibility()->IsVisible()) { - return false; - } - if (f->StyleBorder()->HasBorder()) { - return true; - } - if (!f->StyleBackground()->IsTransparent(f) || - f->StyleDisplay()->mAppearance) { - - nsTableCellFrame *cellFrame = do_QueryFrame(f); - // We could also return false here if the current frame is the root - // of a pseudo stacking context - if (cellFrame && !tableFrame->IsBorderCollapse()) { - return false; - } - return true; - } - return false; -} - // table paint code is concerned primarily with borders and bg color // SEC: TODO: adjust the rect for captions void @@ -4265,6 +4316,7 @@ nsTableFrame::AddBCDamageArea(const TableArea& aValue) #endif SetNeedToCalcBCBorders(true); + SetNeedToCalcHasBCBorders(true); // Get the property BCPropertyData* value = GetOrCreateBCProperty(); if (value) { @@ -4305,6 +4357,7 @@ nsTableFrame::SetFullBCDamageArea() NS_ASSERTION(IsBorderCollapse(), "invalid SetFullBCDamageArea call"); SetNeedToCalcBCBorders(true); + SetNeedToCalcHasBCBorders(true); BCPropertyData* value = GetOrCreateBCProperty(); if (value) { diff --git a/layout/tables/nsTableFrame.h b/layout/tables/nsTableFrame.h index c1450093a354..c614f0667391 100644 --- a/layout/tables/nsTableFrame.h +++ b/layout/tables/nsTableFrame.h @@ -763,6 +763,13 @@ public: bool NeedToCollapse() const; void SetNeedToCollapse(bool aValue); + bool NeedToCalcHasBCBorders() const; + void SetNeedToCalcHasBCBorders(bool aValue); + + void CalcHasBCBorders(); + bool HasBCBorders(); + void SetHasBCBorders(bool aValue); + /** The GeometryDirty bit is similar to the NS_FRAME_IS_DIRTY frame * state bit, which implies that all descendants are dirty. The * GeometryDirty still implies that all the parts of the table are @@ -903,6 +910,8 @@ protected: uint32_t mIStartContBCBorder:8; uint32_t mNeedToCollapse:1; // rows, cols that have visibility:collapse need to be collapsed uint32_t mResizedColumns:1; // have we resized columns since last reflow? + uint32_t mNeedToCalcHasBCBorders:1; + uint32_t mHasBCBorders:1; } mBits; std::map mDeletedRowIndexRanges; // maintains ranges of row @@ -1000,6 +1009,30 @@ inline void nsTableFrame::SetNeedToCalcBCBorders(bool aValue) mBits.mNeedToCalcBCBorders = (unsigned)aValue; } +inline bool nsTableFrame::NeedToCalcHasBCBorders() const +{ + return (bool)mBits.mNeedToCalcHasBCBorders; +} + +inline void nsTableFrame::SetNeedToCalcHasBCBorders(bool aValue) +{ + mBits.mNeedToCalcHasBCBorders = (unsigned)aValue; +} + +inline bool nsTableFrame::HasBCBorders() +{ + if (NeedToCalcHasBCBorders()) { + CalcHasBCBorders(); + SetNeedToCalcHasBCBorders(false); + } + return (bool)mBits.mHasBCBorders; +} + +inline void nsTableFrame::SetHasBCBorders(bool aValue) +{ + mBits.mHasBCBorders = (unsigned)aValue; +} + inline nscoord nsTableFrame::GetContinuousIStartBCBorderWidth() const { diff --git a/mobile/android/base/java/org/mozilla/gecko/Tabs.java b/mobile/android/base/java/org/mozilla/gecko/Tabs.java index 98a411d0e4e9..c9fadba095d3 100644 --- a/mobile/android/base/java/org/mozilla/gecko/Tabs.java +++ b/mobile/android/base/java/org/mozilla/gecko/Tabs.java @@ -44,6 +44,7 @@ import android.database.sqlite.SQLiteException; import android.graphics.Color; import android.net.Uri; import android.os.Handler; +import android.os.SystemClock; import android.provider.Browser; import android.support.annotation.UiThread; import android.support.v4.content.ContextCompat; @@ -645,10 +646,14 @@ public class Tabs implements BundleEventListener { return; } if ((state & GeckoAppShell.WPL_STATE_START) != 0) { + Log.i(LOGTAG, "zerdatime " + SystemClock.elapsedRealtime() + + " - page load start"); final boolean restoring = message.getBoolean("restoring"); tab.handleDocumentStart(restoring, message.getString("uri")); notifyListeners(tab, Tabs.TabEvents.START); } else if ((state & GeckoAppShell.WPL_STATE_STOP) != 0) { + Log.i(LOGTAG, "zerdatime " + SystemClock.elapsedRealtime() + + " - page load stop"); tab.handleDocumentStop(message.getBoolean("success")); notifyListeners(tab, Tabs.TabEvents.STOP); } diff --git a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarDisplayLayout.java b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarDisplayLayout.java index 55d543355022..7f3f7e1c560e 100644 --- a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarDisplayLayout.java +++ b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarDisplayLayout.java @@ -31,7 +31,6 @@ import org.mozilla.gecko.widget.themed.ThemedLinearLayout; import org.mozilla.gecko.widget.themed.ThemedTextView; import android.content.Context; -import android.os.SystemClock; import android.support.annotation.NonNull; import android.support.v4.view.ViewCompat; import android.text.Spannable; @@ -444,18 +443,6 @@ public class ToolbarDisplayLayout extends ThemedLinearLayout { } mUiMode = uiMode; - - // The "page load start" and "page load stop" log messages in this method - // are needed by S1/S2 tests (http://mrcote.info/phonedash/#). - // See discussion in Bug 804457. Bug 805124 tracks paring these down. - if (mUiMode == UIMode.PROGRESS) { - Log.i(LOGTAG, "zerdatime " + SystemClock.elapsedRealtime() + - " - page load start"); - } else { - Log.i(LOGTAG, "zerdatime " + SystemClock.elapsedRealtime() + - " - page load stop"); - } - updatePageActions(); } diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js index 27c2617cad32..5253d673fdf2 100644 --- a/modules/libpref/init/all.js +++ b/modules/libpref/init/all.js @@ -5734,6 +5734,7 @@ pref("layers.advanced.outline-layers", 2); pref("layers.advanced.solid-color", 2); pref("layers.advanced.table", 2); pref("layers.advanced.text-layers", 2); +pref("layers.advanced.filter-layers", 2); // Whether webrender should be used as much as possible. pref("gfx.webrendest.enabled", false); diff --git a/netwerk/base/nsSocketTransportService2.cpp b/netwerk/base/nsSocketTransportService2.cpp index 7a91b4c4fbbe..cb628479657e 100644 --- a/netwerk/base/nsSocketTransportService2.cpp +++ b/netwerk/base/nsSocketTransportService2.cpp @@ -1611,17 +1611,22 @@ nsSocketTransportService::GetSocketConnections(nsTArray *data) void nsSocketTransportService::StartPollWatchdog() { - MutexAutoLock lock(mLock); + // Start off the timer from a runnable off of the main thread in order to + // avoid a deadlock, see bug 1370448. + RefPtr self(this); + NS_DispatchToMainThread(NS_NewRunnableFunction([self] { + MutexAutoLock lock(self->mLock); - // Poll can hang sometimes. If we are in shutdown, we are going to start a - // watchdog. If we do not exit poll within REPAIR_POLLABLE_EVENT_TIME - // signal a pollable event again. - MOZ_ASSERT(gIOService->IsNetTearingDown()); - if (mPolling && !mPollRepairTimer) { - mPollRepairTimer = do_CreateInstance(NS_TIMER_CONTRACTID); - mPollRepairTimer->Init(this, REPAIR_POLLABLE_EVENT_TIME, - nsITimer::TYPE_REPEATING_SLACK); - } + // Poll can hang sometimes. If we are in shutdown, we are going to start a + // watchdog. If we do not exit poll within REPAIR_POLLABLE_EVENT_TIME + // signal a pollable event again. + MOZ_ASSERT(gIOService->IsNetTearingDown()); + if (self->mPolling && !self->mPollRepairTimer) { + self->mPollRepairTimer = do_CreateInstance(NS_TIMER_CONTRACTID); + self->mPollRepairTimer->Init(self, REPAIR_POLLABLE_EVENT_TIME, + nsITimer::TYPE_REPEATING_SLACK); + } + })); } void diff --git a/nsprpub/TAG-INFO b/nsprpub/TAG-INFO index 366912a76ffd..85ce0468c7ff 100644 --- a/nsprpub/TAG-INFO +++ b/nsprpub/TAG-INFO @@ -1 +1 @@ -NSPR_4_15_BETA2 +NSPR_4_15_RTM diff --git a/nsprpub/config/prdepend.h b/nsprpub/config/prdepend.h index 6c66b37ca0fc..e49e92677e3e 100644 --- a/nsprpub/config/prdepend.h +++ b/nsprpub/config/prdepend.h @@ -10,4 +10,3 @@ */ #error "Do not include this header file." - diff --git a/nsprpub/pr/include/prinit.h b/nsprpub/pr/include/prinit.h index 3b8c4bd63b56..d3f2b7b2c083 100644 --- a/nsprpub/pr/include/prinit.h +++ b/nsprpub/pr/include/prinit.h @@ -31,11 +31,11 @@ PR_BEGIN_EXTERN_C ** The format of the version string is ** ".[.] []" */ -#define PR_VERSION "4.15 Beta" +#define PR_VERSION "4.15" #define PR_VMAJOR 4 #define PR_VMINOR 15 #define PR_VPATCH 0 -#define PR_BETA PR_TRUE +#define PR_BETA PR_FALSE /* ** PRVersionCheck diff --git a/taskcluster/ci/test/tests.yml b/taskcluster/ci/test/tests.yml index 56cf5a8c38a0..c9ef83568bdc 100644 --- a/taskcluster/ci/test/tests.yml +++ b/taskcluster/ci/test/tests.yml @@ -1511,7 +1511,7 @@ web-platform-tests: checkout: true run-on-projects: by-test-platform: - windows10.*: [] + windows10.*: ['mozilla-central', 'try'] windows7.*: ['mozilla-central', 'try'] default: built-projects mozharness: @@ -1542,7 +1542,7 @@ web-platform-tests-reftests: checkout: true run-on-projects: by-test-platform: - windows10.*: [] + windows10.*: ['mozilla-central', 'try'] windows7.*: ['mozilla-central', 'try'] default: built-projects mozharness: diff --git a/testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini b/testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini index 3aa10486b108..2ec015aa16eb 100644 --- a/testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini +++ b/testing/marionette/harness/marionette_harness/tests/unit/unit-tests.ini @@ -4,6 +4,7 @@ [test_session.py] [test_capabilities.py] [test_accessibility.py] +skip-if = headless # Bug 1294075 and 1341493 [test_expectedfail.py] expected = fail [test_click.py] diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py index c771c4ce25af..e981c3b620aa 100644 --- a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_artifact.py @@ -11,6 +11,7 @@ config = { # 'setup-mock', 'checkout-sources', 'build', + 'upload-files', 'sendchange', ], "buildbot_json_path": "buildprops.json", @@ -26,7 +27,7 @@ config = { 'tooltool_bootstrap': "setup.sh", 'enable_count_ctors': False, # allows triggering of dependent jobs when --artifact try syntax is detected on buildbot - 'enable_unittest_sendchange': True, + 'enable_unittest_sendchange': False, 'enable_talos_sendchange': False, 'perfherder_extra_options': ['artifact'], ######################################################################### diff --git a/testing/talos/talos/config.py b/testing/talos/talos/config.py index c88fa0f19634..ec6e34ce4f34 100644 --- a/testing/talos/talos/config.py +++ b/testing/talos/talos/config.py @@ -179,6 +179,7 @@ DEFAULTS = dict( 'devtools.theme': "light", 'devtools.timeline.enabled': False, 'identity.fxaccounts.migrateToDevEdition': False, + 'plugin.state.flash': 0, 'media.libavcodec.allow-obsolete': True } ) diff --git a/testing/talos/talos/ttest.py b/testing/talos/talos/ttest.py index 51448267cf56..0e03d2d666d4 100644 --- a/testing/talos/talos/ttest.py +++ b/testing/talos/talos/ttest.py @@ -104,6 +104,9 @@ class TTest(object): setup.env['MOZ_INSTRUMENT_EVENT_LOOP_INTERVAL'] = '10' global_counters['responsiveness'] = [] + setup.env['JSGC_DISABLE_POISONING'] = '1' + setup.env['MOZ_DISABLE_NONLOCAL_CONNECTIONS'] = '1' + # if using mitmproxy we must allow access to 'external' sites if browser_config.get('mitmproxy', False): LOG.info("Using mitmproxy so setting MOZ_DISABLE_NONLOCAL_CONNECTIONS to 0") diff --git a/testing/web-platform/meta/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini b/testing/web-platform/meta/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini index addd4873c7c2..364c03a3d744 100644 --- a/testing/web-platform/meta/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini +++ b/testing/web-platform/meta/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini @@ -25,3 +25,5 @@ if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if not debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/cssom-view/CaretPosition-001.html.ini b/testing/web-platform/meta/cssom-view/CaretPosition-001.html.ini index b6c46e6be4c5..b3f84d8b1bcf 100644 --- a/testing/web-platform/meta/cssom-view/CaretPosition-001.html.ini +++ b/testing/web-platform/meta/cssom-view/CaretPosition-001.html.ini @@ -1,5 +1,8 @@ [CaretPosition-001.html] type: testharness [Element at (400, 900)] - expected: FAIL + expected: + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): PASS + FAIL diff --git a/testing/web-platform/meta/cssom-view/elementFromPoint.html.ini b/testing/web-platform/meta/cssom-view/elementFromPoint.html.ini index 230a47bac3a5..cb0245b80947 100644 --- a/testing/web-platform/meta/cssom-view/elementFromPoint.html.ini +++ b/testing/web-platform/meta/cssom-view/elementFromPoint.html.ini @@ -3,3 +3,8 @@ [Image Maps] expected: FAIL + [Fieldsets] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + diff --git a/testing/web-platform/meta/cssom-view/elementsFromPoint.html.ini b/testing/web-platform/meta/cssom-view/elementsFromPoint.html.ini new file mode 100644 index 000000000000..e1ff63b791b4 --- /dev/null +++ b/testing/web-platform/meta/cssom-view/elementsFromPoint.html.ini @@ -0,0 +1,7 @@ +[elementsFromPoint.html] + type: testharness + [no hit target at x,y] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + diff --git a/testing/web-platform/meta/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-screeny.html.ini b/testing/web-platform/meta/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-screeny.html.ini new file mode 100644 index 000000000000..6c86ba7241d9 --- /dev/null +++ b/testing/web-platform/meta/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-non-integer-screeny.html.ini @@ -0,0 +1,47 @@ +[open-features-non-integer-screeny.html] + type: testharness + [features "screeny=405.5" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405.32" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405LLl" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405^4" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405*3" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405/5" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405 " should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405e1" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [features "screeny=405e-1" should set "height=405"] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + diff --git a/testing/web-platform/meta/html/browsers/the-window-object/historical.window.js.ini b/testing/web-platform/meta/html/browsers/the-window-object/historical.window.js.ini index 0c0a3f38f3c2..bbfc462890b1 100644 --- a/testing/web-platform/meta/html/browsers/the-window-object/historical.window.js.ini +++ b/testing/web-platform/meta/html/browsers/the-window-object/historical.window.js.ini @@ -10,4 +10,6 @@ if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/usemap-casing.html.ini b/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/usemap-casing.html.ini index f0424be02315..e93c6fee1866 100644 --- a/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/usemap-casing.html.ini +++ b/testing/web-platform/meta/html/semantics/embedded-content/the-img-element/usemap-casing.html.ini @@ -3,3 +3,13 @@ [Image with usemap of #sanityCheck should match the area with map named sanityCheck] expected: FAIL + [Image with usemap of #tÉdz5アパートFi should not match any of the areas] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [Image with usemap of #ΣΣ should not match any of the areas] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + diff --git a/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/usemap-casing.html.ini b/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/usemap-casing.html.ini index b021e4cb129f..a0d1dcb1036a 100644 --- a/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/usemap-casing.html.ini +++ b/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/usemap-casing.html.ini @@ -3,3 +3,13 @@ [Object with usemap of #sanityCheck should match the area with map named sanityCheck] expected: FAIL + [Object with usemap of #tÉdz5アパートFi should not match any of the areas] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + + [Object with usemap of #ΣΣ should not match any of the areas] + expected: + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + diff --git a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/execorder.html.ini b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/execorder.html.ini index 7c119b05b9ec..fbc63a1a7a75 100644 --- a/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/execorder.html.ini +++ b/testing/web-platform/meta/html/semantics/scripting-1/the-script-element/module/execorder.html.ini @@ -1,35 +1,28 @@ [execorder.html] type: testharness expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): OK if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): OK [Unordered module script execution (parsed, unordered #1)] expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): PASS [Unordered module script execution (parsed, unordered #2)] expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): PASS [Unordered module script execution (dynamic, unordered #1)] expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): PASS [Unordered module script execution (dynamic, unordered #2)] expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): PASS [Interlaced module/non-module script execution (parsed, async-ordered)] expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): PASS [Interlaced module/non-module script execution (dynamic, async-ordered)] expected: - if e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): PASS if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5"): PASS diff --git a/testing/web-platform/meta/intersection-observer/cross-origin-iframe.html.ini b/testing/web-platform/meta/intersection-observer/cross-origin-iframe.html.ini deleted file mode 100644 index 8b9e869c5781..000000000000 --- a/testing/web-platform/meta/intersection-observer/cross-origin-iframe.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[cross-origin-iframe.html] - type: testharness diff --git a/testing/web-platform/meta/intersection-observer/disconnect.html.ini b/testing/web-platform/meta/intersection-observer/disconnect.html.ini deleted file mode 100644 index 05d721d3ad8e..000000000000 --- a/testing/web-platform/meta/intersection-observer/disconnect.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[disconnect.html] - type: testharness diff --git a/testing/web-platform/meta/intersection-observer/edge-inclusive-intersection.html.ini b/testing/web-platform/meta/intersection-observer/edge-inclusive-intersection.html.ini index d491fb117dda..356c371e5fe2 100644 --- a/testing/web-platform/meta/intersection-observer/edge-inclusive-intersection.html.ini +++ b/testing/web-platform/meta/intersection-observer/edge-inclusive-intersection.html.ini @@ -1,4 +1,3 @@ [edge-inclusive-intersection.html] type: testharness disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1359317 - diff --git a/testing/web-platform/meta/intersection-observer/multiple-targets.html.ini b/testing/web-platform/meta/intersection-observer/multiple-targets.html.ini index 0d7b23d23161..cdaa6d6a3571 100644 --- a/testing/web-platform/meta/intersection-observer/multiple-targets.html.ini +++ b/testing/web-platform/meta/intersection-observer/multiple-targets.html.ini @@ -1,4 +1,3 @@ [multiple-targets.html] type: testharness disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1359311 - diff --git a/testing/web-platform/meta/intersection-observer/observer-without-js-reference.html.ini b/testing/web-platform/meta/intersection-observer/observer-without-js-reference.html.ini deleted file mode 100644 index f3cae9b4e79c..000000000000 --- a/testing/web-platform/meta/intersection-observer/observer-without-js-reference.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[observer-without-js-reference.html] - type: testharness diff --git a/testing/web-platform/meta/intersection-observer/remove-element.html.ini b/testing/web-platform/meta/intersection-observer/remove-element.html.ini index 797cb276875c..3f2bff467631 100644 --- a/testing/web-platform/meta/intersection-observer/remove-element.html.ini +++ b/testing/web-platform/meta/intersection-observer/remove-element.html.ini @@ -1,4 +1,3 @@ [remove-element.html] type: testharness disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1363650 - diff --git a/testing/web-platform/meta/intersection-observer/same-document-root.html.ini b/testing/web-platform/meta/intersection-observer/same-document-root.html.ini index 374549420b66..7fa7dfbed932 100644 --- a/testing/web-platform/meta/intersection-observer/same-document-root.html.ini +++ b/testing/web-platform/meta/intersection-observer/same-document-root.html.ini @@ -1,4 +1,3 @@ [same-document-root.html] type: testharness disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1363650 - diff --git a/testing/web-platform/meta/intersection-observer/timestamp.html.ini b/testing/web-platform/meta/intersection-observer/timestamp.html.ini deleted file mode 100644 index b359aec876af..000000000000 --- a/testing/web-platform/meta/intersection-observer/timestamp.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[timestamp.html] - type: testharness diff --git a/testing/web-platform/meta/intersection-observer/unclipped-root.html.ini b/testing/web-platform/meta/intersection-observer/unclipped-root.html.ini index e6325d64fcd8..ace8e035fb3a 100644 --- a/testing/web-platform/meta/intersection-observer/unclipped-root.html.ini +++ b/testing/web-platform/meta/intersection-observer/unclipped-root.html.ini @@ -1,4 +1,3 @@ [unclipped-root.html] type: testharness disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1359317 - diff --git a/testing/web-platform/meta/intersection-observer/zero-area-element-hidden.html.ini b/testing/web-platform/meta/intersection-observer/zero-area-element-hidden.html.ini deleted file mode 100644 index 7859492e594b..000000000000 --- a/testing/web-platform/meta/intersection-observer/zero-area-element-hidden.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[zero-area-element-hidden.html] - type: testharness diff --git a/testing/web-platform/meta/intersection-observer/zero-area-element-visible.html.ini b/testing/web-platform/meta/intersection-observer/zero-area-element-visible.html.ini deleted file mode 100644 index 6ddb827d31ac..000000000000 --- a/testing/web-platform/meta/intersection-observer/zero-area-element-visible.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[zero-area-element-visible.html] - type: testharness - diff --git a/testing/web-platform/meta/media-source/mediasource-append-buffer.html.ini b/testing/web-platform/meta/media-source/mediasource-append-buffer.html.ini index be263f86e31a..7622c6629af9 100644 --- a/testing/web-platform/meta/media-source/mediasource-append-buffer.html.ini +++ b/testing/web-platform/meta/media-source/mediasource-append-buffer.html.ini @@ -1,4 +1,3 @@ [mediasource-append-buffer.html] type: testharness expected: ERROR - diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index 399f454513c5..6ea9aed527ca 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index b4b445c7e0f0..d2fc6180c5be 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index 6eff653525e0..178a9161432f 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index 90aa5093d73d..5d13068ed6f9 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index a5246e10e5f4..6ff88b984bdf 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index 0c85df7d0c20..f92918b267da 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index 8bd62518f7a4..05ff68c34176 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index 6c17f43890e2..735877f4025e 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index d04d57018661..75717bb7158d 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index d8c119ffd32d..f13f925bf7db 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index 05f6926f7214..54a38d8c33e2 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index 5a85979d7f97..37c09357c346 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index 98a7b8010fc3..005efaf6cea6 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index 4e298ad67c44..9becb6bc3e36 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index fb60a41a7c80..175c3fbff5ad 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index b955af1cf85c..7397bd89dd56 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index 92218c9ef89e..741717dba4ca 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index a5da6f26c47e..203d8553c9c4 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index ca9693082901..58a482cc3546 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index c41ade9d9f0e..66c22d01dd32 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index f19a14cf078f..45af44496ff8 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index 85b669c15832..e48352c6f9f4 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index 5bf8f4c9c4d4..bf7329be25f0 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index e9d9bb18b55c..86465c5116bc 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer-when-downgrade/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index 62ce411f6233..990f6a8a7386 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 6c4789079119..f6ccbe9cf62e 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 47b4835abe57..249c79845311 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index dd8889bdc5c8..4ba14c20efe1 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 694a27a406df..4b4e57f718f6 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 159fa3bafa58..e72fa356222a 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index df9dff165aab..2801cf4adc59 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 610d0fe94b4e..c1c5233c6700 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 41b580d04609..ff8bbd772a29 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 0ee3d6d8aba5..421c65e07128 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 479bb70ad9a3..8e9586bf777b 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 8d0f103b20eb..f2b4ad501635 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index c4735ba6979b..883babec6c51 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 1738bda4fcc1..b629c830bbb3 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index b2a83bd76166..740de692797a 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 664fc2f61c22..363d3d30be0f 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index b0c41eb00354..b14a7c05d7e0 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index e6f289b51175..cd5b5f6830e4 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index 5273acebfff7..9974a105116d 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index d374d1f97f9f..c714ad22afc4 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 874981a16e64..7188de3e1300 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index be57f69b1c9a..e57314ea4556 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 1df917b97900..6f3dc4961c02 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index f1b618307f42..7f9245e59c70 100644 --- a/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/no-referrer/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini index b7206d5cb864..585c5a06c292 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini index 52137b4ad0c7..a146df774e75 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini index ed7dc8560db2..a7ff6c41a594 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini index f3c89700e108..3fb8a01bec83 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini index 1125111a0f43..2353839dc6c2 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini index ab7477d71a85..d8c070d82244 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini index a4827a8c96ca..76a674c08b36 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini index 624040b8861a..a301477f929b 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini index 7dd0271ac489..1ce8d7b1751b 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini index 789937b0c206..e309cd3655f6 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini index 9bf79a18adb6..35238fd51bec 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini index 6459fe118983..9588c71e62ee 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini index 2d924bffbcbe..36c65ae1d956 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini index 78afed17af48..5c288c1703bd 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini index db211e456109..1f5d8ccf01ef 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini index 83670ca8974f..2946459b92aa 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/attr-referrer/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini index 0cbb2f1cb744..cf9696a22428 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini index f00be1d9ecee..60d796998025 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini index 71ba028b44e2..1d0611d9d867 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-http/img-tag/cross-origin.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini index f025dfcfd0f4..e009c6b1fddf 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini index 26485773c1ad..129fe7889771 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini index 9d39d66824d3..a79de9d28654 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/cross-origin/http-https/img-tag/cross-origin.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini index 3a748fd38459..a4d580e514c9 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini index 46d41b071a5b..e21ccb2f1017 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini index d2ef20ca1c25..604c1d41e28d 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-http/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini index 87eea015493c..3f34f2467c59 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini index 05c7e222c888..9ee8da5b2c17 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini index 684070d6898f..026ace0b623a 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-downgrade.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini index b4c52f0afefa..c7a62cacf753 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-insecure.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini index de489498082e..41d6d42c1cdd 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini index 8300ed1cf943..1a0fc34f6f61 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini index 36458866eac4..4a774f523908 100644 --- a/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin-when-cross-origin/http-rp/same-origin/http-https/img-tag/same-origin-upgrade.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index 32431064d1bd..3066efd92a81 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index f8e24ca15249..7764641d5f93 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index cb7c70a191cb..8bf9cd7a7427 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 16919bd9514e..6ad8bd2c4e38 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 89263fa9e19b..4fe243485e5d 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 93b02076e217..d0c99604ae91 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index d3c781e157e5..c806fd729e9c 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 8a95b0378a94..03b8d3bb974a 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 3c64607c8f77..8a9deb98fd0e 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index eb6b29539a77..48e00a841159 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 8673d352e8fb..1885d55ec736 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 09af2022cde4..b81d6f051425 100644 --- a/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index 375ebefc3bcb..a8159a2f9bcd 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 990e21482d3c..78e081105e35 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 43f8b07e6ad6..ebe309f062e7 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index fd9fc29c59e0..8b980cd7ce44 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index c9bc4d6e0a7b..a9aefed0e923 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index e1805c6fd1fa..0188259c70c5 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index fc5ca3fc7368..740c9fc31286 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index c26d9f5b0e4d..b58ca72310a3 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index a20dfbbb87fb..3c374e69288d 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 2a5e69e3ee70..3bc82e16eecf 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index e9393364cd49..c800521946f8 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 81b2edc91094..6a8e9b8b94be 100644 --- a/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index 0d1b9d3ef782..9eba582e1aef 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 65f1191e84a0..4c7fd02d8364 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 396dfe8663a5..0f01d0d4296f 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 1001b33d55db..c0aebe26f7b0 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index c46a3b3eb34f..1d290ac2d656 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 369fdb21a776..8c69c8194275 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index e5d685668bb8..8ea7667194e1 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 6dccc334b134..a94bf85f317b 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index a4c48745ecf8..439155fd8c02 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index d1fcd8fc8a0f..7367dbda890a 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 4892e88d09cc..b1a2419d3ae7 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 1f36022ba8df..a0136f081aa2 100644 --- a/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/origin/meta-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index edb9977080f1..ba5e1a569652 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 7bb926652983..204602861d8b 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index eabe3b2c38f1..099b9246e158 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index a2b1f2063de4..78935798ab70 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index b61a4392478d..ebae38383665 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 363b59ed4da0..c02163f50bd1 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index 21fcda9d76f4..6c6918c2dbb8 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 9371c4c4f502..004b56a2a2cd 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index db13774dcb13..83f6d0c370ba 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index d25d84b9b69f..8f1ffbe1cc64 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index ce9db92dbddd..d5a959ac1a57 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 6e8d1f7b98ba..c72d59b36bf4 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/attr-referrer/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index a7df138a88b9..183d78b1ae03 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 6c0f0cce6415..5cd14aee5d89 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 342e265b6c95..e546e4c8dd31 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 9bd24101b62a..d963d5007dba 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 5aa852a62a52..a4f6f4aca755 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index cf024614783e..19915130e072 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/cross-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini index e171a26e0c5c..0fe70c710bd6 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini index 8e493cb8b826..ce6464bcb883 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini index 93cf20687fd9..0e36342da0ac 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-http/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini index 0433c962d680..2906be660732 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini index 019dc3de0a3b..e58b78f496f6 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini index 9c385a48383a..93d7a3caa4de 100644 --- a/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unsafe-url/http-rp/same-origin/http-https/img-tag/generic.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index 1c80a186c47b..7f8b3f97c93a 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index c77c09069ffc..f5e91a9d5b95 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index 6be9f55cb389..842e87f6381e 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index c59fa11c9e79..02b256e73057 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index 21be30c32d42..4d9454fe2758 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index 0db6eca48191..5b66ca040b91 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index 8bd62518f7a4..05ff68c34176 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index 6c17f43890e2..735877f4025e 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index d04d57018661..75717bb7158d 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index d8c119ffd32d..f13f925bf7db 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index 05f6926f7214..54a38d8c33e2 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index 5a85979d7f97..37c09357c346 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/attr-referrer/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index e64d6858cbf6..407f3c6ac77f 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index ad204ceb69b9..1c960d166d6e 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index d35ef35b767d..ce09a7eb2cba 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index 039e3fdebcc4..087b53dc22a4 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index 640310614f0b..790206c8f27b 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index de26e6ea68e5..6cf2231e9bf2 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/cross-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini index d9b7a5e5eb5f..f7c886e07d89 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini index f904cceedd2f..7689fdac1b25 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini index 03bcf5e4e825..f6d00d19d0dd 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-http/img-tag/insecure-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and not e10s and (os == "linux") and (version == "Ubuntu 12.04") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini index 9ebdbd12afc4..c14cb5ae940d 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.keep-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini index e8f36fd1865b..c37d5f13aec0 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.no-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini index 12b5584893e6..74064607103e 100644 --- a/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini +++ b/testing/web-platform/meta/referrer-policy/unset-referrer-policy/http-rp/same-origin/http-https/img-tag/upgrade-protocol.swap-origin-redirect.http.html.ini @@ -21,4 +21,6 @@ if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/service-workers/service-worker/fetch-event.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/fetch-event.https.html.ini index 60e9804cb477..c769686acb9e 100644 --- a/testing/web-platform/meta/service-workers/service-worker/fetch-event.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/fetch-event.https.html.ini @@ -13,4 +13,5 @@ if debug and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL if not debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/service-workers/service-worker/fetch-response-taint.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/fetch-response-taint.https.html.ini index 257d3cf16d0d..9ee6cebf2b8a 100644 --- a/testing/web-platform/meta/service-workers/service-worker/fetch-response-taint.https.html.ini +++ b/testing/web-platform/meta/service-workers/service-worker/fetch-response-taint.https.html.ini @@ -10,6 +10,8 @@ if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL [fetching url:"https://www1.web-platform.test:8443/?url=https%3A%2F%2Fweb-platform.test%3A8443%2Fservice-workers%2Fservice-worker%2Fresources%2Ffetch-access-control.py%3F&mode=same-origin&credentials=omit&" mode:"no-cors" credentials:"omit" should succeed.] expected: FAIL diff --git a/testing/web-platform/meta/service-workers/service-worker/fetch-response-xhr.https.html.ini b/testing/web-platform/meta/service-workers/service-worker/fetch-response-xhr.https.html.ini deleted file mode 100644 index b7aaca6b8d72..000000000000 --- a/testing/web-platform/meta/service-workers/service-worker/fetch-response-xhr.https.html.ini +++ /dev/null @@ -1,6 +0,0 @@ -[fetch-response-xhr.https.html] - type: testharness - expected: TIMEOUT - [Verify the response of FetchEvent using XMLHttpRequest] - expected: TIMEOUT - diff --git a/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini index d104ff7200cf..1e2c448fb1cb 100644 --- a/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini +++ b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini @@ -532,6 +532,8 @@ if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL [Parsing: against ] expected: FAIL diff --git a/testing/web-platform/meta/url/a-element.html.ini b/testing/web-platform/meta/url/a-element.html.ini index a117aa6e1dbc..415a112f6d77 100644 --- a/testing/web-platform/meta/url/a-element.html.ini +++ b/testing/web-platform/meta/url/a-element.html.ini @@ -541,6 +541,8 @@ if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL [Parsing: against ] expected: FAIL diff --git a/testing/web-platform/meta/url/url-constructor.html.ini b/testing/web-platform/meta/url/url-constructor.html.ini index e43c221801a8..85f85e21cb70 100644 --- a/testing/web-platform/meta/url/url-constructor.html.ini +++ b/testing/web-platform/meta/url/url-constructor.html.ini @@ -295,6 +295,8 @@ if not debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL [Parsing: against ] expected: FAIL diff --git a/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/align_middle_position_lt_50.html.ini b/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/align_middle_position_lt_50.html.ini index f726f33f9c07..d622288deaa2 100644 --- a/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/align_middle_position_lt_50.html.ini +++ b/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/align_middle_position_lt_50.html.ini @@ -32,3 +32,5 @@ if debug and e10s and (os == "win") and (version == "6.1.7601") and (processor == "x86") and (bits == 32): FAIL if debug and not e10s and (os == "win") and (version == "6.2.9200") and (processor == "x86_64") and (bits == 64): FAIL if debug and not e10s and (os == "linux") and (version == "Ubuntu 16.04") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/enable_controls_reposition.html.ini b/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/enable_controls_reposition.html.ini index 64c97dc71b99..ed26de994bae 100644 --- a/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/enable_controls_reposition.html.ini +++ b/testing/web-platform/meta/webvtt/rendering/cues-with-video/processing-model/enable_controls_reposition.html.ini @@ -25,3 +25,5 @@ if debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if not debug and not e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL if not debug and e10s and (os == "mac") and (version == "OS X 10.10.5") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and not e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL + if not debug and e10s and (os == "win") and (version == "10.0.15063") and (processor == "x86_64") and (bits == 64): FAIL diff --git a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html index 1414596c16e3..612c9341eb78 100644 --- a/testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html +++ b/testing/web-platform/tests/service-workers/service-worker/resources/fetch-response-xhr-iframe.https.html @@ -26,7 +26,7 @@ function coalesce_headers_test() { return new Promise(function(resolve) { window.addEventListener('message', function handle(evt) { - if (event.data !== 'ACK') { + if (evt.data !== 'ACK') { return; } @@ -40,7 +40,7 @@ function coalesce_headers_test() { window.addEventListener('message', function(evt) { var port; - if (event.data !== 'START') { + if (evt.data !== 'START') { return; } diff --git a/toolkit/components/telemetry/Histograms.json b/toolkit/components/telemetry/Histograms.json index 114d81164b53..95286192424a 100644 --- a/toolkit/components/telemetry/Histograms.json +++ b/toolkit/components/telemetry/Histograms.json @@ -6610,11 +6610,13 @@ "description": "Count of messages sent by SessionRestore from child frames to the parent and that cannot be transmitted as they eat up too much memory." }, "FX_SESSION_RESTORE_DOM_STORAGE_SIZE_ESTIMATE_CHARS": { + "alert_emails": ["session-restore-telemetry-alerts@mozilla.com"], "record_in_processes": ["main", "content"], - "expires_in_version": "default", + "expires_in_version": "61", "kind": "exponential", "high": 30000000, "n_buckets": 20, + "bug_numbers": [1362058], "description": "Session restore: Number of characters in DOM Storage for a tab. Pages without DOM Storage or with an empty DOM Storage are ignored." }, "FX_SESSION_RESTORE_AUTO_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS": { diff --git a/toolkit/components/telemetry/histogram-whitelists.json b/toolkit/components/telemetry/histogram-whitelists.json index 43e0d365a2db..d1da6874ae79 100644 --- a/toolkit/components/telemetry/histogram-whitelists.json +++ b/toolkit/components/telemetry/histogram-whitelists.json @@ -252,7 +252,6 @@ "FX_GESTURE_INSTALL_SNAPSHOT_OF_PAGE", "FX_NEW_WINDOW_MS", "FX_PAGE_LOAD_MS", - "FX_SESSION_RESTORE_DOM_STORAGE_SIZE_ESTIMATE_CHARS", "FX_SESSION_RESTORE_NUMBER_OF_EAGER_TABS_RESTORED", "FX_SESSION_RESTORE_NUMBER_OF_TABS_RESTORED", "FX_SESSION_RESTORE_NUMBER_OF_WINDOWS_RESTORED", @@ -929,7 +928,6 @@ "FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS", "FX_SESSION_RESTORE_COLLECT_DATA_MS", "FX_SESSION_RESTORE_CORRUPT_FILE", - "FX_SESSION_RESTORE_DOM_STORAGE_SIZE_ESTIMATE_CHARS", "FX_SESSION_RESTORE_FILE_SIZE_BYTES", "FX_SESSION_RESTORE_MANUAL_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS", "FX_SESSION_RESTORE_NUMBER_OF_EAGER_TABS_RESTORED", @@ -1744,7 +1742,6 @@ "FX_SESSION_RESTORE_AUTO_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS", "FX_SESSION_RESTORE_COLLECT_DATA_MS", "FX_SESSION_RESTORE_FILE_SIZE_BYTES", - "FX_SESSION_RESTORE_DOM_STORAGE_SIZE_ESTIMATE_CHARS", "DATA_STORAGE_ENTRIES", "TRANSLATED_PAGES_BY_LANGUAGE", "MOZ_SQLITE_OTHER_WRITE_B", diff --git a/xpcom/threads/nsThread.cpp b/xpcom/threads/nsThread.cpp index 2c5a18651a85..7939a9c9b17e 100644 --- a/xpcom/threads/nsThread.cpp +++ b/xpcom/threads/nsThread.cpp @@ -644,6 +644,7 @@ nsThread::nsThread(MainThreadFlag aMainThread, uint32_t aStackSize) , mIsMainThread(aMainThread) , mLastUnlabeledRunnable(TimeStamp::Now()) , mCanInvokeJS(false) + , mHasPendingEventsPromisedIdleEvent(false) { } @@ -1037,6 +1038,43 @@ nsThread::Shutdown() return NS_OK; } +TimeStamp +nsThread::GetIdleDeadline() +{ + TimeStamp idleDeadline; + { + // Releasing the lock temporarily since getting the idle period + // might need to lock the timer thread. Unlocking here might make + // us receive an event on the main queue, but we've committed to + // run an idle event anyhow. + MutexAutoUnlock unlock(mLock); + mIdlePeriod->GetIdlePeriodHint(&idleDeadline); + } + + // If HasPendingEvents() has been called and it has returned true because of + // pending idle events, there is a risk that we may decide here that we aren't + // idle and return null, in which case HasPendingEvents() has effectively + // lied. Since we can't go back and fix the past, we have to adjust what we + // do here and forcefully pick the idle queue task here. Note that this means + // that we are choosing to run a task from the idle queue when we would + // normally decide that we aren't in an idle period, but this can only happen + // if we fall out of the idle period in between the call to HasPendingEvents() + // and here, which should hopefully be quite rare. We are effectively + // choosing to prioritize the sanity of our API semantics over the optimal + // scheduling. + if (!mHasPendingEventsPromisedIdleEvent && + (!idleDeadline || idleDeadline < TimeStamp::Now())) { + return TimeStamp(); + } + if (mHasPendingEventsPromisedIdleEvent && !idleDeadline) { + // If HasPendingEvents() has been called and it has returned true, but we're no + // longer in the idle period, we must return a valid timestamp to pretend that + // we are still in the idle period. + return TimeStamp::Now(); + } + return idleDeadline; +} + NS_IMETHODIMP nsThread::HasPendingEvents(bool* aResult) { @@ -1046,7 +1084,21 @@ nsThread::HasPendingEvents(bool* aResult) { MutexAutoLock lock(mLock); - *aResult = mEvents->HasPendingEvent(lock); + mHasPendingEventsPromisedIdleEvent = false; + bool hasPendingEvent = mEvents->HasPendingEvent(lock); + bool hasPendingIdleEvent = false; + if (!hasPendingEvent) { + // Note that GetIdleDeadline() checks mHasPendingEventsPromisedIdleEvent, + // but that's OK since we set it to false in the beginning of this method! + TimeStamp idleDeadline = GetIdleDeadline(); + + // Only examine the idle queue if we are in an idle period. + if (idleDeadline) { + hasPendingIdleEvent = mIdleEvents.HasPendingEvent(lock); + mHasPendingEventsPromisedIdleEvent = hasPendingIdleEvent; + } + } + *aResult = hasPendingEvent || hasPendingIdleEvent; } return NS_OK; } @@ -1154,21 +1206,13 @@ nsThread::GetIdleEvent(nsIRunnable** aEvent, MutexAutoLock& aProofOfLock) MOZ_ASSERT(aEvent); if (!mIdleEvents.HasPendingEvent(aProofOfLock)) { + MOZ_ASSERT(!mHasPendingEventsPromisedIdleEvent); aEvent = nullptr; return; } - TimeStamp idleDeadline; - { - // Releasing the lock temporarily since getting the idle period - // might need to lock the timer thread. Unlocking here might make - // us receive an event on the main queue, but we've committed to - // run an idle event anyhow. - MutexAutoUnlock unlock(mLock); - mIdlePeriod->GetIdlePeriodHint(&idleDeadline); - } - - if (!idleDeadline || idleDeadline < TimeStamp::Now()) { + TimeStamp idleDeadline = GetIdleDeadline(); + if (!idleDeadline) { aEvent = nullptr; return; } @@ -1191,6 +1235,10 @@ nsThread::GetEvent(bool aWait, nsIRunnable** aEvent, MOZ_ASSERT(PR_GetCurrentThread() == mThread); MOZ_ASSERT(aEvent); + MakeScopeExit([&] { + mHasPendingEventsPromisedIdleEvent = false; + }); + // We'll try to get an event to execute in three stages. // [1] First we just try to get it from the regular queue without waiting. mEvents->GetEvent(false, aEvent, aPriority, aProofOfLock); diff --git a/xpcom/threads/nsThread.h b/xpcom/threads/nsThread.h index 0a0ff4827cff..e83b6a53f8f3 100644 --- a/xpcom/threads/nsThread.h +++ b/xpcom/threads/nsThread.h @@ -96,6 +96,8 @@ public: private: void DoMainThreadSpecificProcessing(bool aReallyWait); + // Returns a null TimeStamp if we're not in the idle period. + mozilla::TimeStamp GetIdleDeadline(); void GetIdleEvent(nsIRunnable** aEvent, mozilla::MutexAutoLock& aProofOfLock); void GetEvent(bool aWait, nsIRunnable** aEvent, unsigned short* aPriority, @@ -278,6 +280,10 @@ protected: // Set to true if this thread creates a JSRuntime. bool mCanInvokeJS; + // Set to true if HasPendingEvents() has been called and returned true because + // of a pending idle event. This is used to remember to return that idle + // event from GetIdleEvent() to ensure that HasPendingEvents() never lies. + bool mHasPendingEventsPromisedIdleEvent; }; #if defined(XP_UNIX) && !defined(ANDROID) && !defined(DEBUG) && HAVE_UALARM \