Title: [88099] trunk/Source/WebCore
Revision
88099
Author
[email protected]
Date
2011-06-04 02:05:38 -0700 (Sat, 04 Jun 2011)

Log Message

2011-06-04  Nico Weber  <[email protected]>

        Reviewed by James Robinson.

        Make the destructors of DataTransferItem and DataTransferItems virtual
        https://bugs.webkit.org/show_bug.cgi?id=62052

        Clang has grown a new warning that warns on |delete ptr| if ptr's
        class is non-final, has virtual methods, but no virtual destructor.
        This warning finds real bugs, so we want to keep it enabled. However,
        it also warns about DataTransferItem[s]. Since these are subclassed,
        they can't be made final, so make their destructors virtual. (Maybe
        clang's warning even points out an actual bug here.)

        * dom/DataTransferItem.h:
        (WebCore::DataTransferItem::~DataTransferItem):
        * dom/DataTransferItems.h:
        (WebCore::DataTransferItems::~DataTransferItems):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (88098 => 88099)


--- trunk/Source/WebCore/ChangeLog	2011-06-04 09:02:50 UTC (rev 88098)
+++ trunk/Source/WebCore/ChangeLog	2011-06-04 09:05:38 UTC (rev 88099)
@@ -2,6 +2,25 @@
 
         Reviewed by James Robinson.
 
+        Make the destructors of DataTransferItem and DataTransferItems virtual
+        https://bugs.webkit.org/show_bug.cgi?id=62052
+
+        Clang has grown a new warning that warns on |delete ptr| if ptr's
+        class is non-final, has virtual methods, but no virtual destructor.
+        This warning finds real bugs, so we want to keep it enabled. However,
+        it also warns about DataTransferItem[s]. Since these are subclassed,
+        they can't be made final, so make their destructors virtual. (Maybe
+        clang's warning even points out an actual bug here.)
+
+        * dom/DataTransferItem.h:
+        (WebCore::DataTransferItem::~DataTransferItem):
+        * dom/DataTransferItems.h:
+        (WebCore::DataTransferItems::~DataTransferItems):
+
+2011-06-04  Nico Weber  <[email protected]>
+
+        Reviewed by James Robinson.
+
         [chromium] Make LayerPainterChromium destructor virtual
         https://bugs.webkit.org/show_bug.cgi?id=62056
 

Modified: trunk/Source/WebCore/dom/DataTransferItem.h (88098 => 88099)


--- trunk/Source/WebCore/dom/DataTransferItem.h	2011-06-04 09:02:50 UTC (rev 88098)
+++ trunk/Source/WebCore/dom/DataTransferItem.h	2011-06-04 09:05:38 UTC (rev 88099)
@@ -46,7 +46,7 @@
 
 class DataTransferItem : public RefCounted<DataTransferItem> {
 public:
-    ~DataTransferItem() {}
+    virtual ~DataTransferItem() { }
 
     static PassRefPtr<DataTransferItem> create(PassRefPtr<Clipboard> owner, ScriptExecutionContext*, const String& data, const String& type);
 

Modified: trunk/Source/WebCore/dom/DataTransferItems.h (88098 => 88099)


--- trunk/Source/WebCore/dom/DataTransferItems.h	2011-06-04 09:02:50 UTC (rev 88098)
+++ trunk/Source/WebCore/dom/DataTransferItems.h	2011-06-04 09:05:38 UTC (rev 88099)
@@ -45,7 +45,7 @@
 
 class DataTransferItems : public RefCounted<DataTransferItems> {
 public:
-    ~DataTransferItems() {}
+    virtual ~DataTransferItems() { }
 
     virtual size_t length() const;
     virtual PassRefPtr<DataTransferItem> item(unsigned long index);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to