summaryrefslogtreecommitdiffstats
path: root/views/controls
diff options
context:
space:
mode:
authortfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-27 12:53:38 +0000
committertfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-27 12:53:38 +0000
commit8ce835ff2064dfe16183ac7872ea100f95bdd072 (patch)
tree792be0f388b67a9d31040694c6d0d55d57e2a601 /views/controls
parent8b8cfb52940854bb6c85f0a5ac6aaa58c976de21 (diff)
downloadchromium_src-8ce835ff2064dfe16183ac7872ea100f95bdd072.zip
chromium_src-8ce835ff2064dfe16183ac7872ea100f95bdd072.tar.gz
chromium_src-8ce835ff2064dfe16183ac7872ea100f95bdd072.tar.bz2
views: Add protected virtual destructor to TabbedPaneListener.
The use of a protected virtual destructor is to prevent the destruction of a derived object via a base-class pointer. That's it, TabbedPaneListenere should only be deleted through derived class. Example: class FooListener { public: ... protected: virtual ~FooListener() {} }; class Foo : public FooListener { }; FooListener* listener = new Foo; delete listener; // It should prevent this situation! R=sky@chromium.org Review URL: http://codereview.chromium.org/8028030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102916 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/controls')
-rw-r--r--views/controls/tabbed_pane/tabbed_pane_listener.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/views/controls/tabbed_pane/tabbed_pane_listener.h b/views/controls/tabbed_pane/tabbed_pane_listener.h
index a274b7e..3d14a38 100644
--- a/views/controls/tabbed_pane/tabbed_pane_listener.h
+++ b/views/controls/tabbed_pane/tabbed_pane_listener.h
@@ -14,6 +14,9 @@ class TabbedPaneListener {
public:
// Called when the tab at |index| is selected by the user.
virtual void TabSelectedAt(int index) = 0;
+
+ protected:
+ virtual ~TabbedPaneListener() {}
};
} // namespace views