Bug 1030460 - Always initialize shadowsResult in EffectlesslyLookupProperty to work around a Clang/Valgrind issue. r=djvj
authorJan de Mooij <jdemooij@mozilla.com>
Sat, 16 Aug 2014 16:00:40 +0200
changeset 199985 e180c2d8db6b84e2ff5a7f4854bf46dd8b277b4b
parent 199984 997c9af10deccc7337c6740004a7a54917ae144b
child 199986 d0470d965f4659c6fbf1b77c57b1c7c5eda578ee
push id9784
push userryanvm@gmail.com
push dateSat, 16 Aug 2014 21:45:40 +0000
treeherderb2g-inbound@94ba78a42305 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdjvj
bugs1030460
milestone34.0a1
Bug 1030460 - Always initialize shadowsResult in EffectlesslyLookupProperty to work around a Clang/Valgrind issue. r=djvj
js/src/jit/BaselineIC.cpp
--- a/js/src/jit/BaselineIC.cpp
+++ b/js/src/jit/BaselineIC.cpp
@@ -3311,18 +3311,20 @@ EffectlesslyLookupProperty(JSContext *cx
                            MutableHandleObject holder, MutableHandleShape shape,
                            bool *checkDOMProxy=nullptr,
                            DOMProxyShadowsResult *shadowsResult=nullptr,
                            bool *domProxyHasGeneration=nullptr)
 {
     shape.set(nullptr);
     holder.set(nullptr);
 
-    if (checkDOMProxy)
+    if (checkDOMProxy) {
         *checkDOMProxy = false;
+        *shadowsResult = ShadowCheckFailed;
+    }
 
     // Check for list base if asked to.
     RootedObject checkObj(cx, obj);
     if (checkDOMProxy && IsCacheableDOMProxy(obj)) {
         JS_ASSERT(domProxyHasGeneration);
         JS_ASSERT(shadowsResult);
 
         *checkDOMProxy = true;