Import Cobalt 4.13153
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousIndexedGetterInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousIndexedGetterInterface.cc index a0e4bc7..9a486e9 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousIndexedGetterInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousIndexedGetterInterface.cc
@@ -287,10 +287,8 @@ object, base::GetTypeId<AnonymousIndexedGetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousNamedIndexedGetterInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousNamedIndexedGetterInterface.cc index d763c55..0d132c4 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousNamedIndexedGetterInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsAnonymousNamedIndexedGetterInterface.cc
@@ -378,10 +378,8 @@ object, base::GetTypeId<AnonymousNamedIndexedGetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsArbitraryInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsArbitraryInterface.cc index 7e28810..20bae1a 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsArbitraryInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsArbitraryInterface.cc
@@ -198,10 +198,8 @@ object, base::GetTypeId<ArbitraryInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -258,6 +256,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<ArbitraryInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsBaseInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsBaseInterface.cc index b6d7b8c..c6f9524 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsBaseInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsBaseInterface.cc
@@ -198,10 +198,8 @@ object, base::GetTypeId<BaseInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -236,6 +234,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<BaseInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsBooleanTypeTestInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsBooleanTypeTestInterface.cc index 0ef0a1b..67e7e5f 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsBooleanTypeTestInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsBooleanTypeTestInterface.cc
@@ -196,10 +196,8 @@ object, base::GetTypeId<BooleanTypeTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -256,6 +254,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<BooleanTypeTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -302,6 +309,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<BooleanTypeTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackFunctionInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackFunctionInterface.cc index 3a7967e..8ebf68c 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackFunctionInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackFunctionInterface.cc
@@ -200,10 +200,8 @@ object, base::GetTypeId<CallbackFunctionInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -255,10 +253,8 @@ object, base::GetTypeId<CallbackFunctionInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -315,6 +311,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackFunctionInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -361,6 +366,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackFunctionInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -407,6 +421,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackFunctionInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -453,6 +476,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackFunctionInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -499,6 +531,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackFunctionInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackInterfaceInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackInterfaceInterface.cc index d43b8d1..e510b12 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackInterfaceInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsCallbackInterfaceInterface.cc
@@ -200,10 +200,8 @@ object, base::GetTypeId<CallbackInterfaceInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -260,6 +258,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackInterfaceInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -306,6 +313,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<CallbackInterfaceInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsConditionalInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsConditionalInterface.cc index 19ec00c..12fda2f 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsConditionalInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsConditionalInterface.cc
@@ -199,10 +199,8 @@ object, base::GetTypeId<ConditionalInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -256,10 +254,8 @@ object, base::GetTypeId<ConditionalInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -318,6 +314,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<ConditionalInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -348,6 +353,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<ConditionalInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsConstructorWithArgumentsInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsConstructorWithArgumentsInterface.cc index dc0902e..756c696 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsConstructorWithArgumentsInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsConstructorWithArgumentsInterface.cc
@@ -198,10 +198,8 @@ object, base::GetTypeId<ConstructorWithArgumentsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -231,10 +229,8 @@ object, base::GetTypeId<ConstructorWithArgumentsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -264,10 +260,8 @@ object, base::GetTypeId<ConstructorWithArgumentsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsDOMStringTestInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsDOMStringTestInterface.cc index 841f7a8..4524287 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsDOMStringTestInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsDOMStringTestInterface.cc
@@ -196,10 +196,8 @@ object, base::GetTypeId<DOMStringTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -251,10 +249,8 @@ object, base::GetTypeId<DOMStringTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -284,10 +280,8 @@ object, base::GetTypeId<DOMStringTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -317,10 +311,8 @@ object, base::GetTypeId<DOMStringTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -372,10 +364,8 @@ object, base::GetTypeId<DOMStringTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -427,10 +417,8 @@ object, base::GetTypeId<DOMStringTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedGetterSetterInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedGetterSetterInterface.cc index 9814942..286e8b8 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedGetterSetterInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedGetterSetterInterface.cc
@@ -378,10 +378,8 @@ object, base::GetTypeId<DerivedGetterSetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -411,10 +409,8 @@ object, base::GetTypeId<DerivedGetterSetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -471,6 +467,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<DerivedGetterSetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -523,6 +528,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<DerivedGetterSetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -581,6 +595,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<DerivedGetterSetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedInterface.cc index bcb9fda..5e26084 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsDerivedInterface.cc
@@ -198,10 +198,8 @@ object, base::GetTypeId<DerivedInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -236,6 +234,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<DerivedInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsDisabledInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsDisabledInterface.cc index 28cbd52..5fb88e5 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsDisabledInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsDisabledInterface.cc
@@ -198,10 +198,8 @@ object, base::GetTypeId<DisabledInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -258,6 +256,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<DisabledInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsEnumerationInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsEnumerationInterface.cc index 871154e..ea07296 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsEnumerationInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsEnumerationInterface.cc
@@ -207,10 +207,8 @@ object, base::GetTypeId<EnumerationInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionObjectInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionObjectInterface.cc index 3a99fe0..d9f10ef 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionObjectInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionObjectInterface.cc
@@ -197,10 +197,8 @@ object, base::GetTypeId<ExceptionObjectInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -230,10 +228,8 @@ object, base::GetTypeId<ExceptionObjectInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionsInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionsInterface.cc index 8eb1363..b23ae9f 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionsInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsExceptionsInterface.cc
@@ -198,10 +198,8 @@ object, base::GetTypeId<ExceptionsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -258,6 +256,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<ExceptionsInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsExtendedIDLAttributesInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsExtendedIDLAttributesInterface.cc index c98193f..e197c87 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsExtendedIDLAttributesInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsExtendedIDLAttributesInterface.cc
@@ -201,6 +201,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<ExtendedIDLAttributesInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsGarbageCollectionTestInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsGarbageCollectionTestInterface.cc index fe27347..df1b224 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsGarbageCollectionTestInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsGarbageCollectionTestInterface.cc
@@ -209,10 +209,8 @@ object, base::GetTypeId<GarbageCollectionTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -264,10 +262,8 @@ object, base::GetTypeId<GarbageCollectionTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsGlobalInterfaceParent.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsGlobalInterfaceParent.cc index d742500..a0ddac4 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsGlobalInterfaceParent.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsGlobalInterfaceParent.cc
@@ -201,6 +201,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<GlobalInterfaceParent>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsIndexedGetterInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsIndexedGetterInterface.cc index e62a360..66f6497 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsIndexedGetterInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsIndexedGetterInterface.cc
@@ -302,10 +302,8 @@ object, base::GetTypeId<IndexedGetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -340,6 +338,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<IndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -386,6 +393,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<IndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -438,6 +454,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<IndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsInterfaceWithUnsupportedProperties.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsInterfaceWithUnsupportedProperties.cc index 3612e1c..56ad080 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsInterfaceWithUnsupportedProperties.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsInterfaceWithUnsupportedProperties.cc
@@ -196,10 +196,8 @@ object, base::GetTypeId<InterfaceWithUnsupportedProperties>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedGetterInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedGetterInterface.cc index 918f252..51f1f54 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedGetterInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedGetterInterface.cc
@@ -307,6 +307,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -353,6 +362,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -405,6 +423,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedIndexedGetterInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedIndexedGetterInterface.cc index 72d99fc..b1d1234 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedIndexedGetterInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsNamedIndexedGetterInterface.cc
@@ -378,10 +378,8 @@ object, base::GetTypeId<NamedIndexedGetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -411,10 +409,8 @@ object, base::GetTypeId<NamedIndexedGetterInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -471,6 +467,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedIndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -523,6 +528,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedIndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -581,6 +595,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedIndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -633,6 +656,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedIndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -691,6 +723,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NamedIndexedGetterInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsNestedPutForwardsInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsNestedPutForwardsInterface.cc index d283446..c7945ee 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsNestedPutForwardsInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsNestedPutForwardsInterface.cc
@@ -200,10 +200,8 @@ object, base::GetTypeId<NestedPutForwardsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsNullableTypesTestInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsNullableTypesTestInterface.cc index 2580dfc..a2d5622 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsNullableTypesTestInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsNullableTypesTestInterface.cc
@@ -200,10 +200,8 @@ object, base::GetTypeId<NullableTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -255,10 +253,8 @@ object, base::GetTypeId<NullableTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -310,10 +306,8 @@ object, base::GetTypeId<NullableTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -365,10 +359,8 @@ object, base::GetTypeId<NullableTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -425,6 +417,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -471,6 +472,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -505,6 +515,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -551,6 +570,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -585,6 +613,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -631,6 +668,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -665,6 +711,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -711,6 +766,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NullableTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsNumericTypesTestInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsNumericTypesTestInterface.cc index 772085f..c64b5d9 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsNumericTypesTestInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsNumericTypesTestInterface.cc
@@ -196,10 +196,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -251,10 +249,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -306,10 +302,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -361,10 +355,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -416,10 +408,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -471,10 +461,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -526,10 +514,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -581,10 +567,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -636,10 +620,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -691,10 +673,8 @@ object, base::GetTypeId<NumericTypesTestInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -751,6 +731,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -797,6 +786,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -831,6 +829,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -877,6 +884,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -911,6 +927,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -957,6 +982,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1003,6 +1037,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1037,6 +1080,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1071,6 +1123,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1117,6 +1178,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1151,6 +1221,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1197,6 +1276,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1231,6 +1319,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1277,6 +1374,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1311,6 +1417,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1357,6 +1472,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1403,6 +1527,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1437,6 +1570,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1471,6 +1613,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1517,6 +1668,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<NumericTypesTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsObjectTypeBindingsInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsObjectTypeBindingsInterface.cc index 84cd31d..d25a5b1 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsObjectTypeBindingsInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsObjectTypeBindingsInterface.cc
@@ -208,10 +208,8 @@ object, base::GetTypeId<ObjectTypeBindingsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -263,10 +261,8 @@ object, base::GetTypeId<ObjectTypeBindingsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -296,10 +292,8 @@ object, base::GetTypeId<ObjectTypeBindingsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -351,10 +345,8 @@ object, base::GetTypeId<ObjectTypeBindingsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsOperationsTestInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsOperationsTestInterface.cc index c264d39..293e7cd 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsOperationsTestInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsOperationsTestInterface.cc
@@ -205,6 +205,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -239,6 +248,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -273,6 +291,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -317,6 +344,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -415,6 +451,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -473,6 +518,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -501,6 +555,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -547,6 +610,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -593,6 +665,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -663,6 +744,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -803,6 +893,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -849,6 +948,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -929,6 +1037,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -963,6 +1080,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1011,6 +1137,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1097,6 +1232,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1143,6 +1287,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1171,6 +1324,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -1217,6 +1379,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<OperationsTestInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsPutForwardsInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsPutForwardsInterface.cc index c5946c1..325c6fd 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsPutForwardsInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsPutForwardsInterface.cc
@@ -200,10 +200,8 @@ object, base::GetTypeId<PutForwardsInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierAttributeInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierAttributeInterface.cc index e6a70f8..30cfd0a 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierAttributeInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierAttributeInterface.cc
@@ -196,10 +196,8 @@ object, base::GetTypeId<StringifierAttributeInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierOperationInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierOperationInterface.cc index 6b6dd67..8d33990 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierOperationInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsStringifierOperationInterface.cc
@@ -201,6 +201,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<StringifierOperationInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsTargetInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsTargetInterface.cc index 644db8f..82de15a 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsTargetInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsTargetInterface.cc
@@ -201,6 +201,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<TargetInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -229,6 +238,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<TargetInterface>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsUnionTypesInterface.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsUnionTypesInterface.cc index 698be31..a81efa7 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsUnionTypesInterface.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsUnionTypesInterface.cc
@@ -204,10 +204,8 @@ object, base::GetTypeId<UnionTypesInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -259,10 +257,8 @@ object, base::GetTypeId<UnionTypesInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -314,10 +310,8 @@ object, base::GetTypeId<UnionTypesInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -369,10 +363,8 @@ object, base::GetTypeId<UnionTypesInterface>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/generated/mozjs/testing/MozjsWindow.cc b/src/cobalt/bindings/generated/mozjs/testing/MozjsWindow.cc index f6d8a45..673aed8 100644 --- a/src/cobalt/bindings/generated/mozjs/testing/MozjsWindow.cc +++ b/src/cobalt/bindings/generated/mozjs/testing/MozjsWindow.cc
@@ -389,10 +389,8 @@ object, base::GetTypeId<Window>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -444,10 +442,8 @@ object, base::GetTypeId<Window>())) { MozjsExceptionState exception(context); exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); return false; } - MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -482,6 +478,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<Window>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context); @@ -518,6 +523,15 @@ NOTREACHED(); return false; } + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<Window>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } MozjsExceptionState exception_state(context); JS::RootedValue result_value(context);
diff --git a/src/cobalt/bindings/mozjs/templates/interface.cc.template b/src/cobalt/bindings/mozjs/templates/interface.cc.template index dcc3e7c..23575c7 100644 --- a/src/cobalt/bindings/mozjs/templates/interface.cc.template +++ b/src/cobalt/bindings/mozjs/templates/interface.cc.template
@@ -15,6 +15,7 @@ #} {% from 'macros.cc.template' import add_extra_arguments %} {% from 'macros.cc.template' import call_cobalt_function %} +{% from 'macros.cc.template' import check_if_object_implements_interface with context %} {% from 'macros.cc.template' import constructor_implementation with context %} {% from 'macros.cc.template' import function_implementation with context %} {% from 'macros.cc.template' import get_impl_class_instance %} @@ -458,17 +459,7 @@ JSBool get_{{attribute.idl_name}}( JSContext* context, JS::HandleObject object, JS::HandleId id, JS::MutableHandleValue vp) { - MozjsGlobalEnvironment* global_environment = - static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); - WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); - if (!wrapper_factory->DoesObjectImplementInterface( - object, base::GetTypeId<{{impl_class}}>())) { - MozjsExceptionState exception(context); - exception.SetSimpleException(script::kDoesNotImplementInterface); - vp.set(JS::UndefinedValue()); - return false; - } - +{{ check_if_object_implements_interface() }} {{ nonstatic_function_prologue(impl_class) }} {% endif %} {{ call_cobalt_function(impl_class, attribute.type,
diff --git a/src/cobalt/bindings/mozjs/templates/macros.cc.template b/src/cobalt/bindings/mozjs/templates/macros.cc.template index 8520293..58b5669 100644 --- a/src/cobalt/bindings/mozjs/templates/macros.cc.template +++ b/src/cobalt/bindings/mozjs/templates/macros.cc.template
@@ -15,6 +15,21 @@ #} {# + # Checks if object implements interface. + #} +{% macro check_if_object_implements_interface() %} + MozjsGlobalEnvironment* global_environment = + static_cast<MozjsGlobalEnvironment*>(JS_GetContextPrivate(context)); + WrapperFactory* wrapper_factory = global_environment->wrapper_factory(); + if (!wrapper_factory->DoesObjectImplementInterface( + object, base::GetTypeId<{{impl_class}}>())) { + MozjsExceptionState exception(context); + exception.SetSimpleException(script::kDoesNotImplementInterface); + return false; + } +{%- endmacro %} + +{# # Function body for operation bindings. # Parameters: # operation: The operation context object @@ -36,6 +51,7 @@ NOTREACHED(); return false; } +{{ check_if_object_implements_interface() }} {{ nonstatic_function_prologue(impl_class) }} {% endif %} {% call(arguments_list) extract_arguments(operation) %}
diff --git a/src/cobalt/bindings/testing/object_type_bindings_test.cc b/src/cobalt/bindings/testing/object_type_bindings_test.cc index 7c5cbf0..e80d859 100644 --- a/src/cobalt/bindings/testing/object_type_bindings_test.cc +++ b/src/cobalt/bindings/testing/object_type_bindings_test.cc
@@ -273,6 +273,18 @@ EXPECT_THAT(result.c_str(), StartsWith("TypeError:")); } +TEST_F(UserObjectBindingsTest, CallWrongObjectType) { + std::string result; + EXPECT_TRUE(EvaluateScript("var obj = new Object()", NULL)); + EXPECT_TRUE(EvaluateScript("var arb = new ArbitraryInterface()", NULL)); + + // Calling a function with the wrong object type is a type error. + EXPECT_FALSE( + EvaluateScript("obj.arbitraryFunction = arb.arbitraryFunction;\n" + "obj.arbitraryFunction();", &result)); + EXPECT_THAT(result.c_str(), StartsWith("TypeError:")); +} + } // namespace testing } // namespace bindings } // namespace cobalt
diff --git a/src/cobalt/build/build.id b/src/cobalt/build/build.id index d5688f5..b75476d 100644 --- a/src/cobalt/build/build.id +++ b/src/cobalt/build/build.id
@@ -1 +1 @@ -13110 \ No newline at end of file +13153 \ No newline at end of file
diff --git a/src/cobalt/render_tree/mesh.h b/src/cobalt/render_tree/mesh.h new file mode 100644 index 0000000..b87793b --- /dev/null +++ b/src/cobalt/render_tree/mesh.h
@@ -0,0 +1,84 @@ +/* + * Copyright 2016 Google Inc. All Rights Reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef COBALT_RENDER_TREE_MESH_H_ +#define COBALT_RENDER_TREE_MESH_H_ + +#include <vector> + +#include "base/basictypes.h" +#include "base/logging.h" +#include "starboard/types.h" +#include "third_party/glm/glm/vec2.hpp" +#include "third_party/glm/glm/vec3.hpp" + +namespace cobalt { +namespace render_tree { + +// Represents a mesh to which render_trees can be mapped for 3D projection +// by being applied a filter. +class Mesh { + public: + // Vertices interleave position (x, y, z) and texture (u, v) coordinates. + struct Vertex { + glm::vec3 position_coord; + glm::vec2 texture_coord; + }; + COMPILE_ASSERT(sizeof(Vertex) == sizeof(float) * 5, + vertex_struct_size_exceeds_5_floats); + + // Defines a subset of the legal values for the draw mode parameter passed + // into glDrawArrays() and glDrawElements(). These correspond to GL_TRIANGLES, + // GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN. Users of this class can assert their + // values correspond exactly to the GL constants in order to convert via + // integer casting. + enum DrawMode { + kDrawModeTriangles = 4, + kDrawModeTriangleStrip = 5, + kDrawModeTriangleFan = 6 + }; + + Mesh(const std::vector<Vertex>& vertices, const DrawMode mode) + : vertices_(vertices), draw_mode_(CheckDrawMode(mode)) {} + + ~Mesh() {} + + const std::vector<Vertex>& vertices() const { return vertices_; } + + DrawMode draw_mode() const { return draw_mode_; } + + private: + static const DrawMode CheckDrawMode(DrawMode mode) { + switch (mode) { + case kDrawModeTriangles: + case kDrawModeTriangleStrip: + case kDrawModeTriangleFan: + return mode; + default: + NOTREACHED() << "Unsupported render_tree::Mesh DrawMode detected, " + "defaulting to kDrawModeTriangleStrip"; + return kDrawModeTriangleStrip; + } + } + + const std::vector<Vertex> vertices_; + const DrawMode draw_mode_; +}; + +} // namespace render_tree +} // namespace cobalt + +#endif // COBALT_RENDER_TREE_MESH_H_
diff --git a/src/cobalt/render_tree/render_tree.gyp b/src/cobalt/render_tree/render_tree.gyp index 5d6f1a6..d8dfa5e 100644 --- a/src/cobalt/render_tree/render_tree.gyp +++ b/src/cobalt/render_tree/render_tree.gyp
@@ -47,6 +47,7 @@ 'map_to_mesh_filter.h', 'matrix_transform_node.cc', 'matrix_transform_node.h', + 'mesh.h', 'node.h', 'node_visitor.h', 'opacity_filter.h',
diff --git a/src/starboard/client_porting/poem/poem.gyp b/src/starboard/client_porting/poem/poem.gyp index afde08e..def3f4e 100644 --- a/src/starboard/client_porting/poem/poem.gyp +++ b/src/starboard/client_porting/poem/poem.gyp
@@ -37,6 +37,7 @@ 'abs_tests.cc', 'include_all.c', 'main.cc', + 'string_poem_test.cc', ], 'dependencies': [ '<(DEPTH)/testing/gtest.gyp:gtest',
diff --git a/src/starboard/client_porting/poem/string_poem.h b/src/starboard/client_porting/poem/string_poem.h index 97ef46d..61ca795 100644 --- a/src/starboard/client_porting/poem/string_poem.h +++ b/src/starboard/client_porting/poem/string_poem.h
@@ -19,8 +19,9 @@ #if defined(STARBOARD) -#include "starboard/string.h" +#include "starboard/log.h" #include "starboard/memory.h" +#include "starboard/string.h" #ifdef __cplusplus @@ -31,7 +32,7 @@ // Finds the last occurrence of |character| in |str|, returning a pointer to // the found character in the given string, or NULL if not found. // Meant to be a drop-in replacement for strchr, C++ signature -inline char* PoemFindLastCharacter(char* str, int character) { +inline char* PoemFindLastCharacterInString(char* str, int character) { const char* const_str = static_cast<const char*>(str); const char c = static_cast<char>(character); return const_cast<char*>(SbStringFindLastCharacter(const_str, c)); @@ -40,7 +41,8 @@ // Finds the last occurrence of |character| in |str|, returning a pointer to // the found character in the given string, or NULL if not found. // Meant to be a drop-in replacement for strchr, C++ signature -inline const char* PoemFindLastCharacter(const char* str, int character) { +inline const char* PoemFindLastCharacterInString(const char* str, + int character) { const char c = static_cast<char>(character); return SbStringFindLastCharacter(str, c); } @@ -48,7 +50,7 @@ // Finds the first occurrence of |character| in |str|, returning a pointer to // the found character in the given string, or NULL if not found. // Meant to be a drop-in replacement for strchr -inline char* PoemFindCharacter(char* str, int character) { +inline char* PoemFindCharacterInString(char* str, int character) { const char* const_str = static_cast<const char*>(str); const char c = static_cast<char>(character); return const_cast<char*>(SbStringFindCharacter(const_str, c)); @@ -57,7 +59,7 @@ // Finds the first occurrence of |character| in |str|, returning a pointer to // the found character in the given string, or NULL if not found. // Meant to be a drop-in replacement for strchr -inline const char* PoemFindCharacter(const char* str, int character) { +inline const char* PoemFindCharacterInString(const char* str, int character) { const char c = static_cast<char>(character); return SbStringFindCharacter(str, c); } @@ -67,7 +69,8 @@ // Finds the first occurrence of |character| in |str|, returning a pointer to // the found character in the given string, or NULL if not found. // Meant to be a drop-in replacement for strchr -static SB_C_INLINE char* PoemFindCharacter(const char* str, int character) { +static SB_C_INLINE char* PoemFindCharacterInString(const char* str, + int character) { // C-style cast used for C code return (char*)(SbStringFindCharacter(str, character)); } @@ -75,7 +78,8 @@ // Finds the last occurrence of |character| in |str|, returning a pointer to // the found character in the given string, or NULL if not found. // Meant to be a drop-in replacement for strchr -static SB_C_INLINE char* PoemFindLastCharacter(const char* str, int character) { +static SB_C_INLINE char* PoemFindLastCharacterInString(const char* str, + int character) { // C-style cast used for C code return (char*)(SbStringFindLastCharacter(str, character)); } @@ -86,21 +90,60 @@ #endif // Concatenates |source| onto the end of |out_destination|, presuming it has -// |destination_size| total characters of storage available. Returns -// |out_destination|. This method is a drop-in replacement for strncat -static SB_C_INLINE char* PoemConcat(char* out_destination, - const char* source, - int destination_size) { - SbStringConcat(out_destination, source, destination_size); +// atleast strlen(out_destination) + |num_chars_to_copy| + 1 total characters of +// storage available. Returns |out_destination|. This method is a drop-in +// replacement for strncat. +// Note: even if num_chars_to_copy == 0, we will still write a NULL character. +// This is consistent with the language of linux's strncat man page: +// "Therefore, the size of dest must be at least strlen(dest)+n+1." +static SB_C_INLINE char* PoemStringConcat(char* out_destination, + const char* source, + int num_chars_to_copy) { + int destination_length = (int)(SbStringGetLength(out_destination)); + SbStringConcat(out_destination, source, + destination_length + num_chars_to_copy + 1); return out_destination; } -// Inline wrapper for an unsafe PoemConcat that assumes |out_destination| is -// big enough. Returns |out_destination|. Meant to be a drop-in replacement for -// strcat. -static SB_C_INLINE char* PoemConcatUnsafe(char* out_destination, - const char* source) { - return PoemConcat(out_destination, source, INT_MAX); +// Inline wrapper for an unsafe PoemStringConcat that assumes |out_destination| +// is big enough. Returns |out_destination|. Meant to be a drop-in replacement +// for strcat. +static SB_C_INLINE char* PoemStringConcatUnsafe(char* out_destination, + const char* source) { + return PoemStringConcat(out_destination, source, INT_MAX); +} + +// Inline wrapper for a drop-in replacement for |strncpy|. This function +// copies the null terminated string from src to dest. If the src string is +// shorter than num_chars_to_copy, then null padding is used. +// Warning: As with strncpy spec, if there is no null character within the first +// num_chars_to_copy in src, this function will write a null character at the +// end. +static SB_C_INLINE char* PoemStringCopyN(char* dest, + const char* src, + int num_chars_to_copy) { + SB_DCHECK(num_chars_to_copy >= 0); + if (num_chars_to_copy < 0) { + return dest; + } + + char* dest_write_iterator = dest; + char* dest_write_iterator_end = dest + num_chars_to_copy; + const char* src_iterator = src; + + while ((*src_iterator != '\0') && + (dest_write_iterator != dest_write_iterator_end)) { + *dest_write_iterator = *src_iterator; + + ++src_iterator; + ++dest_write_iterator; + } + + SB_DCHECK(dest_write_iterator_end >= dest_write_iterator); + SbMemorySet(dest_write_iterator, '\0', + dest_write_iterator_end - dest_write_iterator); + + return dest; } #ifdef __cplusplus @@ -111,12 +154,12 @@ #define strlen(s) SbStringGetLength(s) #define strcpy(o, s) SbStringCopyUnsafe(o, s) -#define strncpy(o, s, ds) SbStringCopy(o, s, ds) -#define strcat(o, s) PoemConcatUnsafe(o, s) -#define strncat(o, s, ds) PoemConcat(o, s, ds) +#define strncpy(o, s, ds) PoemStringCopyN(o, s, ds) +#define strcat(o, s) PoemStringConcatUnsafe(o, s) +#define strncat(o, s, ds) PoemStringConcat(o, s, ds) #define strdup(s) SbStringDuplicate(s) -#define strchr(s, c) PoemFindCharacter(s, c) -#define strrchr(s, c) PoemFindLastCharacter(s, c) +#define strchr(s, c) PoemFindCharacterInString(s, c) +#define strrchr(s, c) PoemFindLastCharacterInString(s, c) #define strstr(s, c) SbStringFindString(s, c) #define strncmp(s1, s2, c) SbStringCompare(s1, s2, c) #define strcmp(s1, s2) SbStringCompareAll(s1, s2)
diff --git a/src/starboard/client_porting/poem/string_poem_test.cc b/src/starboard/client_porting/poem/string_poem_test.cc new file mode 100644 index 0000000..2243b48 --- /dev/null +++ b/src/starboard/client_porting/poem/string_poem_test.cc
@@ -0,0 +1,81 @@ +// Copyright 2016 Google Inc. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Test basic functionality of string poems. + +#include "testing/gtest/include/gtest/gtest.h" + +#include "starboard/client_porting/poem/string_poem.h" + +namespace starboard { +namespace nplb { +namespace { + +TEST(StringPoemTest, PoemStringConcat) { + char a[64] = "Hello "; + char b[] = "Yu"; + + strncat(a, b, sizeof(b) + 1); + + EXPECT_STREQ(a, "Hello Yu"); +} + +TEST(StringPoemTest, PoemStringCopy) { + char a[] = "Hello "; + char b[] = "Yu"; + + strncpy(a, b, sizeof(b)); + + EXPECT_STREQ(a, "Yu"); +} + +TEST(StringPoemTest, PoemStringCopyZeroBytes) { + char a[] = "Hello "; + char b[] = "Yu"; + + strncpy(a, b, 0); + + EXPECT_STREQ(a, "Hello "); +} + +TEST(StringPoemTest, PoemStringCopySrcNotNullTerminated) { + char a[] = "Hello "; + char b[] = "Yu"; + + strncpy(a, b, sizeof(b) - 1); + + EXPECT_STREQ(a, "Yullo "); +} + +TEST(StringPoemTest, PoemStringCopyNotEnoughSpace) { + char a[] = "Hello"; + char b[] = "Cobalt"; + + strncpy(a, b, sizeof(a) - 1); + + EXPECT_STREQ(a, "Cobal"); +} + +TEST(StringPoemTest, PoemStringCopySizeMoreThanNeeded) { + char a[] = "Hello"; + char b[] = "Wu"; + + strncpy(a, b, sizeof(a)); + + EXPECT_STREQ(a, "Wu"); +} + +} // namespace +} // namespace nplb +} // namespace starboard
diff --git a/src/third_party/openssl/config/starboard/openssl/opensslconf.h b/src/third_party/openssl/config/starboard/openssl/opensslconf.h index 2a57ea1..0f290ff 100644 --- a/src/third_party/openssl/config/starboard/openssl/opensslconf.h +++ b/src/third_party/openssl/config/starboard/openssl/opensslconf.h
@@ -237,7 +237,7 @@ #define OPENSSL_port_abort SbSystemBreakIntoDebugger #define OPENSSL_port_assert(x) SB_DCHECK(x) #define OPENSSL_port_atoi SbStringAToI -#define OPENSSL_port_free SbMemoryFree +#define OPENSSL_port_free SbMemoryDeallocate #define OPENSSL_port_getenv(x) NULL #define OPENSSL_port_isalnum SbCharacterIsAlphanumeric #define OPENSSL_port_isdigit SbCharacterIsDigit