Skip to content
  • commit-queue@webkit.org's avatar
    Serialization of JavaScript values does not appear to respect new HTML5 Structured Clone semantics · 8ef2f563
    commit-queue@webkit.org authored
    https://bugs.webkit.org/show_bug.cgi?id=65292
    
    Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-23
    Reviewed by Oliver Hunt.
    
    Source/JavaScriptCore:
    
    Add function to construct a StringObject from a JSValue.
    Similar functions already exist for NumberObject and
    BooleanObject for example.
    
    Export several symbols so address linking errors in
    WebCore.
    
    * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
    * runtime/BooleanObject.h:
    (BooleanObject):
    * runtime/NumberObject.h:
    (NumberObject):
    (JSC):
    * runtime/StringObject.cpp:
    (JSC::constructString):
    (JSC):
    * runtime/StringObject.h:
    (JSC):
    
    Source/WebCore:
    
    JSC now correctly serialize Boolean, Number and String objects as per
    the structured clone algorithm specification. This patch reduces the
    delta with the V8 implementation of SerializedScriptValue.
    
    No new tests, already tested by fast/dom/Window/window-postmessage-clone.html
    
    * bindings/js/SerializedScriptValue.cpp:
    (WebCore):
    (WebCore::CloneSerializer::dumpStringObject):
    (CloneSerializer):
    (WebCore::CloneSerializer::dumpIfTerminal):
    (WebCore::CloneDeserializer::readTerminal):
    
    LayoutTests:
    
    Update expected results for fast/dom/Window/window-postmessage-clone.html
    now that String, Boolean and Number object are correctly serialized with
    JSC.
    
    * fast/dom/Window/window-postmessage-clone-expected.txt:
    * platform/gtk/fast/dom/Window/window-postmessage-clone-expected.txt:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126464 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    8ef2f563