Changeset 62677 in webkit


Ignore:
Timestamp:
Jul 7, 2010 9:53:49 AM (14 years ago)
Author:
Darin Adler
Message:

2010-07-07 Darin Adler <Darin Adler>

Reviewed by Adam Barth.

More OwnPtr work
https://bugs.webkit.org/show_bug.cgi?id=41727

  • API/JSCallbackObject.h: (JSC::JSCallbackObjectData::setPrivateProperty): Use adoptPtr.
  • API/JSCallbackObjectFunctions.h: (JSC::JSCallbackObject::JSCallbackObject): Ditto.
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::CodeBlock): Ditto.
  • bytecode/CodeBlock.h: (JSC::CodeBlock::createRareDataIfNecessary): Ditto.
  • parser/Nodes.cpp: (JSC::ScopeNode::ScopeNode): Ditto.
  • parser/ParserArena.cpp: (JSC::ParserArena::ParserArena): Ditto.
  • runtime/Arguments.h: (JSC::Arguments::Arguments): Ditto.
  • runtime/Executable.cpp: (JSC::EvalExecutable::compile): Ditto. (JSC::ProgramExecutable::compile): Ditto. (JSC::FunctionExecutable::compileForCall): Ditto. (JSC::FunctionExecutable::compileForConstruct): Ditto. (JSC::FunctionExecutable::reparseExceptionInfo): Ditto. (JSC::EvalExecutable::reparseExceptionInfo): Ditto.
  • runtime/JSArray.cpp: (JSC::JSArray::sort): Ditto.
  • runtime/RegExpConstructor.cpp: (JSC::RegExpConstructor::RegExpConstructor): Ditto.
  • runtime/RegExpObject.cpp: (JSC::RegExpObject::RegExpObject): Ditto.
  • runtime/SmallStrings.cpp: (JSC::SmallStrings::createSingleCharacterString): Ditto. (JSC::SmallStrings::singleCharacterStringRep): Ditto.
  • wtf/unicode/icu/CollatorICU.cpp: (WTF::Collator::userDefault): Use adoptPtr.
  • yarr/RegexInterpreter.cpp: (JSC::Yarr::ByteCompiler::ByteCompiler): Ditto. (JSC::Yarr::ByteCompiler::compile): Ditto. (JSC::Yarr::ByteCompiler::regexBegin): Ditto. (JSC::Yarr::byteCompileRegex): Ditto.
  • yarr/RegexInterpreter.h: (JSC::Yarr::BytecodePattern::BytecodePattern): Ditto.

2010-07-06 Darin Adler <Darin Adler>

Reviewed by Adam Barth.

More OwnPtr work, including making clear set the pointer to 0 before deletion
https://bugs.webkit.org/show_bug.cgi?id=41727

  • WebCore.exp.in: Updated.
  • css/CSSSelector.h: (WebCore::CSSSelector::RareData::RareData): Use adoptPtr. (WebCore::CSSSelector::createRareData): Ditto.
  • dom/SpaceSplitString.h: (WebCore::SpaceSplitString::SpaceSplitString): Ditto. (WebCore::SpaceSplitString::set): Ditto.
  • history/CachedFrame.cpp: (WebCore::CachedFrame::CachedFrame): Ditto. (WebCore::CachedFrame::setCachedFramePlatformData): Ditto.
  • history/CachedFrame.h: Use PassOwnPtr.
  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::CallCacheListenerTask::create): Use adoptPtr.
  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
  • platform/PurgeableBuffer.h: (WebCore::PurgeableBuffer::create): Ditto.
  • platform/graphics/GlyphMetricsMap.h: (WebCore::::locatePageSlowCase): Ditto.
  • platform/graphics/GraphicsLayer.h: (WebCore::AnimationValue::AnimationValue): Ditto. (WebCore::TransformAnimationValue::TransformAnimationValue): Ditto.
  • platform/graphics/MediaPlayer.h: (WebCore::MediaPlayer::create): Ditto.
  • platform/graphics/SimpleFontData.h: (WebCore::SimpleFontData::boundsForGlyph): Ditto.
  • platform/mac/PurgeableBufferMac.cpp: (WebCore::PurgeableBuffer::create): Ditto.
  • rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::setHorizontalOverflowPositions): Ditto. (WebCore::InlineFlowBox::setVerticalOverflowPositions): Ditto.
  • rendering/RootInlineBox.h: (WebCore::RootInlineBox::floats): Ditto.
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::inheritAnimations): Ditto. (WebCore::InheritedFlags::inheritTransitions): Ditto.
  • rendering/style/SVGRenderStyleDefs.h: Use PassOwnPtr.
