2011-01-31 Sheriff Bot <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r76969.
        http://trac.webkit.org/changeset/76969
        https://bugs.webkit.org/show_bug.cgi?id=53418

        "It is causing crashes in GTK+ and Leopard bots" (Requested by
        alexg__ on #webkit).

        * runtime/WeakGCMap.h:
2011-01-31  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r76969.
        http://trac.webkit.org/changeset/76969
        https://bugs.webkit.org/show_bug.cgi?id=53418

        "It is causing crashes in GTK+ and Leopard bots" (Requested by
        alexg__ on #webkit).

        * bridge/runtime_root.cpp:
        (JSC::Bindings::RootObject::invalidate):
        (JSC::Bindings::RootObject::addRuntimeObject):
        (JSC::Bindings::RootObject::removeRuntimeObject):
        * bridge/runtime_root.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77125 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 2f9af086
2011-01-31 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r76969.
http://trac.webkit.org/changeset/76969
https://bugs.webkit.org/show_bug.cgi?id=53418
"It is causing crashes in GTK+ and Leopard bots" (Requested by
alexg__ on #webkit).
* runtime/WeakGCMap.h:
2011-01-30 Csaba Osztrogonác <ossy@webkit.org>
Unreviewed, rolling out r77098, r77099, r77100, r77109, and
......
......@@ -69,9 +69,6 @@ public:
const_iterator uncheckedBegin() const { return m_map.begin(); }
const_iterator uncheckedEnd() const { return m_map.end(); }
bool isValid(iterator it) const { return Heap::isCellMarked(it->second); }
bool isValid(const_iterator it) const { return Heap::isCellMarked(it->second); }
private:
HashMap<KeyType, MappedType> m_map;
};
......
2011-01-31 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r76969.
http://trac.webkit.org/changeset/76969
https://bugs.webkit.org/show_bug.cgi?id=53418
"It is causing crashes in GTK+ and Leopard bots" (Requested by
alexg__ on #webkit).
* bridge/runtime_root.cpp:
(JSC::Bindings::RootObject::invalidate):
(JSC::Bindings::RootObject::addRuntimeObject):
(JSC::Bindings::RootObject::removeRuntimeObject):
* bridge/runtime_root.h:
2011-01-31 Antti Koivisto <antti@apple.com>
Not reviewed.
......@@ -101,15 +101,13 @@ void RootObject::invalidate()
return;
{
WeakGCMap<RuntimeObject*, RuntimeObject*>::iterator end = m_runtimeObjects.uncheckedEnd();
for (WeakGCMap<RuntimeObject*, RuntimeObject*>::iterator it = m_runtimeObjects.uncheckedBegin(); it != end; ++it) {
if (m_runtimeObjects.isValid(it))
it->second->invalidate();
}
HashSet<RuntimeObject*>::iterator end = m_runtimeObjects.end();
for (HashSet<RuntimeObject*>::iterator it = m_runtimeObjects.begin(); it != end; ++it)
(*it)->invalidate();
m_runtimeObjects.clear();
}
m_isValid = false;
m_nativeHandle = 0;
......@@ -178,17 +176,17 @@ void RootObject::updateGlobalObject(JSGlobalObject* globalObject)
void RootObject::addRuntimeObject(RuntimeObject* object)
{
ASSERT(m_isValid);
ASSERT(!m_runtimeObjects.get(object));
m_runtimeObjects.set(object, object);
}
ASSERT(!m_runtimeObjects.contains(object));
m_runtimeObjects.add(object);
}
void RootObject::removeRuntimeObject(RuntimeObject* object)
{
ASSERT(m_isValid);
ASSERT(m_runtimeObjects.uncheckedGet(object));
m_runtimeObjects.take(object);
ASSERT(m_runtimeObjects.contains(object));
m_runtimeObjects.remove(object);
}
} } // namespace JSC::Bindings
......@@ -31,8 +31,8 @@
#endif
#include <runtime/Protect.h>
#include <runtime/WeakGCMap.h>
#include <wtf/Forward.h>
#include <wtf/HashSet.h>
#include <wtf/Noncopyable.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefCounted.h>
......@@ -89,7 +89,7 @@ private:
ProtectedPtr<JSGlobalObject> m_globalObject;
ProtectCountSet m_protectCountSet;
WeakGCMap<RuntimeObject*, RuntimeObject*> m_runtimeObjects; // Really need a WeakGCSet, but this will do.
HashSet<RuntimeObject*> m_runtimeObjects;
HashSet<InvalidationCallback*> m_invalidationCallbacks;
};
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment