Index: third_party/WebKit/Source/bindings/templates/dictionary_v8.cpp |
diff --git a/third_party/WebKit/Source/bindings/templates/dictionary_v8.cpp b/third_party/WebKit/Source/bindings/templates/dictionary_v8.cpp |
index c66a61b885da50ff3e57047b1c87a8b6d6d90e44..459bec61f4f9139d58d46422bc03e01d3f6b3b84 100644 |
--- a/third_party/WebKit/Source/bindings/templates/dictionary_v8.cpp |
+++ b/third_party/WebKit/Source/bindings/templates/dictionary_v8.cpp |
@@ -11,8 +11,12 @@ namespace blink { |
{% from 'utilities.cpp' import v8_value_to_local_cpp_value %} |
void {{v8_class}}::toImpl(v8::Isolate* isolate, v8::Local<v8::Value> v8Value, {{cpp_class}}& impl, ExceptionState& exceptionState) |
{ |
- if (isUndefinedOrNull(v8Value)) |
+ if (isUndefinedOrNull(v8Value)) { |
+ {% if required_member_names %} |
+ exceptionState.throwTypeError("Missing required member(s): {{required_member_names|join(', ')}}."); |
+ {% endif %} |
return; |
+ } |
if (!v8Value->IsObject()) { |
{% if use_permissive_dictionary_conversion %} |
// Do nothing. |