summaryrefslogtreecommitdiff
path: root/Source/WebCore/rendering/RenderCounter.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-05-07 11:21:11 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-05-07 11:21:11 +0200
commit2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47 (patch)
tree988e8c5b116dd0466244ae2fe5af8ee9be926d76 /Source/WebCore/rendering/RenderCounter.cpp
parentdd91e772430dc294e3bf478c119ef8d43c0a3358 (diff)
downloadqtwebkit-2cf6c8816a73e0132bd8fa3b509d62d7c51b6e47.tar.gz
Imported WebKit commit 7e538425aa020340619e927792f3d895061fb54b (http://svn.webkit.org/repository/webkit/trunk@116286)
Diffstat (limited to 'Source/WebCore/rendering/RenderCounter.cpp')
-rw-r--r--Source/WebCore/rendering/RenderCounter.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/Source/WebCore/rendering/RenderCounter.cpp b/Source/WebCore/rendering/RenderCounter.cpp
index 0807ea9dd..29c0f1ccb 100644
--- a/Source/WebCore/rendering/RenderCounter.cpp
+++ b/Source/WebCore/rendering/RenderCounter.cpp
@@ -41,7 +41,7 @@ namespace WebCore {
using namespace HTMLNames;
typedef HashMap<RefPtr<AtomicStringImpl>, RefPtr<CounterNode> > CounterMap;
-typedef HashMap<const RenderObject*, CounterMap*> CounterMaps;
+typedef HashMap<const RenderObject*, OwnPtr<CounterMap> > CounterMaps;
static CounterNode* makeCounterNode(RenderObject*, const AtomicString& identifier, bool alwaysCreateCounter);
@@ -440,7 +440,7 @@ static CounterNode* makeCounterNode(RenderObject* object, const AtomicString& id
nodeMap = counterMaps().get(object);
else {
nodeMap = new CounterMap;
- counterMaps().set(object, nodeMap);
+ counterMaps().set(object, adoptPtr(nodeMap));
object->setHasCounterNodeMap(true);
}
nodeMap->set(identifier.impl(), newNode);
@@ -563,14 +563,13 @@ void RenderCounter::destroyCounterNodes(RenderObject* owner)
CounterMaps::iterator mapsIterator = maps.find(owner);
if (mapsIterator == maps.end())
return;
- CounterMap* map = mapsIterator->second;
+ CounterMap* map = mapsIterator->second.get();
CounterMap::const_iterator end = map->end();
for (CounterMap::const_iterator it = map->begin(); it != end; ++it) {
AtomicString identifier(it->first.get());
destroyCounterNodeWithoutMapRemoval(identifier, it->second.get());
}
maps.remove(mapsIterator);
- delete map;
owner->setHasCounterNodeMap(false);
}