Title: [116904] trunk/Source/WebCore
- Revision
- 116904
- Author
- [email protected]
- Date
- 2012-05-13 16:25:04 -0700 (Sun, 13 May 2012)
Log Message
Dangling node to ID maps vector uses raw pointers, but should use OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=86299
Reviewed by Pavel Feldman.
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::releaseDanglingNodes): Removed now-unneeded call
to deleteAllValues since the clear function now takes care of that.
(WebCore::InspectorDOMAgent::pushNodePathToFrontend): Added code that uses
adoptPtr and release as neeed to deal with a Vector<OwnPtr>.
* inspector/InspectorDOMAgent.h: Changed m_danglingNodeToIdMaps to be
Vector<OwnPtr> instead of a vector of raw pointers.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (116903 => 116904)
--- trunk/Source/WebCore/ChangeLog 2012-05-13 21:45:41 UTC (rev 116903)
+++ trunk/Source/WebCore/ChangeLog 2012-05-13 23:25:04 UTC (rev 116904)
@@ -1,3 +1,18 @@
+2012-05-13 Darin Adler <[email protected]>
+
+ Dangling node to ID maps vector uses raw pointers, but should use OwnPtr
+ https://bugs.webkit.org/show_bug.cgi?id=86299
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::releaseDanglingNodes): Removed now-unneeded call
+ to deleteAllValues since the clear function now takes care of that.
+ (WebCore::InspectorDOMAgent::pushNodePathToFrontend): Added code that uses
+ adoptPtr and release as neeed to deal with a Vector<OwnPtr>.
+ * inspector/InspectorDOMAgent.h: Changed m_danglingNodeToIdMaps to be
+ Vector<OwnPtr> instead of a vector of raw pointers.
+
2012-05-13 Victor Carbune <[email protected]>
Volume slider needs to be displayed below the mute button
Modified: trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp (116903 => 116904)
--- trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp 2012-05-13 21:45:41 UTC (rev 116903)
+++ trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp 2012-05-13 23:25:04 UTC (rev 116904)
@@ -307,7 +307,6 @@
void InspectorDOMAgent::releaseDanglingNodes()
{
- deleteAllValues(m_danglingNodeToIdMaps);
m_danglingNodeToIdMaps.clear();
}
@@ -532,8 +531,9 @@
Node* parent = innerParentNode(node);
if (!parent) {
// Node being pushed is detached -> push subtree root.
- danglingMap = new NodeToIdMap();
- m_danglingNodeToIdMaps.append(danglingMap);
+ OwnPtr<NodeToIdMap> newMap = adoptPtr(new NodeToIdMap);
+ danglingMap = newMap.get();
+ m_danglingNodeToIdMaps.append(newMap.release());
RefPtr<TypeBuilder::Array<TypeBuilder::DOM::Node> > children = TypeBuilder::Array<TypeBuilder::DOM::Node>::create();
children->addItem(buildObjectForNode(node, 0, danglingMap));
m_frontend->setChildNodes(0, children);
Modified: trunk/Source/WebCore/inspector/InspectorDOMAgent.h (116903 => 116904)
--- trunk/Source/WebCore/inspector/InspectorDOMAgent.h 2012-05-13 21:45:41 UTC (rev 116903)
+++ trunk/Source/WebCore/inspector/InspectorDOMAgent.h 2012-05-13 23:25:04 UTC (rev 116904)
@@ -244,7 +244,7 @@
DOMListener* m_domListener;
NodeToIdMap m_documentNodeToIdMap;
// Owns node mappings for dangling nodes.
- Vector<NodeToIdMap*> m_danglingNodeToIdMaps;
+ Vector<OwnPtr<NodeToIdMap> > m_danglingNodeToIdMaps;
HashMap<int, Node*> m_idToNode;
HashMap<int, NodeToIdMap*> m_idToNodesMap;
HashSet<int> m_childrenRequested;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes