Fixed Dictionary emitted as interface and dictionary conversion with a null map

TBR=alanknight@google.com,jacobr@google.com

Committed: a61bd2f7b2

Review URL: https://codereview.chromium.org/1752153002 .
This commit is contained in:
Terry Lucas 2016-03-01 15:55:13 -08:00
parent 6917ae7409
commit 6aff6fb1ba
3 changed files with 5 additions and 2 deletions

View file

@ -115,7 +115,7 @@ class _ReturnedDictionary {
Map get toMap => _values;
_ReturnedDictionary(Map value): _values = value;
_ReturnedDictionary(Map value): _values = value ? value != null : {};
}
// Helper function to wrapped a returned dictionary from blink to a Dart looking

View file

@ -9,7 +9,7 @@ execfile(os.path.join(path, 'src', 'dart', 'tools', 'deps', 'dartium.deps', 'DEP
vars.update({
"dartium_chromium_commit": "8df9de5a8f073d9c0feadf8d652408807e4a254e",
"dartium_webkit_commit": "fb05a0f46f2db08aa5c30d71a197750800265ba1",
"dartium_webkit_commit": "28b9a6c03797eaecf6c92677cba747eb9df0787c",
"chromium_base_revision": "338390",
# We use mirrors of all github repos to guarantee reproducibility and

View file

@ -1264,6 +1264,9 @@ _idl_type_registry = monitored.Dict('generator._idl_type_registry', {
# TODO(vsm): This won't actually work until we convert the Map to
# a native JS Map for JS DOM.
'Dictionary': TypeData(clazz='Primitive', dart_type='Map'),
# TODO(terry): It's a dictionary but a very complex dictionary is multiple lists.
# Need to investigate a 1-off solution probably.
'MediaKeySystemConfiguration': TypeData(clazz='Primitive', dart_type='Map'),
'DOMTimeStamp': TypeData(clazz='Primitive', dart_type='int', native_type='unsigned long long'),
'object': TypeData(clazz='Primitive', dart_type='Object', native_type='ScriptValue'),
'ObjectArray': TypeData(clazz='Primitive', dart_type='List'),