| Index: gin/function_template.h
|
| diff --git a/gin/function_template.h b/gin/function_template.h
|
| index 67df90e966246e64f0a3d663ba223347c078ef45..86ca1a6235cf3c0780eecfce866eceef1a845f69 100644
|
| --- a/gin/function_template.h
|
| +++ b/gin/function_template.h
|
| @@ -32,7 +32,6 @@ enum CreateFunctionTemplateFlags {
|
|
|
| namespace internal {
|
|
|
| -// TODO(aa): Move this to base/template_util.h as remove_const.
|
| template<typename T>
|
| struct CallbackParamTraits {
|
| typedef T LocalType;
|
| @@ -56,12 +55,12 @@ struct CallbackParamTraits<const T*> {
|
| // It inherits from Wrappable, which delete itself when both (a) the refcount
|
| // via base::RefCounted has dropped to zero, and (b) there are no more
|
| // JavaScript references in V8.
|
| -class CallbackHolderBase : public Wrappable {
|
| - public:
|
| - virtual WrapperInfo* GetWrapperInfo() OVERRIDE;
|
| - static WrapperInfo kWrapperInfo;
|
| +
|
| +// This simple base class is used so that we can share a single object template
|
| +// among every CallbackHolder instance.
|
| +class CallbackHolderBase : public Wrappable<CallbackHolderBase> {
|
| protected:
|
| - virtual ~CallbackHolderBase() {}
|
| + ~CallbackHolderBase() {}
|
| };
|
|
|
| template<typename Sig>
|
| @@ -72,7 +71,7 @@ class CallbackHolder : public CallbackHolderBase {
|
| base::Callback<Sig> callback;
|
| int flags;
|
| private:
|
| - virtual ~CallbackHolder() {}
|
| + ~CallbackHolder() {}
|
| };
|
|
|
|
|
|
|