src: mark AsyncWrap destructor as virtual
authorBen Noordhuis <info@bnoordhuis.nl>
Thu, 23 Oct 2014 20:04:47 +0000 (22:04 +0200)
committerBen Noordhuis <info@bnoordhuis.nl>
Thu, 23 Oct 2014 20:49:59 +0000 (22:49 +0200)
Make AsyncWrap::~AsyncWrap() virtual, otherwise it is unsafe to delete
a derived class through a pointer to AsyncWrap.  Fortunately, we don't
do that anywhere right now; this commit is merely a preemptive bug fix.

src/async-wrap.h

index a8577984ed04b73b45376f461316f1b08ffddf50..d345547b34e90eb88c101d68db9382e43f61f664 100644 (file)
@@ -61,7 +61,7 @@ class AsyncWrap : public BaseObject {
                    v8::Handle<v8::Object> object,
                    ProviderType provider);
 
-  inline ~AsyncWrap() = default;
+  inline virtual ~AsyncWrap() = default;
 
   inline bool has_async_listener();