[webkit-reviews] review denied: [Bug 72198] [V8][Chromium]Serialize dense arrays densly : [Attachment 115073] Tests fixed
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Nov 14 18:31:17 PST 2011
David Levin <levin at chromium.org> has denied Dmitry Lomov <dslomov at google.com>'s
request for review:
Bug 72198: [V8][Chromium]Serialize dense arrays densly
https://bugs.webkit.org/show_bug.cgi?id=72198
Attachment 115073: Tests fixed
https://bugs.webkit.org/attachment.cgi?id=115073&action=review
------- Additional Comments from David Levin <levin at chromium.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=115073&action=review
There are a few things here that I think it would be good to address. Thanks!
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:197
> + //
fills it with the last lenght elements and numProperties name,value pairs
pushed onto deserialization stack
spacing off by one on this second line.
"lenght" should be "length"
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:749
> + if (hasStringProperty || (hasIndexedProperty &&
!ignoreIndexed))
Why is this change done? What is being fixed?
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:840
> + return serializeProperties(true, serializer);
It looks like this writes out indexes followed by properties but the
deserializer expects things in the reverse order. (Please add a test.)
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:847
> + }
add blank line.
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:849
> + uint32_t m_arrayIndex;
Why is m_arrayIndex a member variable?
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:1024
> + static bool serializeDensely(uint32_t length, uint32_t propertyCount)
The name sounds ambiguous right now. One could easily interpret the name to
mean that it will do the serialization. Consider "shouldSerializeDensely".
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:1029
> + // so densly is better than sparsly whenever 6*propertyCount >
length
densely
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:1281
> + case RegExpTag:
spacing off.
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:1355
> + if (!creator.newSparseArray(length))
I find this confusing.
> Source/WebCore/bindings/v8/SerializedScriptValue.cpp:1848
> + if (m_version > 0) {
Why is there a version check here when this is a new field?
(I guess I expect a failure if the version is below a certain number.)
Also should we be increasing the version?
More information about the webkit-reviews
mailing list