[webkit-reviews] review granted: [Bug 21294] Devirtualize getOwnPropertySlot() : [Attachment 24561] patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Oct 22 13:08:24 PDT 2008


Sam Weinig <sam at webkit.org> has granted Darin Adler <darin at apple.com>'s request
for review:
Bug 21294: Devirtualize getOwnPropertySlot()
https://bugs.webkit.org/show_bug.cgi?id=21294

Attachment 24561: patch
https://bugs.webkit.org/attachment.cgi?id=24561&action=edit

------- Additional Comments from Sam Weinig <sam at webkit.org>
-    // WebCore uses this to make document.all and style.filter undetectable.
     static const unsigned MasqueradesAsUndefined = 1;
+	 // WebCore uses MasqueradesAsUndefined to make document.all and
style.filter undetectable.
     static const unsigned ImplementsHasInstance = 1 << 1;
The whitespace for this comment seems wrong.

+JSGlueGlobalObject::JSGlueGlobalObject(PassRefPtr<StructureID> structure,
JSFlags flags)
+    : JSGlobalObject(structure, new Data, this)
+{
+    d()->flags = flags;
+    d()->userObjectStructure = UserObjectImp::createStructureID(jsNull());
+}
Might be cleaner to make the Data constructor take arguments.

+    if (prototype->isNull()) {
+	 static StructureID* structureID =
JSInspectorCallbackWrapper::createStructureID(jsNull()).releaseRef();
+	 return new (unwrappedExec) JSInspectorCallbackWrapper(unwrappedExec,
unwrappedObject, structureID);
+    }
Why is leaking the StructureID okay here?

For QtRuntimeMethod::createStructureID, why does it have the
ImplementsHasInstance flag like InternalFunction?

r=me.


More information about the webkit-reviews mailing list