| Index: Source/bindings/v8/V8BindingMacros.h
|
| diff --git a/Source/bindings/v8/V8BindingMacros.h b/Source/bindings/v8/V8BindingMacros.h
|
| index e5841c9beda84810daf9ed7ea80f01cb7aca48cd..8163666cee2bfee12653c72f4d49ba6db0244477 100644
|
| --- a/Source/bindings/v8/V8BindingMacros.h
|
| +++ b/Source/bindings/v8/V8BindingMacros.h
|
| @@ -93,14 +93,16 @@ namespace WebCore {
|
| // type is an instance of class template V8StringResource<>,
|
| // but Mode argument varies; using type (not Mode) for consistency
|
| // with other macros and ease of code generation
|
| -#define TOSTRING_VOID(type, var, value) \
|
| - type var(value); \
|
| - if (UNLIKELY(!var.prepare())) \
|
| +// Because V8StringResourceToString<Rethrow>::call does not use the instance
|
| +// object, we can pass null pointer to |var.init|.
|
| +#define TOSTRING_VOID(type, var, value) \
|
| + type var(value); \
|
| + if (UNLIKELY(!var.init<V8StringResourceRethrowException>(0))) \
|
| return;
|
|
|
| -#define TOSTRING_DEFAULT(type, var, value, retVal) \
|
| - type var(value); \
|
| - if (UNLIKELY(!var.prepare())) \
|
| +#define TOSTRING_DEFAULT(type, var, value, retVal) \
|
| + type var(value); \
|
| + if (UNLIKELY(!var.init<V8StringResourceRethrowException>(0))) \
|
| return retVal;
|
|
|
| } // namespace WebCore
|
|
|