Bug 797900 - Disable invalid-size-second-frame crashtest under AddressSanitizer. r=dbaron, a=nonlibxul
authorChristian Holler <choller@mozilla.com>
Tue, 22 Jan 2013 00:46:40 +0100
changeset 119449 109d927c069652a4afacba2b05acc85d0c0d0146
parent 119448 539e033ad1d69082e48b3830bb14e145a2ede0e3
child 119450 830cb30c2e1efce20b89b7f801cfc2cb745d228c
push id24204
push usereakhgari@mozilla.com
push dateTue, 22 Jan 2013 17:50:00 +0000
treeherdermozilla-central@8962a7fabc33 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdbaron, nonlibxul
bugs797900
milestone21.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 797900 - Disable invalid-size-second-frame crashtest under AddressSanitizer. r=dbaron, a=nonlibxul
image/test/crashtests/crashtests.list
layout/tools/reftest/reftest.js
--- a/image/test/crashtests/crashtests.list
+++ b/image/test/crashtests/crashtests.list
@@ -2,17 +2,18 @@ asserts(0-1) load ownerdiscard.html # bu
 
 load 83804-1.gif
 load 89341-1.gif
 
 # the following tests were inspired by bug 525326
 # they have image sizes of 65535x65535 which is larger than we allow
 load invalid-size.gif
 # this image has a valid size for the first frame, but the second frame is 65535x65535
-load invalid-size-second-frame.gif
+# AddressSanitizer sometimes fails with a CHECK on an allocation caused by this.
+skip-if(AddressSanitizer) load invalid-size-second-frame.gif
 
 # Animated gifs with a very large canvas, but tiny actual content.
 load delaytest.html?523528-1.gif
 load delaytest.html?523528-2.gif
 
 # this would have exposed the leak discovered in bug 642902
 load invalid-icc-profile.jpg
 
--- a/layout/tools/reftest/reftest.js
+++ b/layout/tools/reftest/reftest.js
@@ -570,16 +570,22 @@ function BuildConditionSandbox(aURL) {
     // Shortcuts for widget toolkits.
     sandbox.B2G = xr.widgetToolkit == "gonk";
     sandbox.Android = xr.OS == "Android" && !sandbox.B2G;
     sandbox.cocoaWidget = xr.widgetToolkit == "cocoa";
     sandbox.gtk2Widget = xr.widgetToolkit == "gtk2";
     sandbox.qtWidget = xr.widgetToolkit == "qt";
     sandbox.winWidget = xr.widgetToolkit == "windows";
 
+#if MOZ_ASAN
+    sandbox.AddressSanitizer = true;
+#else
+    sandbox.AddressSanitizer = false;
+#endif
+
     var hh = CC[NS_NETWORK_PROTOCOL_CONTRACTID_PREFIX + "http"].
                  getService(CI.nsIHttpProtocolHandler);
     sandbox.http = { __exposedProps__: {} };
     for each (var prop in [ "userAgent", "appName", "appVersion",
                             "vendor", "vendorSub",
                             "product", "productSub",
                             "platform", "oscpu", "language", "misc" ]) {
         sandbox.http[prop] = hh[prop];