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 125537 109d927c069652a4afacba2b05acc85d0c0d0146
parent 125536 539e033ad1d69082e48b3830bb14e145a2ede0e3
child 125538 830cb30c2e1efce20b89b7f801cfc2cb745d228c
push id3384
push userlsblakk@mozilla.com
push dateTue, 19 Feb 2013 18:42:39 +0000
treeherdermozilla-aurora@d8c97bae8521 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdbaron, nonlibxul
bugs797900
milestone21.0a1
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];