X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/f9bf01c6616d5ddcf65b13b33cedf9e387ff7a63..refs/heads/master:/runtime/JSWrapperObject.cpp diff --git a/runtime/JSWrapperObject.cpp b/runtime/JSWrapperObject.cpp index 2c39f5c..b6fadad 100644 --- a/runtime/JSWrapperObject.cpp +++ b/runtime/JSWrapperObject.cpp @@ -1,6 +1,6 @@ /* * Copyright (C) 2006 Maks Orlovich - * Copyright (C) 2006, 2009 Apple, Inc. + * Copyright (C) 2006, 2009, 2012 Apple, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -22,15 +22,18 @@ #include "config.h" #include "JSWrapperObject.h" +#include "JSCInlines.h" + namespace JSC { -ASSERT_CLASS_FITS_IN_CELL(JSWrapperObject); +STATIC_ASSERT_IS_TRIVIALLY_DESTRUCTIBLE(JSWrapperObject); -void JSWrapperObject::markChildren(MarkStack& markStack) +void JSWrapperObject::visitChildren(JSCell* cell, SlotVisitor& visitor) { - JSObject::markChildren(markStack); - if (m_internalValue) - markStack.append(m_internalValue); + JSWrapperObject* thisObject = jsCast(cell); + ASSERT_GC_OBJECT_INHERITS(thisObject, info()); + JSObject::visitChildren(thisObject, visitor); + visitor.append(&thisObject->m_internalValue); } } // namespace JSC