Location:
trunk
Files:
34 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/API/JSCallbackObject.h

    r60708 r62677  
    11/*
    2  * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
     2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved.
    33 * Copyright (C) 2007 Eric Seidel <eric@webkit.org>
    44 *
     
    3131#include "JSValueRef.h"
    3232#include "JSObject.h"
     33#include <wtf/PassOwnPtr.h>
    3334
    3435namespace JSC {
     
    5758    {
    5859        if (!m_privateProperties)
    59             m_privateProperties.set(new JSPrivatePropertyMap);
     60            m_privateProperties = adoptPtr(new JSPrivatePropertyMap);
    6061        m_privateProperties->setPrivateProperty(propertyName, value);
    6162    }
  • trunk/JavaScriptCore/API/JSCallbackObjectFunctions.h

    r60762 r62677  
    5353JSCallbackObject<Base>::JSCallbackObject(ExecState* exec, JSGlobalObject* globalObject, NonNullPassRefPtr<Structure> structure, JSClassRef jsClass, void* data)
    5454    : Base(globalObject, structure)
    55     , m_callbackObjectData(new JSCallbackObjectData(data, jsClass))
     55    , m_callbackObjectData(adoptPtr(new JSCallbackObjectData(data, jsClass)))
    5656{
    5757    init(exec);
     
    6363JSCallbackObject<Base>::JSCallbackObject(JSClassRef jsClass, NonNullPassRefPtr<Structure> structure)
    6464    : Base(structure)
    65     , m_callbackObjectData(new JSCallbackObjectData(0, jsClass))
     65    , m_callbackObjectData(adoptPtr(new JSCallbackObjectData(0, jsClass)))
    6666{
    6767    ASSERT(Base::isGlobalObject());
  • trunk/JavaScriptCore/ChangeLog

    r62674 r62677  
     12010-07-07  Darin Adler  <darin@apple.com>
     2
     3        Reviewed by Adam Barth.
     4
     5        More OwnPtr work
     6        https://bugs.webkit.org/show_bug.cgi?id=41727
     7
     8        * API/JSCallbackObject.h:
     9        (JSC::JSCallbackObjectData::setPrivateProperty): Use adoptPtr.
     10        * API/JSCallbackObjectFunctions.h:
     11        (JSC::JSCallbackObject::JSCallbackObject): Ditto.
     12        * bytecode/CodeBlock.cpp:
     13        (JSC::CodeBlock::CodeBlock): Ditto.
     14        * bytecode/CodeBlock.h:
     15        (JSC::CodeBlock::createRareDataIfNecessary): Ditto.
     16        * parser/Nodes.cpp:
     17        (JSC::ScopeNode::ScopeNode): Ditto.
     18        * parser/ParserArena.cpp:
     19        (JSC::ParserArena::ParserArena): Ditto.
     20        * runtime/Arguments.h:
     21        (JSC::Arguments::Arguments): Ditto.
     22        * runtime/Executable.cpp:
     23        (JSC::EvalExecutable::compile): Ditto.
     24        (JSC::ProgramExecutable::compile): Ditto.
     25        (JSC::FunctionExecutable::compileForCall): Ditto.
     26        (JSC::FunctionExecutable::compileForConstruct): Ditto.
     27        (JSC::FunctionExecutable::reparseExceptionInfo): Ditto.
     28        (JSC::EvalExecutable::reparseExceptionInfo): Ditto.
     29        * runtime/JSArray.cpp:
     30        (JSC::JSArray::sort): Ditto.
     31        * runtime/RegExpConstructor.cpp:
     32        (JSC::RegExpConstructor::RegExpConstructor): Ditto.
     33        * runtime/RegExpObject.cpp:
     34        (JSC::RegExpObject::RegExpObject): Ditto.
     35        * runtime/SmallStrings.cpp:
     36        (JSC::SmallStrings::createSingleCharacterString): Ditto.
     37        (JSC::SmallStrings::singleCharacterStringRep): Ditto.
     38
     39        * wtf/unicode/icu/CollatorICU.cpp:
     40        (WTF::Collator::userDefault): Use adoptPtr.
     41        * yarr/RegexInterpreter.cpp:
     42        (JSC::Yarr::ByteCompiler::ByteCompiler): Ditto.
     43        (JSC::Yarr::ByteCompiler::compile): Ditto.
     44        (JSC::Yarr::ByteCompiler::regexBegin): Ditto.
     45        (JSC::Yarr::byteCompileRegex): Ditto.
     46        * yarr/RegexInterpreter.h:
     47        (JSC::Yarr::BytecodePattern::BytecodePattern): Ditto.
     48
    1492010-07-07  Darin Adler  <darin@apple.com>
    250
  • trunk/JavaScriptCore/bytecode/CodeBlock.cpp

    r62612 r62677  
    13631363    , m_sourceOffset(sourceOffset)
    13641364    , m_symbolTable(symTab)
    1365     , m_exceptionInfo(new ExceptionInfo)
     1365    , m_exceptionInfo(adoptPtr(new ExceptionInfo))
    13661366{
    13671367    ASSERT(m_source);
  • trunk/JavaScriptCore/bytecode/CodeBlock.h

    r62612 r62677  
    531531        {
    532532            if (!m_rareData)
    533                 m_rareData.set(new RareData);
     533                m_rareData = adoptPtr(new RareData);
    534534        }
    535535
  • trunk/JavaScriptCore/parser/Nodes.cpp

    r51882 r62677  
    9999    : StatementNode(globalData)
    100100    , ParserArenaRefCounted(globalData)
    101     , m_data(new ScopeNodeData(globalData->parser->arena(), children, varStack, funcStack, numConstants))
     101    , m_data(adoptPtr(new ScopeNodeData(globalData->parser->arena(), children, varStack, funcStack, numConstants)))
    102102    , m_features(features)
    103103    , m_source(source)
  • trunk/JavaScriptCore/parser/ParserArena.cpp

    r47664 r62677  
    11/*
    2  * Copyright (C) 2009 Apple Inc. All rights reserved.
     2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2828
    2929#include "Nodes.h"
     30#include <wtf/PassOwnPtr.h>
    3031
    3132namespace JSC {
     
    3435    : m_freeableMemory(0)
    3536    , m_freeablePoolEnd(0)
    36     , m_identifierArena(new IdentifierArena)
     37    , m_identifierArena(adoptPtr(new IdentifierArena))
    3738{
    3839}
  • trunk/JavaScriptCore/runtime/Arguments.h

    r62432 r62677  
    140140    inline Arguments::Arguments(CallFrame* callFrame)
    141141        : JSObject(callFrame->lexicalGlobalObject()->argumentsStructure())
    142         , d(new ArgumentsData)
     142        , d(adoptPtr(new ArgumentsData))
    143143    {
    144144        JSFunction* callee;
     
    177177    inline Arguments::Arguments(CallFrame* callFrame, NoParametersType)
    178178        : JSObject(callFrame->lexicalGlobalObject()->argumentsStructure())
    179         , d(new ArgumentsData)
     179        , d(adoptPtr(new ArgumentsData))
    180180    {
    181181        ASSERT(!asFunction(callFrame->callee())->jsExecutable()->parameterCount());
  • trunk/JavaScriptCore/runtime/Executable.cpp

    r62612 r62677  
    7878    ASSERT(!m_evalCodeBlock);
    7979    m_evalCodeBlock = new EvalCodeBlock(this, globalObject, source().provider(), scopeChain.localDepth());
    80     OwnPtr<BytecodeGenerator> generator(new BytecodeGenerator(evalNode.get(), globalObject->debugger(), scopeChain, m_evalCodeBlock->symbolTable(), m_evalCodeBlock));
     80    OwnPtr<BytecodeGenerator> generator(adoptPtr(new BytecodeGenerator(evalNode.get(), globalObject->debugger(), scopeChain, m_evalCodeBlock->symbolTable(), m_evalCodeBlock)));
    8181    generator->generate();
    8282   
     
    113113    ASSERT(!m_programCodeBlock);
    114114    m_programCodeBlock = new ProgramCodeBlock(this, GlobalCode, globalObject, source().provider());
    115     OwnPtr<BytecodeGenerator> generator(new BytecodeGenerator(programNode.get(), globalObject->debugger(), scopeChain, &globalObject->symbolTable(), m_programCodeBlock));
     115    OwnPtr<BytecodeGenerator> generator(adoptPtr(new BytecodeGenerator(programNode.get(), globalObject->debugger(), scopeChain, &globalObject->symbolTable(), m_programCodeBlock)));
    116116    generator->generate();
    117117
     
    136136    ASSERT(!m_codeBlockForCall);
    137137    m_codeBlockForCall = new FunctionCodeBlock(this, FunctionCode, source().provider(), source().startOffset(), false);
    138     OwnPtr<BytecodeGenerator> generator(new BytecodeGenerator(body.get(), globalObject->debugger(), scopeChain, m_codeBlockForCall->symbolTable(), m_codeBlockForCall));
     138    OwnPtr<BytecodeGenerator> generator(adoptPtr(new BytecodeGenerator(body.get(), globalObject->debugger(), scopeChain, m_codeBlockForCall->symbolTable(), m_codeBlockForCall)));
    139139    generator->generate();
    140140    m_numParametersForCall = m_codeBlockForCall->m_numParameters;
     
    163163    ASSERT(!m_codeBlockForConstruct);
    164164    m_codeBlockForConstruct = new FunctionCodeBlock(this, FunctionCode, source().provider(), source().startOffset(), true);
    165     OwnPtr<BytecodeGenerator> generator(new BytecodeGenerator(body.get(), globalObject->debugger(), scopeChain, m_codeBlockForConstruct->symbolTable(), m_codeBlockForConstruct));
     165    OwnPtr<BytecodeGenerator> generator(adoptPtr(new BytecodeGenerator(body.get(), globalObject->debugger(), scopeChain, m_codeBlockForConstruct->symbolTable(), m_codeBlockForConstruct)));
    166166    generator->generate();
    167167    m_numParametersForConstruct = m_codeBlockForConstruct->m_numParameters;
     
    254254    JSGlobalObject* globalObject = scopeChain.globalObject();
    255255
    256     OwnPtr<CodeBlock> newCodeBlock(new FunctionCodeBlock(this, FunctionCode, source().provider(), source().startOffset(), codeBlock->m_isConstructor));
     256    OwnPtr<CodeBlock> newCodeBlock(adoptPtr(new FunctionCodeBlock(this, FunctionCode, source().provider(), source().startOffset(), codeBlock->m_isConstructor)));
    257257    globalData->functionCodeBlockBeingReparsed = newCodeBlock.get();
    258258
    259     OwnPtr<BytecodeGenerator> generator(new BytecodeGenerator(newFunctionBody.get(), globalObject->debugger(), scopeChain, newCodeBlock->symbolTable(), newCodeBlock.get()));
     259    OwnPtr<BytecodeGenerator> generator(adoptPtr(new BytecodeGenerator(newFunctionBody.get(), globalObject->debugger(), scopeChain, newCodeBlock->symbolTable(), newCodeBlock.get())));
    260260    generator->setRegeneratingForExceptionInfo(static_cast<FunctionCodeBlock*>(codeBlock));
    261261    generator->generate();
     
    287287    JSGlobalObject* globalObject = scopeChain.globalObject();
    288288
    289     OwnPtr<EvalCodeBlock> newCodeBlock(new EvalCodeBlock(this, globalObject, source().provider(), scopeChain.localDepth()));
    290 
    291     OwnPtr<BytecodeGenerator> generator(new BytecodeGenerator(newEvalBody.get(), globalObject->debugger(), scopeChain, newCodeBlock->symbolTable(), newCodeBlock.get()));
     289    OwnPtr<EvalCodeBlock> newCodeBlock(adoptPtr(new EvalCodeBlock(this, globalObject, source().provider(), scopeChain.localDepth())));
     290
     291    OwnPtr<BytecodeGenerator> generator(adoptPtr(new BytecodeGenerator(newEvalBody.get(), globalObject->debugger(), scopeChain, newCodeBlock->symbolTable(), newCodeBlock.get())));
    292292    generator->setRegeneratingForExceptionInfo(static_cast<EvalCodeBlock*>(codeBlock));
    293293    generator->generate();
  • trunk/JavaScriptCore/runtime/JSArray.cpp

    r62432 r62677  
    848848
    849849    if (callType == CallTypeJS)
    850         tree.abstractor().m_cachedCall.set(new CachedCall(exec, asFunction(compareFunction), 2, exec->exceptionSlot()));
     850        tree.abstractor().m_cachedCall = adoptPtr(new CachedCall(exec, asFunction(compareFunction), 2, exec->exceptionSlot()));
    851851
    852852    if (!tree.abstractor().m_nodes.begin()) {
  • trunk/JavaScriptCore/runtime/RegExpConstructor.cpp

    r61623 r62677  
    9696RegExpConstructor::RegExpConstructor(ExecState* exec, JSGlobalObject* globalObject, NonNullPassRefPtr<Structure> structure, RegExpPrototype* regExpPrototype)
    9797    : InternalFunction(&exec->globalData(), globalObject, structure, Identifier(exec, "RegExp"))
    98     , d(new RegExpConstructorPrivate)
     98    , d(adoptPtr(new RegExpConstructorPrivate))
    9999{
    100100    // ECMA 15.10.5.1 RegExp.prototype
  • trunk/JavaScriptCore/runtime/RegExpObject.cpp

    r60762 r62677  
    6262RegExpObject::RegExpObject(JSGlobalObject* globalObject, NonNullPassRefPtr<Structure> structure, NonNullPassRefPtr<RegExp> regExp)
    6363    : JSObjectWithGlobalObject(globalObject, structure)
    64     , d(new RegExpObjectData(regExp, 0))
     64    , d(adoptPtr(new RegExpObjectData(regExp, 0)))
    6565{
    6666}
  • trunk/JavaScriptCore/runtime/SmallStrings.cpp

    r58026 r62677  
    11/*
    2  * Copyright (C) 2008 Apple Inc. All Rights Reserved.
     2 * Copyright (C) 2008, 2010 Apple Inc. All Rights Reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2929#include "JSGlobalObject.h"
    3030#include "JSString.h"
    31 
    3231#include <wtf/Noncopyable.h>
     32#include <wtf/PassOwnPtr.h>
    3333
    3434namespace JSC {
     35
    3536static const unsigned numCharactersToStore = 0x100;
    3637
     
    127128{
    128129    if (!m_storage)
    129         m_storage.set(new SmallStringsStorage);
     130        m_storage = adoptPtr(new SmallStringsStorage);
    130131    ASSERT(!m_singleCharacterStrings[character]);
    131132    m_singleCharacterStrings[character] = new (globalData) JSString(globalData, m_storage->rep(character), JSString::HasOtherOwner);
     
    135136{
    136137    if (!m_storage)
    137         m_storage.set(new SmallStringsStorage);
     138        m_storage = adoptPtr(new SmallStringsStorage);
    138139    return m_storage->rep(character);
    139140}
  • trunk/JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp

    r55120 r62677  
    7070#endif
    7171    char buf[256];
    72     if (collationOrder) {
    73         CFStringGetCString(collationOrder, buf, sizeof(buf), kCFStringEncodingASCII);
    74         return new Collator(buf);
    75     } else
    76         return new Collator("");
     72    if (!collationOrder)
     73        return adoptPtr(new Collator(""));
     74    CFStringGetCString(collationOrder, buf, sizeof(buf), kCFStringEncodingASCII);
     75    return adoptPtr(new Collator(buf));
    7776#else
    78     return new Collator(0);
     77    return adoptPtr(new Collator(0));
    7978#endif
    8079}
  • trunk/JavaScriptCore/yarr/RegexInterpreter.cpp

    r62386 r62677  
    12361236        : m_pattern(pattern)
    12371237    {
    1238         m_bodyDisjunction = 0;
    12391238        m_currentAlternativeIndex = 0;
    12401239    }
    12411240
    1242     BytecodePattern* compile()
     1241    PassOwnPtr<BytecodePattern> compile()
    12431242    {
    12441243        regexBegin(m_pattern.m_numSubpatterns, m_pattern.m_body->m_callFrameSize);
     
    12461245        regexEnd();
    12471246
    1248         return new BytecodePattern(m_bodyDisjunction, m_allParenthesesInfo, m_pattern);
     1247        return adoptPtr(new BytecodePattern(m_bodyDisjunction.release(), m_allParenthesesInfo, m_pattern));
    12491248    }
    12501249
     
    14491448    void regexBegin(unsigned numSubpatterns, unsigned callFrameSize)
    14501449    {
    1451         m_bodyDisjunction = new ByteDisjunction(numSubpatterns, callFrameSize);
     1450        m_bodyDisjunction = adoptPtr(new ByteDisjunction(numSubpatterns, callFrameSize));
    14521451        m_bodyDisjunction->terms.append(ByteTerm::BodyAlternativeBegin());
    14531452        m_bodyDisjunction->terms[0].frameLocation = 0;
     
    15691568private:
    15701569    RegexPattern& m_pattern;
    1571     ByteDisjunction* m_bodyDisjunction;
     1570    OwnPtr<ByteDisjunction> m_bodyDisjunction;
    15721571    unsigned m_currentAlternativeIndex;
    15731572    Vector<ParenthesesStackEntry> m_parenthesesStack;
     
    15761575
    15771576
    1578 BytecodePattern* byteCompileRegex(const UString& patternString, unsigned& numSubpatterns, const char*& error, bool ignoreCase, bool multiline)
     1577PassOwnPtr<BytecodePattern> byteCompileRegex(const UString& patternString, unsigned& numSubpatterns, const char*& error, bool ignoreCase, bool multiline)
    15791578{
    15801579    RegexPattern pattern(ignoreCase, multiline);
    15811580
    15821581    if ((error = compileRegex(patternString, pattern)))
    1583         return 0;
     1582        return PassOwnPtr<BytecodePattern>();
    15841583
    15851584    numSubpatterns = pattern.m_numSubpatterns;
  • trunk/JavaScriptCore/yarr/RegexInterpreter.h

    r55633 r62677  
    11/*
    2  * Copyright (C) 2009 Apple Inc. All rights reserved.
     2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    3131#include "RegexParser.h"
    3232#include "RegexPattern.h"
     33#include <wtf/PassOwnPtr.h>
    3334#include <wtf/unicode/Unicode.h>
    3435
     
    293294
    294295struct BytecodePattern : FastAllocBase {
    295     BytecodePattern(ByteDisjunction* body, Vector<ByteDisjunction*> allParenthesesInfo, RegexPattern& pattern)
     296    BytecodePattern(PassOwnPtr<ByteDisjunction> body, Vector<ByteDisjunction*> allParenthesesInfo, RegexPattern& pattern)
    296297        : m_body(body)
    297298        , m_ignoreCase(pattern.m_ignoreCase)
     
    326327};
    327328
    328 BytecodePattern* byteCompileRegex(const UString& pattern, unsigned& numSubpatterns, const char*& error, bool ignoreCase = false, bool multiline = false);
     329PassOwnPtr<BytecodePattern> byteCompileRegex(const UString& pattern, unsigned& numSubpatterns, const char*& error, bool ignoreCase = false, bool multiline = false);
    329330int interpretRegex(BytecodePattern* v_regex, const UChar* input, unsigned start, unsigned length, int* output);
    330331
  • trunk/WebCore/ChangeLog

    r62676 r62677  
     12010-07-06  Darin Adler  <darin@apple.com>
     2
     3        Reviewed by Adam Barth.
     4
     5        More OwnPtr work, including making clear set the pointer to 0 before deletion
     6        https://bugs.webkit.org/show_bug.cgi?id=41727
     7
     8        * WebCore.exp.in: Updated.
     9
     10        * css/CSSSelector.h:
     11        (WebCore::CSSSelector::RareData::RareData): Use adoptPtr.
     12        (WebCore::CSSSelector::createRareData): Ditto.
     13        * dom/SpaceSplitString.h:
     14        (WebCore::SpaceSplitString::SpaceSplitString): Ditto.
     15        (WebCore::SpaceSplitString::set): Ditto.
     16        * history/CachedFrame.cpp:
     17        (WebCore::CachedFrame::CachedFrame): Ditto.
     18        (WebCore::CachedFrame::setCachedFramePlatformData): Ditto.
     19
     20        * history/CachedFrame.h: Use PassOwnPtr.
     21
     22        * loader/appcache/ApplicationCacheGroup.cpp:
     23        (WebCore::CallCacheListenerTask::create): Use adoptPtr.
     24        * loader/appcache/ApplicationCacheStorage.cpp:
     25        (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
     26        * platform/PurgeableBuffer.h:
     27        (WebCore::PurgeableBuffer::create): Ditto.
     28        * platform/graphics/GlyphMetricsMap.h:
     29        (WebCore::::locatePageSlowCase): Ditto.
     30        * platform/graphics/GraphicsLayer.h:
     31        (WebCore::AnimationValue::AnimationValue): Ditto.
     32        (WebCore::TransformAnimationValue::TransformAnimationValue): Ditto.
     33        * platform/graphics/MediaPlayer.h:
     34        (WebCore::MediaPlayer::create): Ditto.
     35        * platform/graphics/SimpleFontData.h:
     36        (WebCore::SimpleFontData::boundsForGlyph): Ditto.
     37        * platform/mac/PurgeableBufferMac.cpp:
     38        (WebCore::PurgeableBuffer::create): Ditto.
     39        * rendering/InlineFlowBox.h:
     40        (WebCore::InlineFlowBox::setHorizontalOverflowPositions): Ditto.
     41        (WebCore::InlineFlowBox::setVerticalOverflowPositions): Ditto.
     42        * rendering/RootInlineBox.h:
     43        (WebCore::RootInlineBox::floats): Ditto.
     44        * rendering/style/RenderStyle.h:
     45        (WebCore::InheritedFlags::inheritAnimations): Ditto.
     46        (WebCore::InheritedFlags::inheritTransitions): Ditto.
     47
     48        * rendering/style/SVGRenderStyleDefs.h: Use PassOwnPtr.
     49
    1502010-07-07  Sam Weinig  <sam@webkit.org>
    251
  • trunk/WebCore/WebCore.exp.in

    r62676 r62677  
    143143__ZN7WebCore11BitmapImageC1EP7CGImagePNS_13ImageObserverE
    144144__ZN7WebCore11CachedFrame23cachedFramePlatformDataEv
    145 __ZN7WebCore11CachedFrame26setCachedFramePlatformDataEPNS_23CachedFramePlatformDataE
     145__ZN7WebCore11CachedFrame26setCachedFramePlatformDataEN3WTF10PassOwnPtrINS_23CachedFramePlatformDataEEE
    146146__ZN7WebCore11EditCommand7reapplyEv
    147147__ZN7WebCore11EditCommand7unapplyEv
  • trunk/WebCore/css/CSSSelector.h

    r61752 r62677  
    2727#include <wtf/Noncopyable.h>
    2828#include <wtf/OwnPtr.h>
     29#include <wtf/PassOwnPtr.h>
    2930
    3031namespace WebCore {
     
    284285
    285286        struct RareData : Noncopyable {
    286             RareData(CSSSelector* tagHistory)
     287            RareData(PassOwnPtr<CSSSelector> tagHistory)
    287288                : m_a(0)
    288289                , m_b(0)
    289290                , m_tagHistory(tagHistory)
    290                 , m_simpleSelector(0)
    291291                , m_attribute(anyQName())
    292292                , m_argument(nullAtom)
     
    309309            if (m_hasRareData)
    310310                return;
    311             m_data.m_rareData = new RareData(m_data.m_tagHistory);
     311            m_data.m_rareData = new RareData(adoptPtr(m_data.m_tagHistory));
    312312            m_hasRareData = true;
    313313        }
  • trunk/WebCore/dom/SpaceSplitString.h

    r51902 r62677  
    11/*
    2  * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
     2 * Copyright (C) 2007, 2008, 2010 Apple Inc. All rights reserved.
    33 *
    44 * This library is free software; you can redistribute it and/or
     
    2424#include "AtomicString.h"
    2525#include <wtf/OwnPtr.h>
     26#include <wtf/PassOwnPtr.h>
    2627#include <wtf/Vector.h>
    2728
     
    6566    public:
    6667        SpaceSplitString() { }
    67         SpaceSplitString(const String& string, bool shouldFoldCase) : m_data(new SpaceSplitStringData(string, shouldFoldCase)) { }
     68        SpaceSplitString(const String& string, bool shouldFoldCase) : m_data(adoptPtr(new SpaceSplitStringData(string, shouldFoldCase))) { }
    6869
    69         void set(const String& string, bool shouldFoldCase) { m_data.set(new SpaceSplitStringData(string, shouldFoldCase)); }
     70        void set(const String& string, bool shouldFoldCase) { m_data = adoptPtr(new SpaceSplitStringData(string, shouldFoldCase)); }
    7071        void clear() { m_data.clear(); }
    7172
  • trunk/WebCore/history/CachedFrame.cpp

    r61801 r62677  
    125125    // Active DOM objects must be suspended before we cached the frame script data
    126126    m_document->suspendActiveDOMObjects();
    127     m_cachedFrameScriptData.set(new ScriptCachedFrameData(frame));
     127    m_cachedFrameScriptData = adoptPtr(new ScriptCachedFrameData(frame));
    128128   
    129129    // Custom scrollbar renderers will get reattached when the document comes out of the page cache
     
    233233}
    234234
    235 void CachedFrame::setCachedFramePlatformData(CachedFramePlatformData* data)
    236 {
    237     m_cachedFramePlatformData.set(data);
     235void CachedFrame::setCachedFramePlatformData(PassOwnPtr<CachedFramePlatformData> data)
     236{
     237    m_cachedFramePlatformData = data;
    238238}
    239239
  • trunk/WebCore/history/CachedFrame.h

    r53274 r62677  
    11/*
    2  * Copyright (C) 2009 Apple Inc. All rights reserved.
     2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2929#include "KURL.h"
    3030#include "ScriptCachedFrameData.h"
     31#include <wtf/PassOwnPtr.h>
    3132#include <wtf/RefPtr.h>
    3233
     
    7677    void destroy();
    7778
    78     void setCachedFramePlatformData(CachedFramePlatformData* data);
     79    void setCachedFramePlatformData(PassOwnPtr<CachedFramePlatformData>);
    7980    CachedFramePlatformData* cachedFramePlatformData();
    8081
  • trunk/WebCore/loader/appcache/ApplicationCacheGroup.cpp

    r62505 r62677  
    10281028    static PassOwnPtr<CallCacheListenerTask> create(PassRefPtr<DocumentLoader> loader, ApplicationCacheHost::EventID eventID)
    10291029    {
    1030         return new CallCacheListenerTask(loader, eventID);
     1030        return adoptPtr(new CallCacheListenerTask(loader, eventID));
    10311031    }
    10321032
  • trunk/WebCore/loader/appcache/ApplicationCacheStorage.cpp

    r60729 r62677  
    10001000   
    10011001    // Now create a new cache group.
    1002     OwnPtr<ApplicationCacheGroup> groupCopy(new ApplicationCacheGroup(cache->group()->manifestURL(), true));
     1002    OwnPtr<ApplicationCacheGroup> groupCopy(adoptPtr(new ApplicationCacheGroup(cache->group()->manifestURL(), true)));
    10031003   
    10041004    groupCopy->setNewestCache(cacheCopy);
  • trunk/WebCore/platform/PurgeableBuffer.h

    r52791 r62677  
    11/*
    2  * Copyright (C) 2008 Apple Inc. All Rights Reserved.
     2 * Copyright (C) 2008, 2010 Apple Inc. All Rights Reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    2828
    2929#include <wtf/Noncopyable.h>
     30#include <wtf/PassOwnPtr.h>
    3031#include <wtf/Vector.h>
    3132
     
    3435    class PurgeableBuffer : public Noncopyable {
    3536    public:
    36         static PurgeableBuffer* create(const char* data, size_t);
    37         static PurgeableBuffer* create(const Vector<char>& v) { return create(v.data(), v.size()); }
     37        static PassOwnPtr<PurgeableBuffer> create(const char* data, size_t);
     38        static PassOwnPtr<PurgeableBuffer> create(const Vector<char>& vector) { return create(vector.data(), vector.size()); }
    3839       
    3940        ~PurgeableBuffer();
     
    6465
    6566#if !OS(DARWIN) || defined(BUILDING_ON_TIGER) || PLATFORM(QT) || PLATFORM(GTK)
    66     inline PurgeableBuffer* PurgeableBuffer::create(const char*, size_t) { return 0; }
     67    inline PassOwnPtr<PurgeableBuffer> PurgeableBuffer::create(const char*, size_t) { return PassOwnPtr<PurgeableBuffer>(); }
    6768    inline PurgeableBuffer::~PurgeableBuffer() { }
    6869    inline const char* PurgeableBuffer::data() const { return 0; }
  • trunk/WebCore/platform/graphics/GlyphMetricsMap.h

    r62367 r62677  
    114114                return page;
    115115        } else
    116             m_pages.set(new HashMap<int, GlyphMetricsPage*>);
     116            m_pages = adoptPtr(new HashMap<int, GlyphMetricsPage*>);
    117117        page = new GlyphMetricsPage;
    118118        m_pages->set(pageNumber, page);
  • trunk/WebCore/platform/graphics/GraphicsLayer.h

    r62286 r62677  
    9595    AnimationValue(float keyTime, const TimingFunction* timingFunction = 0)
    9696        : m_keyTime(keyTime)
    97         , m_timingFunction(0)
    9897    {
    9998        if (timingFunction)
    100             m_timingFunction.set(new TimingFunction(*timingFunction));
     99            m_timingFunction = adoptPtr(new TimingFunction(*timingFunction));
    101100    }
    102101   
     
    133132    {
    134133        if (value)
    135             m_value.set(new TransformOperations(*value));
     134            m_value = adoptPtr(new TransformOperations(*value));
    136135    }
    137136
  • trunk/WebCore/platform/graphics/MediaPlayer.h

    r59915 r62677  
    145145    static PassOwnPtr<MediaPlayer> create(MediaPlayerClient* client)
    146146    {
    147         return new MediaPlayer(client);
     147        return adoptPtr(new MediaPlayer(client));
    148148    }
    149149    virtual ~MediaPlayer();
  • trunk/WebCore/platform/graphics/SimpleFontData.h

    r59577 r62677  
    3232#include "TypesettingFeatures.h"
    3333#include <wtf/OwnPtr.h>
     34#include <wtf/PassOwnPtr.h>
    3435
    3536#if USE(ATSUI)
     
    265266    bounds = platformBoundsForGlyph(glyph);
    266267    if (!m_glyphToBoundsMap)
    267         m_glyphToBoundsMap.set(new GlyphMetricsMap<FloatRect>());
     268        m_glyphToBoundsMap = adoptPtr(new GlyphMetricsMap<FloatRect>);
    268269    m_glyphToBoundsMap->setMetricsForGlyph(glyph, bounds);
    269270    return bounds;
  • trunk/WebCore/platform/mac/PurgeableBufferMac.cpp

    r55483 r62677  
    5151}
    5252
    53 PurgeableBuffer* PurgeableBuffer::create(const char* data, size_t size)
     53PassOwnPtr<PurgeableBuffer> PurgeableBuffer::create(const char* data, size_t size)
    5454{
    5555    if (size < minPurgeableBufferSize)
    56         return 0;
     56        return PassOwnPtr<PurgeableBuffer>();
    5757
    5858    vm_address_t buffer = 0;
     
    6161    ASSERT(ret == KERN_SUCCESS);
    6262    if (ret != KERN_SUCCESS)
    63         return 0;
     63        return PassOwnPtr<PurgeableBuffer>();
    6464
    6565    ret = vm_copy(mach_task_self(), reinterpret_cast<vm_address_t>(data), size, buffer);
     
    6868    if (ret != KERN_SUCCESS) {
    6969        vm_deallocate(mach_task_self(), buffer, size);
    70         return 0;
     70        return PassOwnPtr<PurgeableBuffer>();
    7171    }
    7272
    73     return new PurgeableBuffer(reinterpret_cast<char*>(buffer), size);
     73    return adoptPtr(new PurgeableBuffer(reinterpret_cast<char*>(buffer), size));
    7474}
    7575
  • trunk/WebCore/rendering/InlineFlowBox.h

    r62104 r62677  
    194194        if (leftLayoutOverflow == m_x && rightLayoutOverflow == m_x + m_width && leftVisualOverflow == m_x && rightVisualOverflow == m_x + m_width)
    195195            return;
    196         m_overflow.set(new RenderOverflow(IntRect(m_x, m_y, m_width, m_renderer->style(m_firstLine)->font().height())));   
     196        m_overflow = adoptPtr(new RenderOverflow(IntRect(m_x, m_y, m_width, m_renderer->style(m_firstLine)->font().height())));   
    197197    }
    198198
     
    208208        if (topLayoutOverflow == m_y && bottomLayoutOverflow == m_y + boxHeight && topVisualOverflow == m_y && bottomVisualOverflow == m_y + boxHeight)
    209209            return;
    210         m_overflow.set(new RenderOverflow(IntRect(m_x, m_y, m_width, boxHeight)));
     210        m_overflow = adoptPtr(new RenderOverflow(IntRect(m_x, m_y, m_width, boxHeight)));
    211211    }
    212212
  • trunk/WebCore/rendering/RootInlineBox.h

    r62104 r62677  
    119119        ASSERT(!isDirty());
    120120        if (!m_floats)
    121             m_floats.set(new Vector<RenderBox*>());
     121            m_floats= adoptPtr(new Vector<RenderBox*>);
    122122        return *m_floats;
    123123    }
  • trunk/WebCore/rendering/style/RenderStyle.h

    r62035 r62677  
    10261026    }
    10271027
    1028     void inheritAnimations(const AnimationList* parent) { rareNonInheritedData.access()->m_animations.set(parent ? new AnimationList(*parent) : 0); }
    1029     void inheritTransitions(const AnimationList* parent) { rareNonInheritedData.access()->m_transitions.set(parent ? new AnimationList(*parent) : 0); }
     1028    void inheritAnimations(const AnimationList* parent) { rareNonInheritedData.access()->m_animations = parent ? adoptPtr(new AnimationList(*parent)) : PassOwnPtr<AnimationList>(); }
     1029    void inheritTransitions(const AnimationList* parent) { rareNonInheritedData.access()->m_transitions = parent ? adoptPtr(new AnimationList(*parent)) : PassOwnPtr<AnimationList>(); }
    10301030    void adjustAnimations();
    10311031    void adjustTransitions();
  • trunk/WebCore/rendering/style/SVGRenderStyleDefs.h

    r60885 r62677  
    3030
    3131#if ENABLE(SVG)
     32
    3233#include "Color.h"
    3334#include "PlatformString.h"
    3435#include "ShadowData.h"
    3536#include <wtf/OwnPtr.h>
     37#include <wtf/PassOwnPtr.h>
    3638#include <wtf/RefCounted.h>
    3739#include <wtf/RefPtr.h>
     
    6870#define SVG_RS_DEFINE_ATTRIBUTE_DATAREF_WITH_INITIAL_OWNPTR(Data, Group, Variable, Type, Name, Initial) \
    6971    Data* Name() const { return Group->Variable.get(); } \
    70     void set##Type(Data* obj) { \
    71         Group.access()->Variable.set(obj); \
     72    void set##Type(PassOwnPtr<Data> obj) { \
     73        Group.access()->Variable = obj; \
    7274    } \
    7375    static Data* initial##Type() { return Initial; }
     
    301303
    302304#endif // ENABLE(SVG)
     305
    303306#endif // SVGRenderStyleDefs_h
Note: See TracChangeset for help on using the changeset viewer.