Exemplo n.º 1
0
JSObject* Instance::createRuntimeObject(ExecState* exec)
{
    ASSERT(m_rootObject);
    ASSERT(m_rootObject->isValid());
    if (m_runtimeObject)
        return m_runtimeObject;
    JSLock lock(SilenceAssertionsOnly);
    m_runtimeObject = newRuntimeObject(exec);
    m_rootObject->addRuntimeObject(m_runtimeObject);
    return m_runtimeObject;
}
Exemplo n.º 2
0
JSObject* Instance::createRuntimeObject(ExecState* exec)
{
    ASSERT(m_rootObject);
    ASSERT(m_rootObject->isValid());
    if (RuntimeObject* existingObject = m_runtimeObject.get())
        return existingObject;

    JSLock lock(SilenceAssertionsOnly);
    RuntimeObject* newObject = newRuntimeObject(exec);
    m_runtimeObject.set(exec->globalData(), newObject, 0);
    m_rootObject->addRuntimeObject(exec->globalData(), newObject);
    return newObject;
}
JSObject* Instance::createRuntimeObject(ExecState* exec)
{
    ASSERT(m_rootObject);
    ASSERT(m_rootObject->isValid());
    if (RuntimeObject* existingObject = m_runtimeObject.get())
        return existingObject;

    JSLockHolder lock(exec);
    RuntimeObject* newObject = newRuntimeObject(exec);
    m_runtimeObject = PassWeak<RuntimeObject>(newObject);
    m_rootObject->addRuntimeObject(exec->vm(), newObject);
    return newObject;
}