Backed out changeset 5f050838a6a2 (bug 1248948) for bustage.
authorRyan VanderMeulen <ryanvm@gmail.com>
Sat, 09 Apr 2016 12:46:25 -0400
changeset 325775 ca4e2efb2ef920e899c7e0235c331f0e9202f7f5
parent 325774 035a7708f988d1ac582a9d4d1a37456e9a1875d0
child 325776 d9dd1e498b858180d047c0a88f4cf69d99acc11d
push id1128
push userjlund@mozilla.com
push dateWed, 01 Jun 2016 01:31:59 +0000
treeherdermozilla-release@fe0d30de989d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1248948
milestone47.0a2
backs out5f050838a6a2f33a3802ed696793232d5054e226
Backed out changeset 5f050838a6a2 (bug 1248948) for bustage.
docshell/base/timeline/JavascriptTimelineMarker.h
js/src/jsapi.h
js/src/vm/SavedStacks.cpp
--- a/docshell/base/timeline/JavascriptTimelineMarker.h
+++ b/docshell/base/timeline/JavascriptTimelineMarker.h
@@ -49,18 +49,17 @@ public:
       stackFrame.mSource.Construct(mFileName);
       stackFrame.mFunctionDisplayName.Construct(mFunctionName);
 
       if (mAsyncStack.isObject() && !mAsyncStack.isNullOrUndefined() &&
           mAsyncCause.isString()) {
         JS::Rooted<JSObject*> asyncStack(aCx, mAsyncStack.toObjectOrNull());
         JS::Rooted<JSString*> asyncCause(aCx, mAsyncCause.toString());
         JS::Rooted<JSObject*> parentFrame(aCx);
-        if (JS::IsSavedFrame(asyncStack) &&
-            !JS::CopyAsyncStack(aCx, asyncStack, asyncCause, &parentFrame, 0)) {
+        if (!JS::CopyAsyncStack(aCx, asyncStack, asyncCause, &parentFrame, 0)) {
           JS_ClearPendingException(aCx);
         } else {
           stackFrame.mAsyncParent = parentFrame;
         }
       }
 
       JS::Rooted<JS::Value> newStack(aCx);
       if (ToJSValue(aCx, stackFrame, &newStack)) {
--- a/js/src/jsapi.h
+++ b/js/src/jsapi.h
@@ -5786,23 +5786,16 @@ GetSavedFrameParent(JSContext* cx, Handl
  * SavedFrame object, or a wrapper (CCW or Xray) around a SavedFrame object.
  *
  * Optional indent parameter specifies the number of white spaces to indent
  * each line.
  */
 extern JS_PUBLIC_API(bool)
 BuildStackString(JSContext* cx, HandleObject stack, MutableHandleString stringp, size_t indent = 0);
 
-/**
- * Return true iff the given object is either a SavedFrame object or wrapper
- * around a SavedFrame object, and it is not the SavedFrame.prototype object.
- */
-extern JS_PUBLIC_API(bool)
-IsSavedFrame(JSObject* obj);
-
 } /* namespace JS */
 
 
 /* Stopwatch-based performance monitoring. */
 
 namespace js {
 
 class AutoStopwatch;
--- a/js/src/vm/SavedStacks.cpp
+++ b/js/src/vm/SavedStacks.cpp
@@ -881,29 +881,16 @@ BuildStackString(JSContext* cx, HandleOb
     JSString* str = sb.finishString();
     if (!str)
         return false;
     assertSameCompartment(cx, str);
     stringp.set(str);
     return true;
 }
 
-JS_PUBLIC_API(bool)
-IsSavedFrame(JSObject* obj)
-{
-    if (!obj)
-        return false;
-
-    JSObject* unwrapped = CheckedUnwrap(obj);
-    if (!unwrapped)
-        return false;
-
-    return js::SavedFrame::isSavedFrameAndNotProto(*unwrapped);
-}
-
 } /* namespace JS */
 
 namespace js {
 
 /* static */ bool
 SavedFrame::sourceProperty(JSContext* cx, unsigned argc, Value* vp)
 {
     THIS_SAVEDFRAME(cx, argc, vp, "(get source)", args, frame);