DescriptionValueDeserializer: Only allow valid keys when deserializing object properties.
The serializer won't ever write a more complex object. Not validating this
allows other things to be used as keys, and converted to string when the
property set actually occurs. It turns out this gives an opportunity to trigger
OOM by giving an object a key which is a very large sparse array (whose string
representation is very large).
This case is now rejected by the deserializer.
BUG=chromium:686511
Review-Url: https://codereview.chromium.org/2697023002
Cr-Commit-Position: refs/heads/master@{#43249}
Committed: https://chromium.googlesource.com/v8/v8/+/8990399dc7c2f36ba4f566a415a0823d229dff21
Patch Set 1 #Patch Set 2 : Add a unit test for a simpler version of this case. #
Messages
Total messages: 16 (12 generated)
|