Changeset 84835 in webkit


Ignore:
Timestamp:
Apr 25, 2011 4:35:45 PM (13 years ago)
Author:
abarth@webkit.org
Message:

2011-04-25 Adam Barth <abarth@webkit.org>

Reviewed by James Robinson.

ValidationMessage and XMLDocumentParserLibxml2 should play nice with strict OwnPtrs
https://bugs.webkit.org/show_bug.cgi?id=59394

  • dom/XMLDocumentParserLibxml2.cpp: (WebCore::PendingCallbacks::PendingCallbacks): (WebCore::PendingCallbacks::appendStartElementNSCallback): (WebCore::PendingCallbacks::appendEndElementNSCallback): (WebCore::PendingCallbacks::appendCharactersCallback): (WebCore::PendingCallbacks::appendProcessingInstructionCallback): (WebCore::PendingCallbacks::appendCDATABlockCallback): (WebCore::PendingCallbacks::appendCommentCallback): (WebCore::PendingCallbacks::appendInternalSubsetCallback): (WebCore::PendingCallbacks::appendErrorCallback): (WebCore::XMLDocumentParser::XMLDocumentParser):
  • html/ValidationMessage.cpp: (WebCore::ValidationMessage::setMessage): (WebCore::ValidationMessage::setMessageDOMAndStartTimer): (WebCore::ValidationMessage::requestToHideMessage):
Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r84833 r84835  
     12011-04-25  Adam Barth  <abarth@webkit.org>
     2
     3        Reviewed by James Robinson.
     4
     5        ValidationMessage and XMLDocumentParserLibxml2 should play nice with strict OwnPtrs
     6        https://bugs.webkit.org/show_bug.cgi?id=59394
     7
     8        * dom/XMLDocumentParserLibxml2.cpp:
     9        (WebCore::PendingCallbacks::PendingCallbacks):
     10        (WebCore::PendingCallbacks::appendStartElementNSCallback):
     11        (WebCore::PendingCallbacks::appendEndElementNSCallback):
     12        (WebCore::PendingCallbacks::appendCharactersCallback):
     13        (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
     14        (WebCore::PendingCallbacks::appendCDATABlockCallback):
     15        (WebCore::PendingCallbacks::appendCommentCallback):
     16        (WebCore::PendingCallbacks::appendInternalSubsetCallback):
     17        (WebCore::PendingCallbacks::appendErrorCallback):
     18        (WebCore::XMLDocumentParser::XMLDocumentParser):
     19        * html/ValidationMessage.cpp:
     20        (WebCore::ValidationMessage::setMessage):
     21        (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
     22        (WebCore::ValidationMessage::requestToHideMessage):
     23
    1242011-04-25  James Robinson  <jamesr@chromium.org>
    225
  • trunk/Source/WebCore/dom/XMLDocumentParserLibxml2.cpp

    r83406 r84835  
    8181public:
    8282    PendingCallbacks() { }
    83     ~PendingCallbacks()
    84     {
    85         deleteAllValues(m_callbacks);
    86     }
    8783
    8884    void appendStartElementNSCallback(const xmlChar* xmlLocalName, const xmlChar* xmlPrefix, const xmlChar* xmlURI, int nb_namespaces,
    8985                                      const xmlChar** namespaces, int nb_attributes, int nb_defaulted, const xmlChar** attributes)
    9086    {
    91         PendingStartElementNSCallback* callback = new PendingStartElementNSCallback;
     87        OwnPtr<PendingStartElementNSCallback> callback = adoptPtr(new PendingStartElementNSCallback);
    9288
    9389        callback->xmlLocalName = xmlStrdup(xmlLocalName);
     
    114110        }
    115111
    116         m_callbacks.append(callback);
     112        m_callbacks.append(callback.release());
    117113    }
    118114
    119115    void appendEndElementNSCallback()
    120116    {
    121         PendingEndElementNSCallback* callback = new PendingEndElementNSCallback;
    122 
    123         m_callbacks.append(callback);
     117        m_callbacks.append(adoptPtr(new PendingEndElementNSCallback));
    124118    }
    125119
    126120    void appendCharactersCallback(const xmlChar* s, int len)
    127121    {
    128         PendingCharactersCallback* callback = new PendingCharactersCallback;
     122        OwnPtr<PendingCharactersCallback> callback = adoptPtr(new PendingCharactersCallback);
    129123
    130124        callback->s = xmlStrndup(s, len);
    131125        callback->len = len;
    132126
    133         m_callbacks.append(callback);
     127        m_callbacks.append(callback.release());
    134128    }
    135129
    136130    void appendProcessingInstructionCallback(const xmlChar* target, const xmlChar* data)
    137131    {
    138         PendingProcessingInstructionCallback* callback = new PendingProcessingInstructionCallback;
     132        OwnPtr<PendingProcessingInstructionCallback> callback = adoptPtr(new PendingProcessingInstructionCallback);
    139133
    140134        callback->target = xmlStrdup(target);
    141135        callback->data = xmlStrdup(data);
    142136
    143         m_callbacks.append(callback);
     137        m_callbacks.append(callback.release());
    144138    }
    145139
    146140    void appendCDATABlockCallback(const xmlChar* s, int len)
    147141    {
    148         PendingCDATABlockCallback* callback = new PendingCDATABlockCallback;
     142        OwnPtr<PendingCDATABlockCallback> callback = adoptPtr(new PendingCDATABlockCallback);
    149143
    150144        callback->s = xmlStrndup(s, len);
    151145        callback->len = len;
    152146
    153         m_callbacks.append(callback);
     147        m_callbacks.append(callback.release());
    154148    }
    155149
    156150    void appendCommentCallback(const xmlChar* s)
    157151    {
    158         PendingCommentCallback* callback = new PendingCommentCallback;
     152        OwnPtr<PendingCommentCallback> callback = adoptPtr(new PendingCommentCallback);
    159153
    160154        callback->s = xmlStrdup(s);
    161155
    162         m_callbacks.append(callback);
     156        m_callbacks.append(callback.release());
    163157    }
    164158
    165159    void appendInternalSubsetCallback(const xmlChar* name, const xmlChar* externalID, const xmlChar* systemID)
    166160    {
    167         PendingInternalSubsetCallback* callback = new PendingInternalSubsetCallback;
     161        OwnPtr<PendingInternalSubsetCallback> callback = adoptPtr(new PendingInternalSubsetCallback);
    168162
    169163        callback->name = xmlStrdup(name);
     
    171165        callback->systemID = xmlStrdup(systemID);
    172166
    173         m_callbacks.append(callback);
     167        m_callbacks.append(callback.release());
    174168    }
    175169
    176170    void appendErrorCallback(XMLDocumentParser::ErrorType type, const xmlChar* message, int lineNumber, int columnNumber)
    177171    {
    178         PendingErrorCallback* callback = new PendingErrorCallback;
     172        OwnPtr<PendingErrorCallback> callback = adoptPtr(new PendingErrorCallback);
    179173
    180174        callback->message = xmlStrdup(message);
     
    183177        callback->columnNumber = columnNumber;
    184178
    185         m_callbacks.append(callback);
     179        m_callbacks.append(callback.release());
    186180    }
    187181
     
    334328    };
    335329
    336     Deque<PendingCallback*> m_callbacks;
     330    Deque<OwnPtr<PendingCallback> > m_callbacks;
    337331};
    338332// --------------------------------
     
    547541    , m_view(frameView)
    548542    , m_context(0)
    549     , m_pendingCallbacks(new PendingCallbacks)
     543    , m_pendingCallbacks(adoptPtr(new PendingCallbacks))
    550544    , m_currentNode(document)
    551545    , m_sawError(false)
     
    574568    , m_view(0)
    575569    , m_context(0)
    576     , m_pendingCallbacks(new PendingCallbacks)
     570    , m_pendingCallbacks(adoptPtr(new PendingCallbacks))
    577571    , m_currentNode(fragment)
    578572    , m_sawError(false)
  • trunk/Source/WebCore/html/ValidationMessage.cpp

    r83256 r84835  
    7171    m_message = message;
    7272    if (!m_bubble)
    73         m_timer.set(new Timer<ValidationMessage>(this, &ValidationMessage::buildBubbleTree));
     73        m_timer = adoptPtr(new Timer<ValidationMessage>(this, &ValidationMessage::buildBubbleTree));
    7474    else
    75         m_timer.set(new Timer<ValidationMessage>(this, &ValidationMessage::setMessageDOMAndStartTimer));
     75        m_timer = adoptPtr(new Timer<ValidationMessage>(this, &ValidationMessage::setMessageDOMAndStartTimer));
    7676    m_timer->startOneShot(0);
    7777}
     
    100100        m_timer.clear();
    101101    else {
    102         m_timer.set(new Timer<ValidationMessage>(this, &ValidationMessage::deleteBubbleTree));
     102        m_timer = adoptPtr(new Timer<ValidationMessage>(this, &ValidationMessage::deleteBubbleTree));
    103103        m_timer->startOneShot(max(5.0, static_cast<double>(m_message.length()) * magnification / 1000));
    104104    }
     
    149149{
    150150    // We must not modify the DOM tree in this context by the same reason as setMessage().
    151     m_timer.set(new Timer<ValidationMessage>(this, &ValidationMessage::deleteBubbleTree));
     151    m_timer = adoptPtr(new Timer<ValidationMessage>(this, &ValidationMessage::deleteBubbleTree));
    152152    m_timer->startOneShot(0);
    153153}
Note: See TracChangeset for help on using the changeset viewer.