diff options
author | hans@chromium.org <hans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-25 09:08:19 +0000 |
---|---|---|
committer | hans@chromium.org <hans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-25 09:08:19 +0000 |
commit | 3690ebe09a8c3cea0fd7d9ece8f5b8d8ebc65c19 (patch) | |
tree | b26f7f81e48a95473eb4af5304301e9d8cd22fb8 | |
parent | eef99b6591d82399096abdcee07dd67359eec036 (diff) | |
download | chromium_src-3690ebe09a8c3cea0fd7d9ece8f5b8d8ebc65c19.zip chromium_src-3690ebe09a8c3cea0fd7d9ece8f5b8d8ebc65c19.tar.gz chromium_src-3690ebe09a8c3cea0fd7d9ece8f5b8d8ebc65c19.tar.bz2 |
Virtual destructors should have virtual keyword.
Make sure user-declared virtual destructors always have the virtual keyword.
The Clang style-check plugin will check for this soon.
No functionality change: virtual is only added
to destructors that are already implicitly virtual.
Also fix a couple of in-line destructor definitions.
BUG=83408
TEST=none
Review URL: http://codereview.chromium.org/7064033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86587 0039d316-1c4b-4281-b951-d872f2087c98
242 files changed, 331 insertions, 324 deletions
diff --git a/base/message_loop.h b/base/message_loop.h index c660c9e..9a03d6b 100644 --- a/base/message_loop.h +++ b/base/message_loop.h @@ -111,7 +111,7 @@ class BASE_API MessageLoop : public base::MessagePump::Delegate { // Normally, it is not necessary to instantiate a MessageLoop. Instead, it // is typical to make use of the current thread's MessageLoop instance. explicit MessageLoop(Type type = TYPE_DEFAULT); - ~MessageLoop(); + virtual ~MessageLoop(); // Returns the MessageLoop object for the current thread, or null if none. static MessageLoop* current(); diff --git a/base/message_pump_default.h b/base/message_pump_default.h index 5030aa9..26bd554 100644 --- a/base/message_pump_default.h +++ b/base/message_pump_default.h @@ -15,7 +15,7 @@ namespace base { class MessagePumpDefault : public MessagePump { public: MessagePumpDefault(); - ~MessagePumpDefault() {} + virtual ~MessagePumpDefault() {} // MessagePump methods: virtual void Run(Delegate* delegate); diff --git a/base/synchronization/waitable_event_watcher.h b/base/synchronization/waitable_event_watcher.h index aa16d0b..6e1d197 100644 --- a/base/synchronization/waitable_event_watcher.h +++ b/base/synchronization/waitable_event_watcher.h @@ -68,7 +68,7 @@ class BASE_API WaitableEventWatcher public: WaitableEventWatcher(); - ~WaitableEventWatcher(); + virtual ~WaitableEventWatcher(); class Delegate { public: diff --git a/base/task_queue.h b/base/task_queue.h index 8bd3cb7..45a43e9 100644 --- a/base/task_queue.h +++ b/base/task_queue.h @@ -17,7 +17,7 @@ class BASE_API TaskQueue : public Task { public: TaskQueue(); - ~TaskQueue(); + virtual ~TaskQueue(); // Push the specified task onto the queue. When the queue is run, the tasks // will be run in the order they are pushed. diff --git a/base/values.h b/base/values.h index 6fb3240..43894d1 100644 --- a/base/values.h +++ b/base/values.h @@ -355,7 +355,7 @@ class BASE_API ListValue : public Value { typedef ValueVector::const_iterator const_iterator; ListValue(); - ~ListValue(); + virtual ~ListValue(); // Clears the contents of this ListValue void Clear(); diff --git a/chrome/browser/autocomplete/autocomplete_edit.h b/chrome/browser/autocomplete/autocomplete_edit.h index 9d3f8b8..1da8241 100644 --- a/chrome/browser/autocomplete/autocomplete_edit.h +++ b/chrome/browser/autocomplete/autocomplete_edit.h @@ -103,7 +103,7 @@ class AutocompleteEditModel : public AutocompleteControllerDelegate { AutocompleteEditModel(OmniboxView* view, AutocompleteEditController* controller, Profile* profile); - ~AutocompleteEditModel(); + virtual ~AutocompleteEditModel(); AutocompleteController* autocomplete_controller() const { return autocomplete_controller_.get(); diff --git a/chrome/browser/autocomplete/autocomplete_popup_view_gtk.h b/chrome/browser/autocomplete/autocomplete_popup_view_gtk.h index 7152fa2..2f3eda3 100644 --- a/chrome/browser/autocomplete/autocomplete_popup_view_gtk.h +++ b/chrome/browser/autocomplete/autocomplete_popup_view_gtk.h @@ -36,7 +36,7 @@ class AutocompletePopupViewGtk : public AutocompletePopupView, AutocompleteEditModel* edit_model, Profile* profile, GtkWidget* location_bar); - ~AutocompletePopupViewGtk(); + virtual ~AutocompletePopupViewGtk(); // Overridden from AutocompletePopupView: virtual bool IsOpen() const; diff --git a/chrome/browser/autocomplete/history_contents_provider.h b/chrome/browser/autocomplete/history_contents_provider.h index e4279a1..7ceb0b9 100644 --- a/chrome/browser/autocomplete/history_contents_provider.h +++ b/chrome/browser/autocomplete/history_contents_provider.h @@ -35,7 +35,7 @@ class HistoryContentsProvider : public HistoryProvider { virtual void Stop() OVERRIDE; private: - ~HistoryContentsProvider(); + virtual ~HistoryContentsProvider(); void QueryComplete(HistoryService::Handle handle, history::QueryResults* results); diff --git a/chrome/browser/autocomplete/history_quick_provider.h b/chrome/browser/autocomplete/history_quick_provider.h index 69c7dc8..20cd5df 100644 --- a/chrome/browser/autocomplete/history_quick_provider.h +++ b/chrome/browser/autocomplete/history_quick_provider.h @@ -28,7 +28,7 @@ class HistoryQuickProvider : public HistoryProvider { public: HistoryQuickProvider(ACProviderListener* listener, Profile* profile); - ~HistoryQuickProvider(); + virtual ~HistoryQuickProvider(); // AutocompleteProvider. |minimal_changes| is ignored since there // is no asynch completion performed. diff --git a/chrome/browser/autocomplete/search_provider.h b/chrome/browser/autocomplete/search_provider.h index e627cb4..2a62236 100644 --- a/chrome/browser/autocomplete/search_provider.h +++ b/chrome/browser/autocomplete/search_provider.h @@ -82,7 +82,7 @@ class SearchProvider : public AutocompleteProvider, static const int kKeywordProviderURLFetcherID; private: - ~SearchProvider(); + virtual ~SearchProvider(); // Manages the providers (TemplateURLs) used by SearchProvider. Two providers // may be used: diff --git a/chrome/browser/background_application_list_model.h b/chrome/browser/background_application_list_model.h index 7639aeb..ba23aef 100644 --- a/chrome/browser/background_application_list_model.h +++ b/chrome/browser/background_application_list_model.h @@ -45,7 +45,7 @@ class BackgroundApplicationListModel : public NotificationObserver { // Create a new model associated with profile. explicit BackgroundApplicationListModel(Profile* profile); - ~BackgroundApplicationListModel(); + virtual ~BackgroundApplicationListModel(); // Associate observer with this model. void AddObserver(Observer* observer); diff --git a/chrome/browser/bookmarks/bookmark_html_writer.h b/chrome/browser/bookmarks/bookmark_html_writer.h index 8979f67..945559e 100644 --- a/chrome/browser/bookmarks/bookmark_html_writer.h +++ b/chrome/browser/bookmarks/bookmark_html_writer.h @@ -41,7 +41,7 @@ class BookmarkFaviconFetcher: public NotificationObserver { BookmarkFaviconFetcher(Profile* profile, const FilePath& path, BookmarksExportObserver* observer); - ~BookmarkFaviconFetcher(); + virtual ~BookmarkFaviconFetcher(); // Executes bookmark export process. void ExportBookmarks(); diff --git a/chrome/browser/bookmarks/bookmark_storage.h b/chrome/browser/bookmarks/bookmark_storage.h index cf1d4b1..05e1392 100644 --- a/chrome/browser/bookmarks/bookmark_storage.h +++ b/chrome/browser/bookmarks/bookmark_storage.h @@ -104,7 +104,7 @@ class BookmarkStorage : public NotificationObserver, private: friend class base::RefCountedThreadSafe<BookmarkStorage>; - ~BookmarkStorage(); + virtual ~BookmarkStorage(); class LoadTask; diff --git a/chrome/browser/browsing_data_remover.h b/chrome/browser/browsing_data_remover.h index ba50151..3f31a4d 100644 --- a/chrome/browser/browsing_data_remover.h +++ b/chrome/browser/browsing_data_remover.h @@ -108,7 +108,7 @@ class BrowsingDataRemover : public NotificationObserver, // to be deleted by other objects so make destructor private and DeleteTask // a friend. friend class DeleteTask<BrowsingDataRemover>; - ~BrowsingDataRemover(); + virtual ~BrowsingDataRemover(); // NotificationObserver method. Callback when TemplateURLModel has finished // loading. Deletes the entries from the model, and if we're not waiting on diff --git a/chrome/browser/content_settings/content_settings_policy_provider.h b/chrome/browser/content_settings/content_settings_policy_provider.h index 3f6b79a..a2efaaa 100644 --- a/chrome/browser/content_settings/content_settings_policy_provider.h +++ b/chrome/browser/content_settings/content_settings_policy_provider.h @@ -86,7 +86,7 @@ class PolicyProvider : public BaseProvider, public: explicit PolicyProvider(Profile* profile, DefaultProviderInterface* default_provider); - ~PolicyProvider(); + virtual ~PolicyProvider(); static void RegisterUserPrefs(PrefService* prefs); // BaseProvider Implementation diff --git a/chrome/browser/content_settings/host_content_settings_map.h b/chrome/browser/content_settings/host_content_settings_map.h index b23c5f0..09b3500 100644 --- a/chrome/browser/content_settings/host_content_settings_map.h +++ b/chrome/browser/content_settings/host_content_settings_map.h @@ -167,7 +167,7 @@ class HostContentSettingsMap friend struct BrowserThread::DeleteOnThread<BrowserThread::UI>; friend class DeleteTask<HostContentSettingsMap>; - ~HostContentSettingsMap(); + virtual ~HostContentSettingsMap(); void UnregisterObservers(); diff --git a/chrome/browser/debugger/browser_list_tabcontents_provider.h b/chrome/browser/debugger/browser_list_tabcontents_provider.h index 5db5f3d..f7fd61e 100644 --- a/chrome/browser/debugger/browser_list_tabcontents_provider.h +++ b/chrome/browser/debugger/browser_list_tabcontents_provider.h @@ -11,7 +11,7 @@ class BrowserListTabContentsProvider : public DevToolsHttpProtocolHandler::TabContentsProvider { public: BrowserListTabContentsProvider() {} - ~BrowserListTabContentsProvider() {} + virtual ~BrowserListTabContentsProvider() {} virtual DevToolsHttpProtocolHandler::InspectableTabs GetInspectableTabs(); private: diff --git a/chrome/browser/debugger/devtools_netlog_observer.h b/chrome/browser/debugger/devtools_netlog_observer.h index 2d0abf3..75efa8e 100644 --- a/chrome/browser/debugger/devtools_netlog_observer.h +++ b/chrome/browser/debugger/devtools_netlog_observer.h @@ -67,7 +67,7 @@ class DevToolsNetLogObserver: public ChromeNetLog::ThreadSafeObserver { static DevToolsNetLogObserver* instance_; explicit DevToolsNetLogObserver(ChromeNetLog* chrome_net_log); - ~DevToolsNetLogObserver(); + virtual ~DevToolsNetLogObserver(); ResourceInfo* GetResourceInfo(uint32 id); diff --git a/chrome/browser/debugger/inspectable_tab_proxy.h b/chrome/browser/debugger/inspectable_tab_proxy.h index e521b31..55fd8c6 100644 --- a/chrome/browser/debugger/inspectable_tab_proxy.h +++ b/chrome/browser/debugger/inspectable_tab_proxy.h @@ -65,7 +65,7 @@ class DevToolsClientHostImpl : public DevToolsClientHost { int32 id, DebuggerRemoteService* service, InspectableTabProxy::IdToClientHostMap* map); - ~DevToolsClientHostImpl(); + virtual ~DevToolsClientHostImpl(); DebuggerRemoteService* debugger_remote_service() { return service_; diff --git a/chrome/browser/download/download_manager.h b/chrome/browser/download/download_manager.h index fc41675..79018be 100644 --- a/chrome/browser/download/download_manager.h +++ b/chrome/browser/download/download_manager.h @@ -278,7 +278,7 @@ class DownloadManager friend class DeleteTask<DownloadManager>; friend class OtherDownloadManagerObserver; - ~DownloadManager(); + virtual ~DownloadManager(); // Called on the download thread to check whether the suggested file path // exists. We don't check if the file exists on the UI thread to avoid UI diff --git a/chrome/browser/download/save_package.h b/chrome/browser/download/save_package.h index b58967b..74f5526 100644 --- a/chrome/browser/download/save_package.h +++ b/chrome/browser/download/save_package.h @@ -151,7 +151,7 @@ class SavePackage : public base::RefCountedThreadSafe<SavePackage>, const FilePath& file_full_path, const FilePath& directory_full_path); - ~SavePackage(); + virtual ~SavePackage(); // Notes from Init() above applies here as well. void InternalInit(); diff --git a/chrome/browser/extensions/crx_installer.h b/chrome/browser/extensions/crx_installer.h index 1759517..88b6052 100644 --- a/chrome/browser/extensions/crx_installer.h +++ b/chrome/browser/extensions/crx_installer.h @@ -143,7 +143,7 @@ class CrxInstaller } private: - ~CrxInstaller(); + virtual ~CrxInstaller(); // Converts the source user script to an extension. void ConvertUserScriptOnFileThread(); diff --git a/chrome/browser/extensions/extension_apitest.h b/chrome/browser/extensions/extension_apitest.h index 1bab742..a1878cb 100644 --- a/chrome/browser/extensions/extension_apitest.h +++ b/chrome/browser/extensions/extension_apitest.h @@ -38,7 +38,7 @@ class ExtensionApiTest : public ExtensionBrowserTest { class ResultCatcher : public NotificationObserver { public: ResultCatcher(); - ~ResultCatcher(); + virtual ~ResultCatcher(); // Pumps the UI loop until a notification is received that an API test // succeeded or failed. Returns true if the test succeeded, false otherwise. diff --git a/chrome/browser/extensions/extension_browser_actions_api.h b/chrome/browser/extensions/extension_browser_actions_api.h index c6b2e24..ad7b706 100644 --- a/chrome/browser/extensions/extension_browser_actions_api.h +++ b/chrome/browser/extensions/extension_browser_actions_api.h @@ -37,28 +37,28 @@ class BrowserActionFunction : public SyncExtensionFunction { // Implement chrome.browserAction.setIcon(). class BrowserActionSetIconFunction : public BrowserActionFunction { - ~BrowserActionSetIconFunction() {} + virtual ~BrowserActionSetIconFunction() {} virtual bool RunBrowserAction(); DECLARE_EXTENSION_FUNCTION_NAME("browserAction.setIcon") }; // Implement chrome.browserAction.setTitle(). class BrowserActionSetTitleFunction : public BrowserActionFunction { - ~BrowserActionSetTitleFunction() {} + virtual ~BrowserActionSetTitleFunction() {} virtual bool RunBrowserAction(); DECLARE_EXTENSION_FUNCTION_NAME("browserAction.setTitle") }; // Implement chrome.browserActions.setPopup(). class BrowserActionSetPopupFunction : public BrowserActionFunction { - ~BrowserActionSetPopupFunction() {} + virtual ~BrowserActionSetPopupFunction() {} virtual bool RunBrowserAction(); DECLARE_EXTENSION_FUNCTION_NAME("browserAction.setPopup") }; // Implement chrome.browserAction.setBadgeText(). class BrowserActionSetBadgeTextFunction : public BrowserActionFunction { - ~BrowserActionSetBadgeTextFunction() {} + virtual ~BrowserActionSetBadgeTextFunction() {} virtual bool RunBrowserAction(); DECLARE_EXTENSION_FUNCTION_NAME("browserAction.setBadgeText") }; @@ -66,7 +66,7 @@ class BrowserActionSetBadgeTextFunction : public BrowserActionFunction { // Implement chrome.browserAction.setBadgeBackgroundColor(). class BrowserActionSetBadgeBackgroundColorFunction : public BrowserActionFunction { - ~BrowserActionSetBadgeBackgroundColorFunction() {} + virtual ~BrowserActionSetBadgeBackgroundColorFunction() {} virtual bool RunBrowserAction(); DECLARE_EXTENSION_FUNCTION_NAME("browserAction.setBadgeBackgroundColor") }; diff --git a/chrome/browser/extensions/extension_browser_event_router.h b/chrome/browser/extensions/extension_browser_event_router.h index 8939f2d..8e352a1 100644 --- a/chrome/browser/extensions/extension_browser_event_router.h +++ b/chrome/browser/extensions/extension_browser_event_router.h @@ -36,7 +36,7 @@ class ExtensionBrowserEventRouter : public TabStripModelObserver, public NotificationObserver { public: explicit ExtensionBrowserEventRouter(Profile* profile); - ~ExtensionBrowserEventRouter(); + virtual ~ExtensionBrowserEventRouter(); // Must be called once. Subsequent calls have no effect. void Init(); diff --git a/chrome/browser/extensions/extension_context_menu_api.h b/chrome/browser/extensions/extension_context_menu_api.h index 5562bc7..a7b1694 100644 --- a/chrome/browser/extensions/extension_context_menu_api.h +++ b/chrome/browser/extensions/extension_context_menu_api.h @@ -15,7 +15,7 @@ class ExtensionMenuItem; class ExtensionContextMenuFunction : public SyncExtensionFunction { public: - ~ExtensionContextMenuFunction() {} + virtual ~ExtensionContextMenuFunction() {} protected: // Helper function to read and parse a list of menu item contexts. @@ -60,25 +60,25 @@ class ExtensionContextMenuFunction : public SyncExtensionFunction { }; class CreateContextMenuFunction : public ExtensionContextMenuFunction { - ~CreateContextMenuFunction() {} + virtual ~CreateContextMenuFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("contextMenus.create") }; class UpdateContextMenuFunction : public ExtensionContextMenuFunction { - ~UpdateContextMenuFunction() {} + virtual ~UpdateContextMenuFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("contextMenus.update") }; class RemoveContextMenuFunction : public ExtensionContextMenuFunction { - ~RemoveContextMenuFunction() {} + virtual ~RemoveContextMenuFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("contextMenus.remove") }; class RemoveAllContextMenusFunction : public ExtensionContextMenuFunction { - ~RemoveAllContextMenusFunction() {} + virtual ~RemoveAllContextMenusFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("contextMenus.removeAll") }; diff --git a/chrome/browser/extensions/extension_debugger_api.h b/chrome/browser/extensions/extension_debugger_api.h index 0974b1c..5fd9d00 100644 --- a/chrome/browser/extensions/extension_debugger_api.h +++ b/chrome/browser/extensions/extension_debugger_api.h @@ -34,7 +34,7 @@ class DebuggerFunction : public AsyncExtensionFunction { class AttachDebuggerFunction : public DebuggerFunction { public: AttachDebuggerFunction(); - ~AttachDebuggerFunction(); + virtual ~AttachDebuggerFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("experimental.debugger.attach") }; @@ -43,7 +43,7 @@ class AttachDebuggerFunction : public DebuggerFunction { class DetachDebuggerFunction : public DebuggerFunction { public: DetachDebuggerFunction(); - ~DetachDebuggerFunction(); + virtual ~DetachDebuggerFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("experimental.debugger.detach") }; @@ -52,7 +52,7 @@ class DetachDebuggerFunction : public DebuggerFunction { class SendRequestDebuggerFunction : public DebuggerFunction { public: SendRequestDebuggerFunction(); - ~SendRequestDebuggerFunction(); + virtual ~SendRequestDebuggerFunction(); virtual bool RunImpl(); void SendResponseBody(DictionaryValue* dictionary); diff --git a/chrome/browser/extensions/extension_event_router.h b/chrome/browser/extensions/extension_event_router.h index 3866c3c..4ebae0c 100644 --- a/chrome/browser/extensions/extension_event_router.h +++ b/chrome/browser/extensions/extension_event_router.h @@ -29,7 +29,7 @@ class ExtensionEventRouter : public NotificationObserver { static bool CanCrossIncognito(Profile* profile, const Extension* extension); explicit ExtensionEventRouter(Profile* profile); - ~ExtensionEventRouter(); + virtual ~ExtensionEventRouter(); // Add or remove the process/extension pair as a listener for |event_name|. // Note that multiple extensions can share a process due to process diff --git a/chrome/browser/extensions/extension_history_api.h b/chrome/browser/extensions/extension_history_api.h index d51c3f4..f6ddcdc 100644 --- a/chrome/browser/extensions/extension_history_api.h +++ b/chrome/browser/extensions/extension_history_api.h @@ -72,7 +72,7 @@ class HistoryFunction : public AsyncExtensionFunction { class HistoryFunctionWithCallback : public HistoryFunction { public: HistoryFunctionWithCallback(); - ~HistoryFunctionWithCallback(); + virtual ~HistoryFunctionWithCallback(); // Return true if the async call was completed, false otherwise. virtual bool RunAsyncImpl() = 0; diff --git a/chrome/browser/extensions/extension_host.h b/chrome/browser/extensions/extension_host.h index a02d774..4a94235 100644 --- a/chrome/browser/extensions/extension_host.h +++ b/chrome/browser/extensions/extension_host.h @@ -51,7 +51,7 @@ class ExtensionHost : public RenderViewHostDelegate, ExtensionHost(const Extension* extension, SiteInstance* site_instance, const GURL& url, ViewType::Type host_type); - ~ExtensionHost(); + virtual ~ExtensionHost(); #if defined(TOOLKIT_VIEWS) void set_view(ExtensionView* view) { view_.reset(view); } diff --git a/chrome/browser/extensions/extension_i18n_api.h b/chrome/browser/extensions/extension_i18n_api.h index 4fcc2c7..31df715 100644 --- a/chrome/browser/extensions/extension_i18n_api.h +++ b/chrome/browser/extensions/extension_i18n_api.h @@ -9,7 +9,7 @@ #include "chrome/browser/extensions/extension_function.h" class GetAcceptLanguagesFunction : public SyncExtensionFunction { - ~GetAcceptLanguagesFunction() {} + virtual ~GetAcceptLanguagesFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("i18n.getAcceptLanguages") }; diff --git a/chrome/browser/extensions/extension_infobar_module.h b/chrome/browser/extensions/extension_infobar_module.h index 24523e1..455d334 100644 --- a/chrome/browser/extensions/extension_infobar_module.h +++ b/chrome/browser/extensions/extension_infobar_module.h @@ -9,7 +9,7 @@ #include "chrome/browser/extensions/extension_function.h" class ShowInfoBarFunction : public SyncExtensionFunction { - ~ShowInfoBarFunction() {} + virtual ~ShowInfoBarFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("experimental.infobars.show") }; diff --git a/chrome/browser/extensions/extension_management_api.h b/chrome/browser/extensions/extension_management_api.h index f7a75e5..04b2c8c 100644 --- a/chrome/browser/extensions/extension_management_api.h +++ b/chrome/browser/extensions/extension_management_api.h @@ -19,31 +19,31 @@ class ExtensionManagementFunction : public SyncExtensionFunction { }; class GetAllExtensionsFunction : public ExtensionManagementFunction { - ~GetAllExtensionsFunction() {} + virtual ~GetAllExtensionsFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("management.getAll"); }; class GetExtensionByIdFunction : public ExtensionManagementFunction { - ~GetExtensionByIdFunction() {} + virtual ~GetExtensionByIdFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("management.get"); }; class LaunchAppFunction : public ExtensionManagementFunction { - ~LaunchAppFunction() {} + virtual ~LaunchAppFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("management.launchApp"); }; class SetEnabledFunction : public ExtensionManagementFunction { - ~SetEnabledFunction() {} + virtual ~SetEnabledFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("management.setEnabled"); }; class UninstallFunction : public ExtensionManagementFunction { - ~UninstallFunction() {} + virtual ~UninstallFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("management.uninstall"); }; diff --git a/chrome/browser/extensions/extension_page_actions_module.h b/chrome/browser/extensions/extension_page_actions_module.h index ee99906..6585382 100644 --- a/chrome/browser/extensions/extension_page_actions_module.h +++ b/chrome/browser/extensions/extension_page_actions_module.h @@ -26,70 +26,70 @@ class PageActionFunction : public SyncExtensionFunction { // Implement chrome.pageActions.enableForTab(). class EnablePageActionFunction : public PageActionFunction { - ~EnablePageActionFunction() {} + virtual ~EnablePageActionFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageActions.enableForTab") }; // Implement chrome.pageActions.disableForTab(). class DisablePageActionFunction : public PageActionFunction { - ~DisablePageActionFunction() {} + virtual ~DisablePageActionFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageActions.disableForTab") }; // Implement chrome.pageActions.show(). class PageActionShowFunction : public PageActionFunction { - ~PageActionShowFunction() {} + virtual ~PageActionShowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.show") }; // Implement chrome.pageActions.hide(). class PageActionHideFunction : public PageActionFunction { - ~PageActionHideFunction() {} + virtual ~PageActionHideFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.hide") }; // Implement chrome.pageActions.setIcon(). class PageActionSetIconFunction : public PageActionFunction { - ~PageActionSetIconFunction() {} + virtual ~PageActionSetIconFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.setIcon") }; // Implement chrome.pageActions.setTitle(). class PageActionSetTitleFunction : public PageActionFunction { - ~PageActionSetTitleFunction() {} + virtual ~PageActionSetTitleFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.setTitle") }; // Implement chrome.pageActions.setPopup(). class PageActionSetPopupFunction : public PageActionFunction { - ~PageActionSetPopupFunction() {} + virtual ~PageActionSetPopupFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.setPopup") }; // Implement chrome.pageActions.setBadgeBackgroundColor(). class PageActionSetBadgeBackgroundColorFunction : public PageActionFunction { - ~PageActionSetBadgeBackgroundColorFunction() {} + virtual ~PageActionSetBadgeBackgroundColorFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.setBadgeBackgroundColor") }; // Implement chrome.pageActions.setBadgeTextColor(). class PageActionSetBadgeTextColorFunction : public PageActionFunction { - ~PageActionSetBadgeTextColorFunction() {} + virtual ~PageActionSetBadgeTextColorFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.setBadgeTextColor") }; // Implement chrome.pageActions.setBadgeText(). class PageActionSetBadgeTextFunction : public PageActionFunction { - ~PageActionSetBadgeTextFunction() {} + virtual ~PageActionSetBadgeTextFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("pageAction.setBadgeText") }; diff --git a/chrome/browser/extensions/extension_tabs_module.h b/chrome/browser/extensions/extension_tabs_module.h index e775505..f110c6e 100644 --- a/chrome/browser/extensions/extension_tabs_module.h +++ b/chrome/browser/extensions/extension_tabs_module.h @@ -51,64 +51,64 @@ bool GetTabById(int tab_id, Profile* profile, bool incognito_enabled, // Windows class GetWindowFunction : public SyncExtensionFunction { - ~GetWindowFunction() {} + virtual ~GetWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.get") }; class GetCurrentWindowFunction : public SyncExtensionFunction { - ~GetCurrentWindowFunction() {} + virtual ~GetCurrentWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.getCurrent") }; class GetLastFocusedWindowFunction : public SyncExtensionFunction { - ~GetLastFocusedWindowFunction() {} + virtual ~GetLastFocusedWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.getLastFocused") }; class GetAllWindowsFunction : public SyncExtensionFunction { - ~GetAllWindowsFunction() {} + virtual ~GetAllWindowsFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.getAll") }; class CreateWindowFunction : public SyncExtensionFunction { - ~CreateWindowFunction() {} + virtual ~CreateWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.create") }; class UpdateWindowFunction : public SyncExtensionFunction { - ~UpdateWindowFunction() {} + virtual ~UpdateWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.update") }; class RemoveWindowFunction : public SyncExtensionFunction { - ~RemoveWindowFunction() {} + virtual ~RemoveWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("windows.remove") }; // Tabs class GetTabFunction : public SyncExtensionFunction { - ~GetTabFunction() {} + virtual ~GetTabFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.get") }; class GetCurrentTabFunction : public SyncExtensionFunction { - ~GetCurrentTabFunction() {} + virtual ~GetCurrentTabFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.getCurrent") }; class GetSelectedTabFunction : public SyncExtensionFunction { - ~GetSelectedTabFunction() {} + virtual ~GetSelectedTabFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.getSelected") }; class GetAllTabsInWindowFunction : public SyncExtensionFunction { - ~GetAllTabsInWindowFunction() {} + virtual ~GetAllTabsInWindowFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.getAllInWindow") }; class CreateTabFunction : public SyncExtensionFunction { - ~CreateTabFunction() {} + virtual ~CreateTabFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.create") }; @@ -117,7 +117,7 @@ class UpdateTabFunction : public AsyncExtensionFunction, public: UpdateTabFunction(); private: - ~UpdateTabFunction() {} + virtual ~UpdateTabFunction() {} virtual bool RunImpl(); virtual bool OnMessageReceived(const IPC::Message& message); void OnExecuteCodeFinished(int request_id, bool success, @@ -126,19 +126,19 @@ class UpdateTabFunction : public AsyncExtensionFunction, DECLARE_EXTENSION_FUNCTION_NAME("tabs.update") }; class MoveTabFunction : public SyncExtensionFunction { - ~MoveTabFunction() {} + virtual ~MoveTabFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.move") }; class RemoveTabFunction : public SyncExtensionFunction { - ~RemoveTabFunction() {} + virtual ~RemoveTabFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("tabs.remove") }; class DetectTabLanguageFunction : public AsyncExtensionFunction, public NotificationObserver { private: - ~DetectTabLanguageFunction() {} + virtual ~DetectTabLanguageFunction() {} virtual bool RunImpl(); virtual void Observe(NotificationType type, @@ -159,7 +159,7 @@ class CaptureVisibleTabFunction : public AsyncExtensionFunction, // The default quality setting used when encoding jpegs. static const int kDefaultQuality; - ~CaptureVisibleTabFunction() {} + virtual ~CaptureVisibleTabFunction() {} virtual bool RunImpl(); virtual bool CaptureSnapshotFromBackingStore(BackingStore* backing_store); virtual void Observe(NotificationType type, diff --git a/chrome/browser/extensions/extension_test_api.h b/chrome/browser/extensions/extension_test_api.h index 1a0baa0..b3c113a 100644 --- a/chrome/browser/extensions/extension_test_api.h +++ b/chrome/browser/extensions/extension_test_api.h @@ -12,31 +12,31 @@ template <typename T> struct DefaultSingletonTraits; class ExtensionTestPassFunction : public SyncExtensionFunction { - ~ExtensionTestPassFunction(); + virtual ~ExtensionTestPassFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.notifyPass") }; class ExtensionTestFailFunction : public SyncExtensionFunction { - ~ExtensionTestFailFunction(); + virtual ~ExtensionTestFailFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.notifyFail") }; class ExtensionTestLogFunction : public SyncExtensionFunction { - ~ExtensionTestLogFunction(); + virtual ~ExtensionTestLogFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.log") }; class ExtensionTestQuotaResetFunction : public SyncExtensionFunction { - ~ExtensionTestQuotaResetFunction(); + virtual ~ExtensionTestQuotaResetFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.resetQuota") }; class ExtensionTestCreateIncognitoTabFunction : public SyncExtensionFunction { - ~ExtensionTestCreateIncognitoTabFunction(); + virtual ~ExtensionTestCreateIncognitoTabFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.createIncognitoTab") }; @@ -48,7 +48,7 @@ class ExtensionTestSendMessageFunction : public AsyncExtensionFunction { void Reply(const std::string& message); private: - ~ExtensionTestSendMessageFunction(); + virtual ~ExtensionTestSendMessageFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.sendMessage") }; @@ -81,7 +81,7 @@ class ExtensionTestGetConfigFunction : public SyncExtensionFunction { DISALLOW_COPY_AND_ASSIGN(TestConfigState); }; - ~ExtensionTestGetConfigFunction(); + virtual ~ExtensionTestGetConfigFunction(); virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("test.getConfig") }; diff --git a/chrome/browser/extensions/extension_test_message_listener.h b/chrome/browser/extensions/extension_test_message_listener.h index d077472..fa06dc7 100644 --- a/chrome/browser/extensions/extension_test_message_listener.h +++ b/chrome/browser/extensions/extension_test_message_listener.h @@ -47,7 +47,7 @@ class ExtensionTestMessageListener : public NotificationObserver { // We immediately start listening for |expected_message|. ExtensionTestMessageListener(const std::string& expected_message, bool will_reply); - ~ExtensionTestMessageListener(); + virtual ~ExtensionTestMessageListener(); // This returns true immediately if we've already gotten the expected // message, or waits until it arrives. Returns false if the wait is diff --git a/chrome/browser/extensions/extension_toolbar_model.h b/chrome/browser/extensions/extension_toolbar_model.h index 1e1c9d7..3b1642d 100644 --- a/chrome/browser/extensions/extension_toolbar_model.h +++ b/chrome/browser/extensions/extension_toolbar_model.h @@ -18,7 +18,7 @@ class PrefService; class ExtensionToolbarModel : public NotificationObserver { public: explicit ExtensionToolbarModel(ExtensionService* service); - ~ExtensionToolbarModel(); + virtual ~ExtensionToolbarModel(); // A class which is informed of changes to the model; represents the view of // MVC. diff --git a/chrome/browser/extensions/extension_tts_api.h b/chrome/browser/extensions/extension_tts_api.h index ad436a8..88e8ba8 100644 --- a/chrome/browser/extensions/extension_tts_api.h +++ b/chrome/browser/extensions/extension_tts_api.h @@ -205,7 +205,7 @@ class ExtensionTtsController { class ExtensionTtsSpeakFunction : public AsyncExtensionFunction { private: - ~ExtensionTtsSpeakFunction() {} + virtual ~ExtensionTtsSpeakFunction() {} virtual bool RunImpl(); void SpeechFinished(); Utterance* utterance_; @@ -214,21 +214,21 @@ class ExtensionTtsSpeakFunction : public AsyncExtensionFunction { class ExtensionTtsStopSpeakingFunction : public SyncExtensionFunction { private: - ~ExtensionTtsStopSpeakingFunction() {} + virtual ~ExtensionTtsStopSpeakingFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("experimental.tts.stop") }; class ExtensionTtsIsSpeakingFunction : public SyncExtensionFunction { private: - ~ExtensionTtsIsSpeakingFunction() {} + virtual ~ExtensionTtsIsSpeakingFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("experimental.tts.isSpeaking") }; class ExtensionTtsSpeakCompletedFunction : public SyncExtensionFunction { private: - ~ExtensionTtsSpeakCompletedFunction() {} + virtual ~ExtensionTtsSpeakCompletedFunction() {} virtual bool RunImpl(); DECLARE_EXTENSION_FUNCTION_NAME("experimental.tts.speakCompleted") }; diff --git a/chrome/browser/extensions/extensions_ui.h b/chrome/browser/extensions/extensions_ui.h index 82fcd09..00536ce 100644 --- a/chrome/browser/extensions/extensions_ui.h +++ b/chrome/browser/extensions/extensions_ui.h @@ -54,7 +54,7 @@ class ExtensionsUIHTMLSource : public ChromeURLDataManager::DataSource { virtual std::string GetMimeType(const std::string&) const; private: - ~ExtensionsUIHTMLSource() {} + virtual ~ExtensionsUIHTMLSource() {} DISALLOW_COPY_AND_ASSIGN(ExtensionsUIHTMLSource); }; diff --git a/chrome/browser/extensions/image_loading_tracker.h b/chrome/browser/extensions/image_loading_tracker.h index 813af06..ca0d863 100644 --- a/chrome/browser/extensions/image_loading_tracker.h +++ b/chrome/browser/extensions/image_loading_tracker.h @@ -59,7 +59,7 @@ class ImageLoadingTracker : public NotificationObserver { }; explicit ImageLoadingTracker(Observer* observer); - ~ImageLoadingTracker(); + virtual ~ImageLoadingTracker(); // Specify image resource to load. If the loaded image is larger than // |max_size| it will be resized to those dimensions. IMPORTANT NOTE: this diff --git a/chrome/browser/extensions/user_script_listener.h b/chrome/browser/extensions/user_script_listener.h index f23d471..da61a36 100644 --- a/chrome/browser/extensions/user_script_listener.h +++ b/chrome/browser/extensions/user_script_listener.h @@ -49,7 +49,7 @@ class UserScriptListener typedef std::list<URLPattern> URLPatterns; - ~UserScriptListener(); + virtual ~UserScriptListener(); // Resume any requests that we delayed in order to wait for user scripts. void StartDelayedRequests(); diff --git a/chrome/browser/favicon/favicon_service.h b/chrome/browser/favicon/favicon_service.h index 04cec79..1407eb8 100644 --- a/chrome/browser/favicon/favicon_service.h +++ b/chrome/browser/favicon/favicon_service.h @@ -94,7 +94,7 @@ class FaviconService : public CancelableRequestProvider, private: friend class base::RefCountedThreadSafe<FaviconService>; - ~FaviconService(); + virtual ~FaviconService(); Profile* profile_; diff --git a/chrome/browser/file_select_helper.h b/chrome/browser/file_select_helper.h index 270c8aa..a013715 100644 --- a/chrome/browser/file_select_helper.h +++ b/chrome/browser/file_select_helper.h @@ -29,7 +29,7 @@ class FileSelectHelper public NotificationObserver { public: explicit FileSelectHelper(Profile* profile); - ~FileSelectHelper(); + virtual ~FileSelectHelper(); // Show the file chooser dialog. void RunFileChooser(RenderViewHost* render_view_host, @@ -50,7 +50,7 @@ class FileSelectHelper DirectoryListerDispatchDelegate(FileSelectHelper* parent, int id) : parent_(parent), id_(id) {} - ~DirectoryListerDispatchDelegate() {} + virtual ~DirectoryListerDispatchDelegate() {} virtual void OnListFile( const net::DirectoryLister::DirectoryListerData& data) { parent_->OnListFile(id_, data); @@ -123,7 +123,7 @@ class FileSelectHelper class FileSelectObserver : public TabContentsObserver { public: explicit FileSelectObserver(TabContents* tab_contents); - ~FileSelectObserver(); + virtual ~FileSelectObserver(); private: // TabContentsObserver overrides. diff --git a/chrome/browser/history/history.h b/chrome/browser/history/history.h index b976c6a..843148c 100644 --- a/chrome/browser/history/history.h +++ b/chrome/browser/history/history.h @@ -577,7 +577,7 @@ class HistoryService : public CancelableRequestProvider, static bool CanAddURL(const GURL& url); protected: - ~HistoryService(); + virtual ~HistoryService(); // These are not currently used, hopefully we can do something in the future // to ensure that the most important things happen first. diff --git a/chrome/browser/history/history_notifications.h b/chrome/browser/history/history_notifications.h index a34bf8e..a5e0ea2 100644 --- a/chrome/browser/history/history_notifications.h +++ b/chrome/browser/history/history_notifications.h @@ -87,7 +87,7 @@ struct FaviconChangeDetails : public HistoryDetails { // Details for HISTORY_KEYWORD_SEARCH_TERM_UPDATED. struct KeywordSearchTermDetails : public HistoryDetails { KeywordSearchTermDetails(); - ~KeywordSearchTermDetails(); + virtual ~KeywordSearchTermDetails(); GURL url; TemplateURLID keyword_id; diff --git a/chrome/browser/history/history_types.h b/chrome/browser/history/history_types.h index 6a3e553..6d4925b 100644 --- a/chrome/browser/history/history_types.h +++ b/chrome/browser/history/history_types.h @@ -345,7 +345,7 @@ class URLResult : public URLRow { // Constructor that create a URLResult from the specified URL and title match // positions from title_matches. URLResult(const GURL& url, const Snippet::MatchPositions& title_matches); - ~URLResult(); + virtual ~URLResult(); base::Time visit_time() const { return visit_time_; } void set_visit_time(base::Time visit_time) { visit_time_ = visit_time; } diff --git a/chrome/browser/history/in_memory_history_backend.h b/chrome/browser/history/in_memory_history_backend.h index 8713325..d2c602d 100644 --- a/chrome/browser/history/in_memory_history_backend.h +++ b/chrome/browser/history/in_memory_history_backend.h @@ -39,7 +39,7 @@ struct URLsModifiedDetails; class InMemoryHistoryBackend : public NotificationObserver { public: InMemoryHistoryBackend(); - ~InMemoryHistoryBackend(); + virtual ~InMemoryHistoryBackend(); // Initializes the backend from the history database pointed to by the // full path in |history_filename|. |history_dir| is the path to the diff --git a/chrome/browser/history/top_sites_backend.h b/chrome/browser/history/top_sites_backend.h index b469d79..a2a5b61 100644 --- a/chrome/browser/history/top_sites_backend.h +++ b/chrome/browser/history/top_sites_backend.h @@ -69,7 +69,7 @@ class TopSitesBackend private: friend class base::RefCountedThreadSafe<TopSitesBackend>; - ~TopSitesBackend(); + virtual ~TopSitesBackend(); // Invokes Init on the db_. void InitDBOnDBThread(const FilePath& path); diff --git a/chrome/browser/icon_manager.h b/chrome/browser/icon_manager.h index a363df6..4829006 100644 --- a/chrome/browser/icon_manager.h +++ b/chrome/browser/icon_manager.h @@ -60,7 +60,7 @@ class IconManager : public IconLoader::Delegate, public CancelableRequestProvider { public: IconManager(); - ~IconManager(); + virtual ~IconManager(); // Synchronous call to examine the internal caches for the icon. Returns the // icon if we have already loaded it, NULL if we don't have it and must load diff --git a/chrome/browser/importer/importer_host.h b/chrome/browser/importer/importer_host.h index bb3ad0b..90825ba 100644 --- a/chrome/browser/importer/importer_host.h +++ b/chrome/browser/importer/importer_host.h @@ -81,7 +81,7 @@ class ImporterHost : public base::RefCountedThreadSafe<ImporterHost>, virtual void Cancel(); protected: - ~ImporterHost(); + virtual ~ImporterHost(); // Returns true if importer should import to bookmark bar. bool ShouldImportToBookmarkBar(bool first_run); diff --git a/chrome/browser/instant/instant_controller.h b/chrome/browser/instant/instant_controller.h index 0352dfe..3fdc14a7 100644 --- a/chrome/browser/instant/instant_controller.h +++ b/chrome/browser/instant/instant_controller.h @@ -51,7 +51,7 @@ class InstantController : public InstantLoaderDelegate { static const int kAutoCommitFadeInTimeMS = 300; InstantController(Profile* profile, InstantDelegate* delegate); - ~InstantController(); + virtual ~InstantController(); // Registers instant related preferences. static void RegisterUserPrefs(PrefService* prefs); diff --git a/chrome/browser/intranet_redirect_detector.h b/chrome/browser/intranet_redirect_detector.h index 49dc197..11ba9a9 100644 --- a/chrome/browser/intranet_redirect_detector.h +++ b/chrome/browser/intranet_redirect_detector.h @@ -46,7 +46,7 @@ class IntranetRedirectDetector // since there aren't useful public functions on this object for consumers to // access anyway). IntranetRedirectDetector(); - ~IntranetRedirectDetector(); + virtual ~IntranetRedirectDetector(); // Returns the current redirect origin. This will be empty if no redirection // is in place. diff --git a/chrome/browser/mach_broker_mac.h b/chrome/browser/mach_broker_mac.h index 40906f4..a39e17b 100644 --- a/chrome/browser/mach_broker_mac.h +++ b/chrome/browser/mach_broker_mac.h @@ -86,7 +86,7 @@ class MachBroker : public base::ProcessMetrics::PortProvider, private: // Private constructor. MachBroker(); - ~MachBroker(); + virtual ~MachBroker(); // True if the listener thread has been started. bool listener_thread_started_; @@ -110,4 +110,3 @@ class MachBroker : public base::ProcessMetrics::PortProvider, }; #endif // CHROME_BROWSER_MACH_BROKER_H_ - diff --git a/chrome/browser/nacl_host/nacl_process_host.h b/chrome/browser/nacl_host/nacl_process_host.h index e6e7c3e..a6fd8b2 100644 --- a/chrome/browser/nacl_host/nacl_process_host.h +++ b/chrome/browser/nacl_host/nacl_process_host.h @@ -26,7 +26,7 @@ class ChromeRenderMessageFilter; class NaClProcessHost : public BrowserChildProcessHost { public: explicit NaClProcessHost(const std::wstring& url); - ~NaClProcessHost(); + virtual ~NaClProcessHost(); // Initialize the new NaCl process, returning true on success. bool Launch(ChromeRenderMessageFilter* chrome_render_message_filter, diff --git a/chrome/browser/net/chrome_net_log.h b/chrome/browser/net/chrome_net_log.h index 0d55b78..909ca0a 100644 --- a/chrome/browser/net/chrome_net_log.h +++ b/chrome/browser/net/chrome_net_log.h @@ -104,7 +104,7 @@ class ChromeNetLog : public net::NetLog { }; ChromeNetLog(); - ~ChromeNetLog(); + virtual ~ChromeNetLog(); // NetLog implementation: virtual void AddEntry(EventType type, diff --git a/chrome/browser/net/load_timing_observer.h b/chrome/browser/net/load_timing_observer.h index 3cd70f5..c1f8cd4 100644 --- a/chrome/browser/net/load_timing_observer.h +++ b/chrome/browser/net/load_timing_observer.h @@ -60,7 +60,7 @@ class LoadTimingObserver : public ChromeNetLog::ThreadSafeObserver { }; LoadTimingObserver(); - ~LoadTimingObserver(); + virtual ~LoadTimingObserver(); URLRequestRecord* GetURLRequestRecord(uint32 source_id); diff --git a/chrome/browser/net/net_log_logger.h b/chrome/browser/net/net_log_logger.h index b1440b7..9f3ff75 100644 --- a/chrome/browser/net/net_log_logger.h +++ b/chrome/browser/net/net_log_logger.h @@ -23,7 +23,7 @@ class NetLogLogger : public ChromeNetLog::ThreadSafeObserver { // Otherwise, writes to |log_path|. Uses one line per entry, for // easy parsing. explicit NetLogLogger(const FilePath &log_path); - ~NetLogLogger(); + virtual ~NetLogLogger(); // ThreadSafeObserver implementation: virtual void OnAddEntry(net::NetLog::EventType type, @@ -39,4 +39,3 @@ class NetLogLogger : public ChromeNetLog::ThreadSafeObserver { }; #endif // CHROME_BROWSER_NET_NET_LOG_LOGGER_H_ - diff --git a/chrome/browser/net/net_pref_observer.h b/chrome/browser/net/net_pref_observer.h index d023572..b58501a0 100644 --- a/chrome/browser/net/net_pref_observer.h +++ b/chrome/browser/net/net_pref_observer.h @@ -28,7 +28,7 @@ class NetPrefObserver : public NotificationObserver { // outlive this. NetPrefObserver(PrefService* prefs, prerender::PrerenderManager* prerender_manager); - ~NetPrefObserver(); + virtual ~NetPrefObserver(); // NotificationObserver virtual void Observe(NotificationType type, @@ -50,4 +50,3 @@ class NetPrefObserver : public NotificationObserver { }; #endif // CHROME_BROWSER_NET_NET_PREF_OBSERVER_H_ - diff --git a/chrome/browser/net/passive_log_collector.h b/chrome/browser/net/passive_log_collector.h index 2e541f5..d209031 100644 --- a/chrome/browser/net/passive_log_collector.h +++ b/chrome/browser/net/passive_log_collector.h @@ -90,7 +90,7 @@ class PassiveLogCollector : public ChromeNetLog::ThreadSafeObserver { class GlobalSourceTracker : public SourceTrackerInterface { public: GlobalSourceTracker(); - ~GlobalSourceTracker(); + virtual ~GlobalSourceTracker(); // SourceTrackerInterface implementation: virtual void OnAddEntry(const ChromeNetLog::Entry& entry); @@ -343,7 +343,7 @@ class PassiveLogCollector : public ChromeNetLog::ThreadSafeObserver { PassiveLogCollector(); - ~PassiveLogCollector(); + virtual ~PassiveLogCollector(); // ThreadSafeObserver implementation: virtual void OnAddEntry(net::NetLog::EventType type, diff --git a/chrome/browser/net/url_request_failed_dns_job.h b/chrome/browser/net/url_request_failed_dns_job.h index 693f382..34919d5 100644 --- a/chrome/browser/net/url_request_failed_dns_job.h +++ b/chrome/browser/net/url_request_failed_dns_job.h @@ -26,7 +26,7 @@ class URLRequestFailedDnsJob : public net::URLRequestJob { static void AddUrlHandler(); private: - ~URLRequestFailedDnsJob(); + virtual ~URLRequestFailedDnsJob(); // Simulate a DNS failure. void StartAsync(); diff --git a/chrome/browser/net/url_request_mock_link_doctor_job.h b/chrome/browser/net/url_request_mock_link_doctor_job.h index 1e8a5a6..114f369 100644 --- a/chrome/browser/net/url_request_mock_link_doctor_job.h +++ b/chrome/browser/net/url_request_mock_link_doctor_job.h @@ -20,7 +20,7 @@ class URLRequestMockLinkDoctorJob : public URLRequestMockHTTPJob { static void AddUrlHandler(); private: - ~URLRequestMockLinkDoctorJob() {} + virtual ~URLRequestMockLinkDoctorJob() {} }; #endif // CHROME_BROWSER_NET_URL_REQUEST_MOCK_LINK_DOCTOR_JOB_H_ diff --git a/chrome/browser/net/url_request_mock_net_error_job.h b/chrome/browser/net/url_request_mock_net_error_job.h index 874a3d1..9a8e0a9 100644 --- a/chrome/browser/net/url_request_mock_net_error_job.h +++ b/chrome/browser/net/url_request_mock_net_error_job.h @@ -38,7 +38,7 @@ class URLRequestMockNetErrorJob : public URLRequestMockHTTPJob { static void RemoveMockedURL(const GURL& url); private: - ~URLRequestMockNetErrorJob(); + virtual ~URLRequestMockNetErrorJob(); static net::URLRequest::ProtocolFactory Factory; diff --git a/chrome/browser/net/url_request_slow_http_job.h b/chrome/browser/net/url_request_slow_http_job.h index d46719f..3f60f50 100644 --- a/chrome/browser/net/url_request_slow_http_job.h +++ b/chrome/browser/net/url_request_slow_http_job.h @@ -28,7 +28,7 @@ class URLRequestSlowHTTPJob : public URLRequestMockHTTPJob { virtual void Start(); private: - ~URLRequestSlowHTTPJob(); + virtual ~URLRequestSlowHTTPJob(); void RealStart(); diff --git a/chrome/browser/omnibox_search_hint.h b/chrome/browser/omnibox_search_hint.h index ac90c0c..452c8a6 100644 --- a/chrome/browser/omnibox_search_hint.h +++ b/chrome/browser/omnibox_search_hint.h @@ -23,7 +23,7 @@ class TabContentsWrapper; class OmniboxSearchHint : public NotificationObserver { public: explicit OmniboxSearchHint(TabContentsWrapper* tab); - ~OmniboxSearchHint(); + virtual ~OmniboxSearchHint(); // NotificationObserver method: virtual void Observe(NotificationType type, diff --git a/chrome/browser/plugin_data_remover.h b/chrome/browser/plugin_data_remover.h index 696df1c..c455704 100644 --- a/chrome/browser/plugin_data_remover.h +++ b/chrome/browser/plugin_data_remover.h @@ -58,7 +58,7 @@ class PluginDataRemover : public base::RefCountedThreadSafe<PluginDataRemover>, private: friend class base::RefCountedThreadSafe<PluginDataRemover>; friend class PluginDataRemoverTest; - ~PluginDataRemover(); + virtual ~PluginDataRemover(); // Signals that we are finished with removing data (successful or not). This // method is safe to call multiple times. diff --git a/chrome/browser/plugin_data_remover_helper.h b/chrome/browser/plugin_data_remover_helper.h index 6175c9c..d0f8977b 100644 --- a/chrome/browser/plugin_data_remover_helper.h +++ b/chrome/browser/plugin_data_remover_helper.h @@ -21,7 +21,7 @@ class Profile; class PluginDataRemoverHelper : public NotificationObserver { public: PluginDataRemoverHelper(); - ~PluginDataRemoverHelper(); + virtual ~PluginDataRemoverHelper(); // Binds this object to the |pref_name| preference in |prefs|, notifying // |observer| if the value changes. diff --git a/chrome/browser/plugin_observer.h b/chrome/browser/plugin_observer.h index 5bd3d7b..518f341 100644 --- a/chrome/browser/plugin_observer.h +++ b/chrome/browser/plugin_observer.h @@ -17,7 +17,7 @@ class TabContentsWrapper; class PluginObserver : public TabContentsObserver { public: explicit PluginObserver(TabContentsWrapper* tab_contents); - ~PluginObserver(); + virtual ~PluginObserver(); // IPC::Channel::Listener implementation. virtual bool OnMessageReceived(const IPC::Message& message); diff --git a/chrome/browser/policy/configuration_policy_provider.h b/chrome/browser/policy/configuration_policy_provider.h index 1cbc848..5e115dd 100644 --- a/chrome/browser/policy/configuration_policy_provider.h +++ b/chrome/browser/policy/configuration_policy_provider.h @@ -103,7 +103,7 @@ class ConfigurationPolicyObserverRegistrar : ConfigurationPolicyProvider::Observer { public: ConfigurationPolicyObserverRegistrar(); - ~ConfigurationPolicyObserverRegistrar(); + virtual ~ConfigurationPolicyObserverRegistrar(); void Init(ConfigurationPolicyProvider* provider, ConfigurationPolicyProvider::Observer* observer); diff --git a/chrome/browser/policy/profile_policy_connector.h b/chrome/browser/policy/profile_policy_connector.h index 9e7f50e..4fc572b 100644 --- a/chrome/browser/policy/profile_policy_connector.h +++ b/chrome/browser/policy/profile_policy_connector.h @@ -26,7 +26,7 @@ class UserPolicyIdentityStrategy; class ProfilePolicyConnector : public ProfileKeyedService { public: explicit ProfilePolicyConnector(Profile* profile); - ~ProfilePolicyConnector(); + virtual ~ProfilePolicyConnector(); // Schedules initialization of the policy backend service if the service is // already constructed. diff --git a/chrome/browser/printing/print_dialog_gtk.h b/chrome/browser/printing/print_dialog_gtk.h index 7ec804f..47b38ad 100644 --- a/chrome/browser/printing/print_dialog_gtk.h +++ b/chrome/browser/printing/print_dialog_gtk.h @@ -53,7 +53,7 @@ class PrintDialogGtk friend class DeleteTask<PrintDialogGtk>; explicit PrintDialogGtk(PrintingContextCairo* context); - ~PrintDialogGtk(); + virtual ~PrintDialogGtk(); // Handles dialog response. CHROMEGTK_CALLBACK_1(PrintDialogGtk, void, OnResponse, int); diff --git a/chrome/browser/printing/print_job_manager.h b/chrome/browser/printing/print_job_manager.h index 1b629d9..c6089df 100644 --- a/chrome/browser/printing/print_job_manager.h +++ b/chrome/browser/printing/print_job_manager.h @@ -27,7 +27,7 @@ class PrinterQuery; class PrintJobManager : public NotificationObserver { public: PrintJobManager(); - ~PrintJobManager(); + virtual ~PrintJobManager(); // Registers for changes to the printing enabled preference in |prefs|. // This method should be called on the UI thread. diff --git a/chrome/browser/printing/print_job_worker.h b/chrome/browser/printing/print_job_worker.h index 0a3f9db..41195c6 100644 --- a/chrome/browser/printing/print_job_worker.h +++ b/chrome/browser/printing/print_job_worker.h @@ -32,7 +32,7 @@ class PrintJobWorkerOwner; class PrintJobWorker : public base::Thread { public: explicit PrintJobWorker(PrintJobWorkerOwner* owner); - ~PrintJobWorker(); + virtual ~PrintJobWorker(); void SetNewOwner(PrintJobWorkerOwner* new_owner); diff --git a/chrome/browser/profiles/off_the_record_profile_io_data.h b/chrome/browser/profiles/off_the_record_profile_io_data.h index 2490937..cad94cb 100644 --- a/chrome/browser/profiles/off_the_record_profile_io_data.h +++ b/chrome/browser/profiles/off_the_record_profile_io_data.h @@ -85,7 +85,7 @@ class OffTheRecordProfileIOData : public ProfileIOData { HttpTransactionFactoryMap; OffTheRecordProfileIOData(); - ~OffTheRecordProfileIOData(); + virtual ~OffTheRecordProfileIOData(); virtual void LazyInitializeInternal(ProfileParams* profile_params) const; virtual scoped_refptr<RequestContext> InitializeAppRequestContext( diff --git a/chrome/browser/profiles/profile_io_data.h b/chrome/browser/profiles/profile_io_data.h index ae3331b..b8ea39b 100644 --- a/chrome/browser/profiles/profile_io_data.h +++ b/chrome/browser/profiles/profile_io_data.h @@ -94,7 +94,7 @@ class ProfileIOData : public base::RefCountedThreadSafe<ProfileIOData> { class RequestContext : public ChromeURLRequestContext { public: RequestContext(); - ~RequestContext(); + virtual ~RequestContext(); // Setter is used to transfer ownership of the ProfileIOData to the context. void set_profile_io_data(const ProfileIOData* profile_io_data) { diff --git a/chrome/browser/renderer_host/download_resource_handler.h b/chrome/browser/renderer_host/download_resource_handler.h index 39d18a7..67ad0ee 100644 --- a/chrome/browser/renderer_host/download_resource_handler.h +++ b/chrome/browser/renderer_host/download_resource_handler.h @@ -71,7 +71,7 @@ class DownloadResourceHandler : public ResourceHandler { std::string DebugString() const; private: - ~DownloadResourceHandler(); + virtual ~DownloadResourceHandler(); void StartPauseTimer(); diff --git a/chrome/browser/renderer_host/render_widget_host_view_gtk.h b/chrome/browser/renderer_host/render_widget_host_view_gtk.h index d70dfbc..6c66cb1 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_gtk.h +++ b/chrome/browser/renderer_host/render_widget_host_view_gtk.h @@ -47,7 +47,7 @@ class RenderWidgetHostViewGtk : public RenderWidgetHostView, public ui::AnimationDelegate { public: explicit RenderWidgetHostViewGtk(RenderWidgetHost* widget); - ~RenderWidgetHostViewGtk(); + virtual ~RenderWidgetHostViewGtk(); // Initialize this object for use as a drawing area. void InitAsChild(); diff --git a/chrome/browser/renderer_host/safe_browsing_resource_handler.h b/chrome/browser/renderer_host/safe_browsing_resource_handler.h index ead2fc7..bf999cb 100644 --- a/chrome/browser/renderer_host/safe_browsing_resource_handler.h +++ b/chrome/browser/renderer_host/safe_browsing_resource_handler.h @@ -95,7 +95,7 @@ class SafeBrowsingResourceHandler : public ResourceHandler, SafeBrowsingService* safe_browsing, ResourceDispatcherHost* resource_dispatcher_host); - ~SafeBrowsingResourceHandler(); + virtual ~SafeBrowsingResourceHandler(); // Cancels any in progress safe browsing actions. void Shutdown(); diff --git a/chrome/browser/search_engines/search_provider_install_state_message_filter.h b/chrome/browser/search_engines/search_provider_install_state_message_filter.h index 130841f..8a89754 100644 --- a/chrome/browser/search_engines/search_provider_install_state_message_filter.h +++ b/chrome/browser/search_engines/search_provider_install_state_message_filter.h @@ -18,7 +18,7 @@ class SearchProviderInstallStateMessageFilter : public BrowserMessageFilter { // Unlike the other methods, the constructor is called on the UI thread. SearchProviderInstallStateMessageFilter(int render_process_id, Profile* profile); - ~SearchProviderInstallStateMessageFilter(); + virtual ~SearchProviderInstallStateMessageFilter(); // BrowserMessageFilter implementation. virtual bool OnMessageReceived(const IPC::Message& message, diff --git a/chrome/browser/spellcheck_message_filter.h b/chrome/browser/spellcheck_message_filter.h index 9dd6246..5e6dd5e 100644 --- a/chrome/browser/spellcheck_message_filter.h +++ b/chrome/browser/spellcheck_message_filter.h @@ -12,7 +12,7 @@ class SpellCheckMessageFilter : public BrowserMessageFilter { public: explicit SpellCheckMessageFilter(int render_process_id); - ~SpellCheckMessageFilter(); + virtual ~SpellCheckMessageFilter(); // BrowserMessageFilter implementation. virtual void OverrideThreadForMessage(const IPC::Message& message, diff --git a/chrome/browser/ssl/ssl_manager.h b/chrome/browser/ssl/ssl_manager.h index fe71398..4031129 100644 --- a/chrome/browser/ssl/ssl_manager.h +++ b/chrome/browser/ssl/ssl_manager.h @@ -72,7 +72,7 @@ class SSLManager : public NotificationObserver { // Construct an SSLManager for the specified tab. // If |delegate| is NULL, SSLPolicy::GetDefaultPolicy() is used. explicit SSLManager(NavigationController* controller); - ~SSLManager(); + virtual ~SSLManager(); SSLPolicy* policy() { return policy_.get(); } SSLPolicyBackend* backend() { return &backend_; } diff --git a/chrome/browser/sync/engine/all_status.h b/chrome/browser/sync/engine/all_status.h index db1bf48..a453f1f 100644 --- a/chrome/browser/sync/engine/all_status.h +++ b/chrome/browser/sync/engine/all_status.h @@ -30,7 +30,7 @@ class AllStatus : public SyncEngineEventListener { public: AllStatus(); - ~AllStatus(); + virtual ~AllStatus(); void HandleServerConnectionEvent(const ServerConnectionEvent& event); diff --git a/chrome/browser/sync/glue/generic_change_processor.h b/chrome/browser/sync/glue/generic_change_processor.h index 1094d12..0a7121f 100644 --- a/chrome/browser/sync/glue/generic_change_processor.h +++ b/chrome/browser/sync/glue/generic_change_processor.h @@ -32,7 +32,7 @@ class GenericChangeProcessor : public ChangeProcessor, GenericChangeProcessor(SyncableService* local_service, UnrecoverableErrorHandler* error_handler, sync_api::UserShare* user_share); - ~GenericChangeProcessor(); + virtual ~GenericChangeProcessor(); // ChangeProcessor interface. // Build and store a list of all changes into |syncer_changes_|. diff --git a/chrome/browser/sync/glue/http_bridge.h b/chrome/browser/sync/glue/http_bridge.h index 4c01392..a4ee3eb 100644 --- a/chrome/browser/sync/glue/http_bridge.h +++ b/chrome/browser/sync/glue/http_bridge.h @@ -61,7 +61,7 @@ class HttpBridge : public base::RefCountedThreadSafe<HttpBridge>, private: // The destructor MUST be called on the IO thread. - ~RequestContext(); + virtual ~RequestContext(); std::string user_agent_; net::URLRequestContext* baseline_context_; @@ -83,7 +83,7 @@ class HttpBridge : public base::RefCountedThreadSafe<HttpBridge>, virtual scoped_refptr<base::MessageLoopProxy> GetIOMessageLoopProxy() const; private: - ~RequestContextGetter() {} + virtual ~RequestContextGetter() {} // User agent to apply to the net::URLRequestContext. std::string user_agent_; diff --git a/chrome/browser/sync/notifier/chrome_system_resources.h b/chrome/browser/sync/notifier/chrome_system_resources.h index a3f9875..26932c3 100644 --- a/chrome/browser/sync/notifier/chrome_system_resources.h +++ b/chrome/browser/sync/notifier/chrome_system_resources.h @@ -26,7 +26,7 @@ class ChromeSystemResources : public invalidation::SystemResources { public: explicit ChromeSystemResources(StateWriter* state_writer); - ~ChromeSystemResources(); + virtual ~ChromeSystemResources(); // invalidation::SystemResources implementation. diff --git a/chrome/browser/sync/util/extensions_activity_monitor.h b/chrome/browser/sync/util/extensions_activity_monitor.h index 3cce238..6d085e6 100644 --- a/chrome/browser/sync/util/extensions_activity_monitor.h +++ b/chrome/browser/sync/util/extensions_activity_monitor.h @@ -46,7 +46,7 @@ class ExtensionsActivityMonitor : public NotificationObserver { // Creates an ExtensionsActivityMonitor to monitor extensions activities on // BrowserThread::UI. ExtensionsActivityMonitor(); - ~ExtensionsActivityMonitor(); + virtual ~ExtensionsActivityMonitor(); // Fills |buffer| with snapshot of current records in constant time by // swapping. This is done mutually exclusively w.r.t methods of this class. diff --git a/chrome/browser/tab_contents/render_view_context_menu_gtk.h b/chrome/browser/tab_contents/render_view_context_menu_gtk.h index 031be00..11cc91c 100644 --- a/chrome/browser/tab_contents/render_view_context_menu_gtk.h +++ b/chrome/browser/tab_contents/render_view_context_menu_gtk.h @@ -20,7 +20,7 @@ class RenderViewContextMenuGtk : public RenderViewContextMenu, const ContextMenuParams& params, uint32_t triggering_event_time); - ~RenderViewContextMenuGtk(); + virtual ~RenderViewContextMenuGtk(); // Show the menu at the given location. void Popup(const gfx::Point& point); diff --git a/chrome/browser/tab_contents/thumbnail_generator.h b/chrome/browser/tab_contents/thumbnail_generator.h index fb47293..c44a952 100644 --- a/chrome/browser/tab_contents/thumbnail_generator.h +++ b/chrome/browser/tab_contents/thumbnail_generator.h @@ -54,7 +54,7 @@ class ThumbnailGenerator : NotificationObserver { // This class will do nothing until you call StartThumbnailing. ThumbnailGenerator(); - ~ThumbnailGenerator(); + virtual ~ThumbnailGenerator(); // Starts taking thumbnails of the given tab contents. void StartThumbnailing(TabContents* tab_contents); diff --git a/chrome/browser/tabs/tab_finder.h b/chrome/browser/tabs/tab_finder.h index f3a418e..283e60f 100644 --- a/chrome/browser/tabs/tab_finder.h +++ b/chrome/browser/tabs/tab_finder.h @@ -55,7 +55,7 @@ class TabFinder : public NotificationObserver { typedef std::set<TabContentsObserverImpl*> TabContentsObservers; TabFinder(); - ~TabFinder(); + virtual ~TabFinder(); void Init(); diff --git a/chrome/browser/translate/translate_tab_helper.h b/chrome/browser/translate/translate_tab_helper.h index 874f47d..58ceba0 100644 --- a/chrome/browser/translate/translate_tab_helper.h +++ b/chrome/browser/translate/translate_tab_helper.h @@ -13,7 +13,7 @@ class TranslateTabHelper : public TabContentsObserver { public: explicit TranslateTabHelper(TabContents* tab_contents); - ~TranslateTabHelper(); + virtual ~TranslateTabHelper(); LanguageState& language_state() { return language_state_; } diff --git a/chrome/browser/transport_security_persister.h b/chrome/browser/transport_security_persister.h index 13fc658..de0d74d 100644 --- a/chrome/browser/transport_security_persister.h +++ b/chrome/browser/transport_security_persister.h @@ -53,7 +53,7 @@ class TransportSecurityPersister private: friend class base::RefCountedThreadSafe<TransportSecurityPersister>; - ~TransportSecurityPersister(); + virtual ~TransportSecurityPersister(); void Load(); void CompleteLoad(const std::string& state); diff --git a/chrome/browser/ui/cocoa/constrained_window_mac.h b/chrome/browser/ui/cocoa/constrained_window_mac.h index 2de151a..60425c0 100644 --- a/chrome/browser/ui/cocoa/constrained_window_mac.h +++ b/chrome/browser/ui/cocoa/constrained_window_mac.h @@ -83,7 +83,7 @@ class ConstrainedWindowMacDelegateCustomSheet public: ConstrainedWindowMacDelegateCustomSheet(); ConstrainedWindowMacDelegateCustomSheet(id delegate, SEL didEndSelector); - ~ConstrainedWindowMacDelegateCustomSheet(); + virtual ~ConstrainedWindowMacDelegateCustomSheet(); protected: // For when you need to delay initalization after the constructor call. @@ -146,4 +146,3 @@ class ConstrainedWindowMac : public ConstrainedWindow { }; #endif // CHROME_BROWSER_UI_COCOA_CONSTRAINED_WINDOW_MAC_H_ - diff --git a/chrome/browser/ui/cocoa/download/download_item_mac.h b/chrome/browser/ui/cocoa/download/download_item_mac.h index 24d9c4a..1320f62 100644 --- a/chrome/browser/ui/cocoa/download/download_item_mac.h +++ b/chrome/browser/ui/cocoa/download/download_item_mac.h @@ -33,7 +33,7 @@ class DownloadItemMac : DownloadItem::Observer { DownloadItemController* controller); // Destructor. - ~DownloadItemMac(); + virtual ~DownloadItemMac(); // DownloadItem::Observer implementation virtual void OnDownloadUpdated(DownloadItem* download); diff --git a/chrome/browser/ui/cocoa/notifications/balloon_view_bridge.h b/chrome/browser/ui/cocoa/notifications/balloon_view_bridge.h index 3dff871..3545280 100644 --- a/chrome/browser/ui/cocoa/notifications/balloon_view_bridge.h +++ b/chrome/browser/ui/cocoa/notifications/balloon_view_bridge.h @@ -19,7 +19,7 @@ class Size; class BalloonViewBridge : public BalloonView { public: BalloonViewBridge(); - ~BalloonViewBridge(); + virtual ~BalloonViewBridge(); // BalloonView interface. virtual void Show(Balloon* balloon); diff --git a/chrome/browser/ui/cocoa/notifications/balloon_view_host_mac.h b/chrome/browser/ui/cocoa/notifications/balloon_view_host_mac.h index a7bff8f..4d87466 100644 --- a/chrome/browser/ui/cocoa/notifications/balloon_view_host_mac.h +++ b/chrome/browser/ui/cocoa/notifications/balloon_view_host_mac.h @@ -19,7 +19,7 @@ class BalloonViewHost : public BalloonHost { public: explicit BalloonViewHost(Balloon* balloon); - ~BalloonViewHost(); + virtual ~BalloonViewHost(); // Changes the size of the balloon. void UpdateActualSize(const gfx::Size& new_size); diff --git a/chrome/browser/ui/cocoa/theme_install_bubble_view.h b/chrome/browser/ui/cocoa/theme_install_bubble_view.h index f933d2d..f901e3b 100644 --- a/chrome/browser/ui/cocoa/theme_install_bubble_view.h +++ b/chrome/browser/ui/cocoa/theme_install_bubble_view.h @@ -27,7 +27,7 @@ // instance of the bubble. class ThemeInstallBubbleView : public NotificationObserver { public: - ~ThemeInstallBubbleView(); + virtual ~ThemeInstallBubbleView(); // NotificationObserver virtual void Observe(NotificationType type, diff --git a/chrome/browser/ui/gtk/bookmarks/bookmark_bubble_gtk.h b/chrome/browser/ui/gtk/bookmarks/bookmark_bubble_gtk.h index 99831be..a563828 100644 --- a/chrome/browser/ui/gtk/bookmarks/bookmark_bubble_gtk.h +++ b/chrome/browser/ui/gtk/bookmarks/bookmark_bubble_gtk.h @@ -55,7 +55,7 @@ class BookmarkBubbleGtk : public BubbleDelegateGtk, Profile* profile, const GURL& url, bool newly_bookmarked); - ~BookmarkBubbleGtk(); + virtual ~BookmarkBubbleGtk(); // Notified when |content_| is destroyed so we can delete our instance. CHROMEGTK_CALLBACK_0(BookmarkBubbleGtk, void, OnDestroy); diff --git a/chrome/browser/ui/gtk/custom_button.h b/chrome/browser/ui/gtk/custom_button.h index eb0dbe8..6bb3c1f 100644 --- a/chrome/browser/ui/gtk/custom_button.h +++ b/chrome/browser/ui/gtk/custom_button.h @@ -38,7 +38,7 @@ class CustomDrawButtonBase : public NotificationObserver { int hover_id, int disabled_id); - ~CustomDrawButtonBase(); + virtual ~CustomDrawButtonBase(); // Flip the image horizontally. Not to be used for RTL/LTR reasons. (In RTL // mode, this will unflip the image.) @@ -154,7 +154,7 @@ class CustomDrawButton : public NotificationObserver { int disabled_id, GtkWidget* native_widget); - ~CustomDrawButton(); + virtual ~CustomDrawButton(); void Init(); diff --git a/chrome/browser/ui/gtk/download/download_item_gtk.h b/chrome/browser/ui/gtk/download/download_item_gtk.h index a8f21b4..76f9dc4 100644 --- a/chrome/browser/ui/gtk/download/download_item_gtk.h +++ b/chrome/browser/ui/gtk/download/download_item_gtk.h @@ -45,7 +45,7 @@ class DownloadItemGtk : public DownloadItem::Observer, BaseDownloadItemModel* download_item_model); // Destroys all widgets belonging to this DownloadItemGtk. - ~DownloadItemGtk(); + virtual ~DownloadItemGtk(); // DownloadItem::Observer implementation. virtual void OnDownloadUpdated(DownloadItem* download); diff --git a/chrome/browser/ui/gtk/download/download_shelf_gtk.h b/chrome/browser/ui/gtk/download/download_shelf_gtk.h index 5d0f117..a8e39fd 100644 --- a/chrome/browser/ui/gtk/download/download_shelf_gtk.h +++ b/chrome/browser/ui/gtk/download/download_shelf_gtk.h @@ -38,7 +38,7 @@ class DownloadShelfGtk : public DownloadShelf, public: explicit DownloadShelfGtk(Browser* browser, gfx::NativeView view); - ~DownloadShelfGtk(); + virtual ~DownloadShelfGtk(); // DownloadShelf implementation. virtual void AddDownload(BaseDownloadItemModel* download_model); diff --git a/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.cc b/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.cc index 1c4ac19..8dfd2dd 100644 --- a/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.cc +++ b/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.cc @@ -14,6 +14,10 @@ BalloonViewHost::BalloonViewHost(Balloon* balloon) render_widget_host_view_(NULL) { } +BalloonViewHost::~BalloonViewHost() { + Shutdown(); +} + void BalloonViewHost::UpdateActualSize(const gfx::Size& new_size) { render_widget_host_view_->SetSize(new_size); gtk_widget_set_size_request( diff --git a/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.h b/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.h index 60b223c..656ebb3 100644 --- a/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.h +++ b/chrome/browser/ui/gtk/notifications/balloon_view_host_gtk.h @@ -19,9 +19,7 @@ class BalloonViewHost : public BalloonHost { public: explicit BalloonViewHost(Balloon* balloon); - ~BalloonViewHost() { - Shutdown(); - } + virtual ~BalloonViewHost(); // Changes the size of the balloon. void UpdateActualSize(const gfx::Size& new_size); diff --git a/chrome/browser/ui/gtk/reload_button_gtk.h b/chrome/browser/ui/gtk/reload_button_gtk.h index d5752fa..d623462 100644 --- a/chrome/browser/ui/gtk/reload_button_gtk.h +++ b/chrome/browser/ui/gtk/reload_button_gtk.h @@ -26,7 +26,7 @@ class ReloadButtonGtk : public NotificationObserver { enum Mode { MODE_RELOAD = 0, MODE_STOP }; ReloadButtonGtk(LocationBarViewGtk* location_bar, Browser* browser); - ~ReloadButtonGtk(); + virtual ~ReloadButtonGtk(); GtkWidget* widget() const { return widget_.get(); } diff --git a/chrome/browser/ui/gtk/status_icons/status_tray_gtk.h b/chrome/browser/ui/gtk/status_icons/status_tray_gtk.h index 28d0d7a..c3d799e 100644 --- a/chrome/browser/ui/gtk/status_icons/status_tray_gtk.h +++ b/chrome/browser/ui/gtk/status_icons/status_tray_gtk.h @@ -11,7 +11,7 @@ class StatusTrayGtk : public StatusTray { public: StatusTrayGtk(); - ~StatusTrayGtk(); + virtual ~StatusTrayGtk(); protected: // Overriden from StatusTray: diff --git a/chrome/browser/ui/gtk/tab_contents_container_gtk.h b/chrome/browser/ui/gtk/tab_contents_container_gtk.h index b882683..4adcd04 100644 --- a/chrome/browser/ui/gtk/tab_contents_container_gtk.h +++ b/chrome/browser/ui/gtk/tab_contents_container_gtk.h @@ -26,7 +26,7 @@ class TabContentsContainerGtk : public NotificationObserver, public ViewIDUtil::Delegate { public: explicit TabContentsContainerGtk(StatusBubbleGtk* status_bubble); - ~TabContentsContainerGtk(); + virtual ~TabContentsContainerGtk(); void Init(); diff --git a/chrome/browser/ui/gtk/tab_contents_drag_source.h b/chrome/browser/ui/gtk/tab_contents_drag_source.h index 1fa638c..6164300 100644 --- a/chrome/browser/ui/gtk/tab_contents_drag_source.h +++ b/chrome/browser/ui/gtk/tab_contents_drag_source.h @@ -29,7 +29,7 @@ struct WebDropData; class TabContentsDragSource : public MessageLoopForUI::Observer { public: explicit TabContentsDragSource(TabContentsView* tab_contents_view); - ~TabContentsDragSource(); + virtual ~TabContentsDragSource(); TabContents* tab_contents() const; diff --git a/chrome/browser/ui/tab_contents/tab_contents_wrapper.h b/chrome/browser/ui/tab_contents/tab_contents_wrapper.h index 4bbc120..371e142 100644 --- a/chrome/browser/ui/tab_contents/tab_contents_wrapper.h +++ b/chrome/browser/ui/tab_contents/tab_contents_wrapper.h @@ -67,7 +67,7 @@ class TabContentsWrapper : public TabContentsObserver, // Takes ownership of |contents|, which must be heap-allocated (as it lives // in a scoped_ptr) and can not be NULL. explicit TabContentsWrapper(TabContents* contents); - ~TabContentsWrapper(); + virtual ~TabContentsWrapper(); // Used to retrieve this object from |tab_contents_|, which is placed in // its property bag to avoid adding additional interfaces. diff --git a/chrome/browser/ui/webui/history2_ui.h b/chrome/browser/ui/webui/history2_ui.h index 7643346..e92e337 100644 --- a/chrome/browser/ui/webui/history2_ui.h +++ b/chrome/browser/ui/webui/history2_ui.h @@ -32,7 +32,7 @@ class HistoryUIHTMLSource2 : public ChromeURLDataManager::DataSource { virtual std::string GetMimeType(const std::string&) const; private: - ~HistoryUIHTMLSource2() {} + virtual ~HistoryUIHTMLSource2() {} DISALLOW_COPY_AND_ASSIGN(HistoryUIHTMLSource2); }; diff --git a/chrome/browser/ui/webui/keyboard_ui.h b/chrome/browser/ui/webui/keyboard_ui.h index d7c24c9..7a80a67 100644 --- a/chrome/browser/ui/webui/keyboard_ui.h +++ b/chrome/browser/ui/webui/keyboard_ui.h @@ -17,7 +17,7 @@ class Profile; class KeyboardUI : public WebUI { public: explicit KeyboardUI(TabContents* manager); - ~KeyboardUI(); + virtual ~KeyboardUI(); class KeyboardHTMLSource : public ChromeURLDataManager::DataSource { public: diff --git a/chrome/browser/ui/webui/ntp/new_tab_ui.h b/chrome/browser/ui/webui/ntp/new_tab_ui.h index 8fbcfd2..05888b0c 100644 --- a/chrome/browser/ui/webui/ntp/new_tab_ui.h +++ b/chrome/browser/ui/webui/ntp/new_tab_ui.h @@ -26,7 +26,7 @@ class NewTabUI : public WebUI, public NotificationObserver { public: explicit NewTabUI(TabContents* manager); - ~NewTabUI(); + virtual ~NewTabUI(); // Override WebUI methods so we can hook up the paint timer to the render // view host. diff --git a/chrome/browser/ui/webui/ntp/ntp_login_handler.h b/chrome/browser/ui/webui/ntp/ntp_login_handler.h index 6245deb..d39c6cd 100644 --- a/chrome/browser/ui/webui/ntp/ntp_login_handler.h +++ b/chrome/browser/ui/webui/ntp/ntp_login_handler.h @@ -17,7 +17,7 @@ class NTPLoginHandler : public WebUIMessageHandler, public NotificationObserver { public: NTPLoginHandler(); - ~NTPLoginHandler(); + virtual ~NTPLoginHandler(); virtual WebUIMessageHandler* Attach(WebUI* web_ui); diff --git a/chrome/browser/ui/webui/shared_resources_data_source.h b/chrome/browser/ui/webui/shared_resources_data_source.h index 8976192..e08ab24 100644 --- a/chrome/browser/ui/webui/shared_resources_data_source.h +++ b/chrome/browser/ui/webui/shared_resources_data_source.h @@ -27,7 +27,7 @@ class SharedResourcesDataSource : public ChromeURLDataManager::DataSource { virtual std::string GetMimeType(const std::string&) const; private: - ~SharedResourcesDataSource(); + virtual ~SharedResourcesDataSource(); DISALLOW_COPY_AND_ASSIGN(SharedResourcesDataSource); }; diff --git a/chrome/browser/webdata/web_database_table.cc b/chrome/browser/webdata/web_database_table.cc new file mode 100644 index 0000000..1dada9d --- /dev/null +++ b/chrome/browser/webdata/web_database_table.cc @@ -0,0 +1,10 @@ +// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/webdata/web_database_table.h" + +WebDatabaseTable::~WebDatabaseTable() { + db_ = NULL; + meta_table_ = NULL; +} diff --git a/chrome/browser/webdata/web_database_table.h b/chrome/browser/webdata/web_database_table.h index 5bb95b9..ea3c5ec 100644 --- a/chrome/browser/webdata/web_database_table.h +++ b/chrome/browser/webdata/web_database_table.h @@ -16,10 +16,7 @@ class WebDatabaseTable { protected: explicit WebDatabaseTable(sql::Connection* db, sql::MetaTable* meta_table) : db_(db), meta_table_(meta_table) {} - virtual ~WebDatabaseTable() { - db_ = NULL; - meta_table_ = NULL; - }; + virtual ~WebDatabaseTable(); // Attempts to initialize the table and returns true if successful. virtual bool Init() = 0; diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index 662ebb9..65126cf 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -3503,6 +3503,7 @@ 'browser/webdata/web_data_service_win.cc', 'browser/webdata/web_database.cc', 'browser/webdata/web_database.h', + 'browser/webdata/web_database_table.cc', 'browser/webdata/web_database_table.h', # These files are generated by GRIT. diff --git a/chrome/common/net/test_url_fetcher_factory.h b/chrome/common/net/test_url_fetcher_factory.h index 0e39c08..a9810a0 100644 --- a/chrome/common/net/test_url_fetcher_factory.h +++ b/chrome/common/net/test_url_fetcher_factory.h @@ -49,7 +49,7 @@ class TestURLFetcher : public URLFetcher { const GURL& url, RequestType request_type, Delegate* d); - ~TestURLFetcher(); + virtual ~TestURLFetcher(); // Overriden to do nothing. It is assumed the caller will notify the delegate. virtual void Start() {} diff --git a/chrome/nacl/nacl_launcher_thread.h b/chrome/nacl/nacl_launcher_thread.h index 26992ae..4d709d6 100644 --- a/chrome/nacl/nacl_launcher_thread.h +++ b/chrome/nacl/nacl_launcher_thread.h @@ -15,7 +15,7 @@ class NaClLauncherThread : public ChildThread { public: explicit NaClLauncherThread(bool debug); - ~NaClLauncherThread(); + virtual ~NaClLauncherThread(); // Returns the one NaCl thread. static NaClLauncherThread* current(); diff --git a/chrome/renderer/renderer_histogram_snapshots.h b/chrome/renderer/renderer_histogram_snapshots.h index c21fd4b..2602276 100644 --- a/chrome/renderer/renderer_histogram_snapshots.h +++ b/chrome/renderer/renderer_histogram_snapshots.h @@ -21,7 +21,7 @@ class RendererHistogramSnapshots : public HistogramSender, public RenderProcessObserver { public: RendererHistogramSnapshots(); - ~RendererHistogramSnapshots(); + virtual ~RendererHistogramSnapshots(); // Send the histogram data. void SendHistograms(int sequence_number); diff --git a/chrome/renderer/safe_browsing/malware_dom_details.h b/chrome/renderer/safe_browsing/malware_dom_details.h index a08614c..5cb483a 100644 --- a/chrome/renderer/safe_browsing/malware_dom_details.h +++ b/chrome/renderer/safe_browsing/malware_dom_details.h @@ -37,7 +37,7 @@ class MalwareDOMDetails : public RenderViewObserver { static uint32 kMaxNodes; static MalwareDOMDetails* Create(RenderView* render_view); - ~MalwareDOMDetails(); + virtual ~MalwareDOMDetails(); // Begins extracting resource urls for the page currently loaded in // this object's RenderView. diff --git a/chrome/renderer/searchbox.h b/chrome/renderer/searchbox.h index 47c27ef..b9d5f5c5 100644 --- a/chrome/renderer/searchbox.h +++ b/chrome/renderer/searchbox.h @@ -19,7 +19,7 @@ class SearchBox : public RenderViewObserver, public RenderViewObserverTracker<SearchBox> { public: explicit SearchBox(RenderView* render_view); - ~SearchBox(); + virtual ~SearchBox(); // Sends ViewHostMsg_SetSuggestions to the browser. void SetSuggestions(const std::vector<std::string>& suggestions, diff --git a/chrome/renderer/spellchecker/spellcheck.h b/chrome/renderer/spellchecker/spellcheck.h index 0af6ef8..28b9507 100644 --- a/chrome/renderer/spellchecker/spellcheck.h +++ b/chrome/renderer/spellchecker/spellcheck.h @@ -30,7 +30,7 @@ class MemoryMappedFile; class SpellCheck : public RenderProcessObserver { public: SpellCheck(); - ~SpellCheck(); + virtual ~SpellCheck(); void Init(base::PlatformFile file, const std::vector<std::string>& custom_words, diff --git a/chrome/service/cloud_print/printer_job_handler.h b/chrome/service/cloud_print/printer_job_handler.h index 6e804f9..12e19df 100644 --- a/chrome/service/cloud_print/printer_job_handler.h +++ b/chrome/service/cloud_print/printer_job_handler.h @@ -113,7 +113,7 @@ class PrinterJobHandler : public base::RefCountedThreadSafe<PrinterJobHandler>, const GURL& cloud_print_server_url, cloud_print::PrintSystem* print_system, Delegate* delegate); - ~PrinterJobHandler(); + virtual ~PrinterJobHandler(); bool Initialize(); // Requests a job check. |reason| is the reason for fetching the job. Used // for logging and diagnostc purposes. diff --git a/chrome/service/gaia/service_gaia_authenticator.h b/chrome/service/gaia/service_gaia_authenticator.h index 2010690..bb9424e 100644 --- a/chrome/service/gaia/service_gaia_authenticator.h +++ b/chrome/service/gaia/service_gaia_authenticator.h @@ -28,7 +28,7 @@ class ServiceGaiaAuthenticator const std::string& service_id, const std::string& gaia_url, base::MessageLoopProxy* io_message_loop_proxy); - ~ServiceGaiaAuthenticator(); + virtual ~ServiceGaiaAuthenticator(); // URLFetcher::Delegate implementation. virtual void OnURLFetchComplete(const URLFetcher *source, diff --git a/chrome/service/service_process.h b/chrome/service/service_process.h index 8d316b1..ce1fc5a 100644 --- a/chrome/service/service_process.h +++ b/chrome/service/service_process.h @@ -32,7 +32,7 @@ class CommandLine; class ServiceProcess : public CloudPrintProxy::Client { public: ServiceProcess(); - ~ServiceProcess(); + virtual ~ServiceProcess(); // Initialize the ServiceProcess with the message loop that it should run on. // ServiceProcess takes ownership of |state|. diff --git a/chrome/test/live_sync/live_autofill_sync_test.h b/chrome/test/live_sync/live_autofill_sync_test.h index 69559d3..2a36ef0 100644 --- a/chrome/test/live_sync/live_autofill_sync_test.h +++ b/chrome/test/live_sync/live_autofill_sync_test.h @@ -87,7 +87,7 @@ AutofillProfile CreateAutofillProfile(LiveAutofillSyncTest::ProfileType type); class TwoClientLiveAutofillSyncTest : public LiveAutofillSyncTest { public: TwoClientLiveAutofillSyncTest() : LiveAutofillSyncTest(TWO_CLIENT) {} - ~TwoClientLiveAutofillSyncTest() {} + virtual ~TwoClientLiveAutofillSyncTest() {} private: DISALLOW_COPY_AND_ASSIGN(TwoClientLiveAutofillSyncTest); diff --git a/chrome/test/live_sync/live_bookmarks_sync_test.h b/chrome/test/live_sync/live_bookmarks_sync_test.h index f53a511..e568af3 100644 --- a/chrome/test/live_sync/live_bookmarks_sync_test.h +++ b/chrome/test/live_sync/live_bookmarks_sync_test.h @@ -174,7 +174,7 @@ class SingleClientLiveBookmarksSyncTest : public LiveBookmarksSyncTest { public: SingleClientLiveBookmarksSyncTest() : LiveBookmarksSyncTest(SINGLE_CLIENT) {} - ~SingleClientLiveBookmarksSyncTest() {} + virtual ~SingleClientLiveBookmarksSyncTest() {} private: DISALLOW_COPY_AND_ASSIGN(SingleClientLiveBookmarksSyncTest); @@ -184,7 +184,7 @@ class TwoClientLiveBookmarksSyncTest : public LiveBookmarksSyncTest { public: TwoClientLiveBookmarksSyncTest() : LiveBookmarksSyncTest(TWO_CLIENT) {} - ~TwoClientLiveBookmarksSyncTest() {} + virtual ~TwoClientLiveBookmarksSyncTest() {} private: DISALLOW_COPY_AND_ASSIGN(TwoClientLiveBookmarksSyncTest); @@ -194,7 +194,7 @@ class MultipleClientLiveBookmarksSyncTest : public LiveBookmarksSyncTest { public: MultipleClientLiveBookmarksSyncTest() : LiveBookmarksSyncTest(MULTIPLE_CLIENT) {} - ~MultipleClientLiveBookmarksSyncTest() {} + virtual ~MultipleClientLiveBookmarksSyncTest() {} private: DISALLOW_COPY_AND_ASSIGN(MultipleClientLiveBookmarksSyncTest); @@ -204,7 +204,7 @@ class ManyClientLiveBookmarksSyncTest : public LiveBookmarksSyncTest { public: ManyClientLiveBookmarksSyncTest() : LiveBookmarksSyncTest(MANY_CLIENT) {} - ~ManyClientLiveBookmarksSyncTest() {} + virtual ~ManyClientLiveBookmarksSyncTest() {} private: DISALLOW_COPY_AND_ASSIGN(ManyClientLiveBookmarksSyncTest); diff --git a/chrome/test/render_view_test.h b/chrome/test/render_view_test.h index 4816f9b..3d00cf7 100644 --- a/chrome/test/render_view_test.h +++ b/chrome/test/render_view_test.h @@ -44,7 +44,7 @@ class RenderViewTest : public testing::Test { }; RenderViewTest(); - ~RenderViewTest(); + virtual ~RenderViewTest(); protected: // Spins the message loop to process all messages that are currently pending. diff --git a/chrome/test/test_notification_tracker.h b/chrome/test/test_notification_tracker.h index 7a9f947..21932c9 100644 --- a/chrome/test/test_notification_tracker.h +++ b/chrome/test/test_notification_tracker.h @@ -31,7 +31,7 @@ class TestNotificationTracker : public NotificationObserver { // ListenFor for the notifications you are interested in. TestNotificationTracker(); - ~TestNotificationTracker(); + virtual ~TestNotificationTracker(); // Makes this object listen for the given notification with the given source. void ListenFor(NotificationType type, const NotificationSource& source); diff --git a/content/browser/appcache/appcache_dispatcher_host.h b/content/browser/appcache/appcache_dispatcher_host.h index 776ef04..4799159 100644 --- a/content/browser/appcache/appcache_dispatcher_host.h +++ b/content/browser/appcache/appcache_dispatcher_host.h @@ -29,7 +29,7 @@ class AppCacheDispatcherHost : public BrowserMessageFilter { public: AppCacheDispatcherHost(const content::ResourceContext* resource_context, int process_id); - ~AppCacheDispatcherHost(); + virtual ~AppCacheDispatcherHost(); // BrowserIOMessageFilter implementation virtual void OnChannelConnected(int32 peer_pid); diff --git a/content/browser/cert_store.h b/content/browser/cert_store.h index 7115ec7..af5e46c 100644 --- a/content/browser/cert_store.h +++ b/content/browser/cert_store.h @@ -50,7 +50,7 @@ class CertStore : public NotificationObserver { friend struct DefaultSingletonTraits<CertStore>; CertStore(); - ~CertStore(); + virtual ~CertStore(); // Remove the specified cert from id_to_cert_ and cert_to_id_. // NOTE: the caller (RemoveCertsForRenderProcesHost) must hold cert_lock_. diff --git a/content/browser/file_system/file_system_dispatcher_host.h b/content/browser/file_system/file_system_dispatcher_host.h index 48867d5..ee7dac7 100644 --- a/content/browser/file_system/file_system_dispatcher_host.h +++ b/content/browser/file_system/file_system_dispatcher_host.h @@ -42,7 +42,7 @@ class FileSystemDispatcherHost : public BrowserMessageFilter { // Used by the worker, since it has the context handy already. FileSystemDispatcherHost(net::URLRequestContext* request_context, fileapi::FileSystemContext* file_system_context); - ~FileSystemDispatcherHost(); + virtual ~FileSystemDispatcherHost(); // BrowserMessageFilter implementation. virtual void OnChannelConnected(int32 peer_pid); diff --git a/content/browser/geolocation/core_location_provider_mac.h b/content/browser/geolocation/core_location_provider_mac.h index d26428d..2c528ca 100644 --- a/content/browser/geolocation/core_location_provider_mac.h +++ b/content/browser/geolocation/core_location_provider_mac.h @@ -18,7 +18,7 @@ class CoreLocationDataProviderMac; class CoreLocationProviderMac : public LocationProviderBase { public: explicit CoreLocationProviderMac(); - ~CoreLocationProviderMac(); + virtual ~CoreLocationProviderMac(); // LocationProvider virtual bool StartProvider(bool high_accuracy); diff --git a/content/browser/geolocation/geolocation_provider.h b/content/browser/geolocation/geolocation_provider.h index aaf398e..c955a3c 100644 --- a/content/browser/geolocation/geolocation_provider.h +++ b/content/browser/geolocation/geolocation_provider.h @@ -57,7 +57,7 @@ class GeolocationProvider : public base::Thread, public GeolocationObserver { private: friend struct DefaultSingletonTraits<GeolocationProvider>; - ~GeolocationProvider(); + virtual ~GeolocationProvider(); bool OnClientThread() const; bool OnGeolocationThread() const; diff --git a/content/browser/geolocation/location_arbitrator.h b/content/browser/geolocation/location_arbitrator.h index 264ca1a..84522eb 100644 --- a/content/browser/geolocation/location_arbitrator.h +++ b/content/browser/geolocation/location_arbitrator.h @@ -40,7 +40,7 @@ class GeolocationArbitrator : public LocationProviderBase::ListenerInterface { // Defines a function that returns the current time. typedef base::Time (*GetTimeNow)(); - ~GeolocationArbitrator(); + virtual ~GeolocationArbitrator(); static GeolocationArbitrator* Create(GeolocationObserver* observer); diff --git a/content/browser/geolocation/mock_location_provider.h b/content/browser/geolocation/mock_location_provider.h index 9dfb51d..4bfee4a 100644 --- a/content/browser/geolocation/mock_location_provider.h +++ b/content/browser/geolocation/mock_location_provider.h @@ -20,7 +20,7 @@ class MockLocationProvider : public LocationProviderBase { // Will update |*self_ref| to point to |this| on construction, and to NULL // on destruction. explicit MockLocationProvider(MockLocationProvider** self_ref); - ~MockLocationProvider(); + virtual ~MockLocationProvider(); // Updates listeners with the new position. void HandlePositionChanged(const Geoposition& position); diff --git a/content/browser/gpu/gpu_process_host_ui_shim.h b/content/browser/gpu/gpu_process_host_ui_shim.h index d0782d7..fc077fa 100644 --- a/content/browser/gpu/gpu_process_host_ui_shim.h +++ b/content/browser/gpu/gpu_process_host_ui_shim.h @@ -40,7 +40,7 @@ class Message; class RouteToGpuProcessHostUIShimTask : public Task { public: RouteToGpuProcessHostUIShimTask(int host_id, const IPC::Message& msg); - ~RouteToGpuProcessHostUIShimTask(); + virtual ~RouteToGpuProcessHostUIShimTask(); private: virtual void Run(); diff --git a/content/browser/host_zoom_map.h b/content/browser/host_zoom_map.h index 3ae44a1..5a923e3 100644 --- a/content/browser/host_zoom_map.h +++ b/content/browser/host_zoom_map.h @@ -77,7 +77,7 @@ class HostZoomMap : typedef std::map<std::string, double> HostZoomLevels; - ~HostZoomMap(); + virtual ~HostZoomMap(); // Copy of the pref data, so that we can read it on the IO thread. HostZoomLevels host_zoom_levels_; diff --git a/content/browser/in_process_webkit/dom_storage_message_filter.h b/content/browser/in_process_webkit/dom_storage_message_filter.h index e994d98..3976d7c 100644 --- a/content/browser/in_process_webkit/dom_storage_message_filter.h +++ b/content/browser/in_process_webkit/dom_storage_message_filter.h @@ -42,7 +42,7 @@ class DOMStorageMessageFilter : public BrowserMessageFilter { private: friend class BrowserThread; friend class DeleteTask<DOMStorageMessageFilter>; - ~DOMStorageMessageFilter(); + virtual ~DOMStorageMessageFilter(); // Message Handlers. void OnStorageAreaId(int64 namespace_id, const string16& origin, diff --git a/content/browser/in_process_webkit/indexed_db_dispatcher_host.h b/content/browser/in_process_webkit/indexed_db_dispatcher_host.h index fbe8bfc..49a93fb 100644 --- a/content/browser/in_process_webkit/indexed_db_dispatcher_host.h +++ b/content/browser/in_process_webkit/indexed_db_dispatcher_host.h @@ -59,7 +59,7 @@ class IndexedDBDispatcherHost : public BrowserMessageFilter { int32 Add(WebKit::WebIDBTransaction* idb_transaction); private: - ~IndexedDBDispatcherHost(); + virtual ~IndexedDBDispatcherHost(); // Message processing. Most of the work is delegated to the dispatcher hosts // below. diff --git a/content/browser/mime_registry_message_filter.h b/content/browser/mime_registry_message_filter.h index 8342458..cdb6a86 100644 --- a/content/browser/mime_registry_message_filter.h +++ b/content/browser/mime_registry_message_filter.h @@ -18,7 +18,7 @@ class MimeRegistryMessageFilter : public BrowserMessageFilter { bool* message_was_ok); private: - ~MimeRegistryMessageFilter(); + virtual ~MimeRegistryMessageFilter(); void OnGetMimeTypeFromExtension(const FilePath::StringType& ext, std::string* mime_type); diff --git a/content/browser/mock_resource_context.h b/content/browser/mock_resource_context.h index 89a619a..26e81d8 100644 --- a/content/browser/mock_resource_context.h +++ b/content/browser/mock_resource_context.h @@ -24,7 +24,7 @@ class MockResourceContext : public ResourceContext { friend struct base::DefaultLazyInstanceTraits<MockResourceContext>; MockResourceContext(); - ~MockResourceContext(); + virtual ~MockResourceContext(); virtual void EnsureInitialized() const OVERRIDE; const scoped_refptr<net::URLRequestContext> test_request_context_; diff --git a/content/browser/plugin_service.h b/content/browser/plugin_service.h index 2c8d115..cc039d6 100644 --- a/content/browser/plugin_service.h +++ b/content/browser/plugin_service.h @@ -124,7 +124,7 @@ class PluginService // Creates the PluginService object, but doesn't actually build the plugin // list yet. It's generated lazily. PluginService(); - ~PluginService(); + virtual ~PluginService(); // base::WaitableEventWatcher::Delegate implementation. virtual void OnWaitableEventSignaled(base::WaitableEvent* waitable_event); diff --git a/content/browser/renderer_host/blob_message_filter.h b/content/browser/renderer_host/blob_message_filter.h index bb8a191..ace01db 100644 --- a/content/browser/renderer_host/blob_message_filter.h +++ b/content/browser/renderer_host/blob_message_filter.h @@ -23,7 +23,7 @@ class BlobMessageFilter : public BrowserMessageFilter { public: BlobMessageFilter(int process_id, ChromeBlobStorageContext* blob_storage_context); - ~BlobMessageFilter(); + virtual ~BlobMessageFilter(); // BrowserMessageFilter implementation. virtual void OnChannelClosing(); diff --git a/content/browser/renderer_host/browser_render_process_host.h b/content/browser/renderer_host/browser_render_process_host.h index 9a5874f..f8b63de 100644 --- a/content/browser/renderer_host/browser_render_process_host.h +++ b/content/browser/renderer_host/browser_render_process_host.h @@ -44,7 +44,7 @@ class BrowserRenderProcessHost : public RenderProcessHost, public ChildProcessLauncher::Client { public: explicit BrowserRenderProcessHost(Profile* profile); - ~BrowserRenderProcessHost(); + virtual ~BrowserRenderProcessHost(); // RenderProcessHost implementation (public portion). virtual bool Init(bool is_accessibility_enabled); diff --git a/content/browser/renderer_host/clipboard_message_filter.h b/content/browser/renderer_host/clipboard_message_filter.h index 3128852..48c0c65 100644 --- a/content/browser/renderer_host/clipboard_message_filter.h +++ b/content/browser/renderer_host/clipboard_message_filter.h @@ -23,7 +23,7 @@ class ClipboardMessageFilter : public BrowserMessageFilter { virtual bool OnMessageReceived(const IPC::Message& message, bool* message_was_ok); private: - ~ClipboardMessageFilter(); + virtual ~ClipboardMessageFilter(); void OnWriteObjectsAsync(const ui::Clipboard::ObjectMap& objects); void OnWriteObjectsSync(const ui::Clipboard::ObjectMap& objects, diff --git a/content/browser/renderer_host/file_utilities_message_filter.h b/content/browser/renderer_host/file_utilities_message_filter.h index add9e95..1003a6fe 100644 --- a/content/browser/renderer_host/file_utilities_message_filter.h +++ b/content/browser/renderer_host/file_utilities_message_filter.h @@ -28,7 +28,7 @@ class FileUtilitiesMessageFilter : public BrowserMessageFilter { virtual bool OnMessageReceived(const IPC::Message& message, bool* message_was_ok); private: - ~FileUtilitiesMessageFilter(); + virtual ~FileUtilitiesMessageFilter(); typedef void (*FileInfoWriteFunc)(IPC::Message* reply_msg, const base::PlatformFileInfo& file_info); diff --git a/content/browser/renderer_host/quota_dispatcher_host.h b/content/browser/renderer_host/quota_dispatcher_host.h index 5a9fd4a..d1fa405 100644 --- a/content/browser/renderer_host/quota_dispatcher_host.h +++ b/content/browser/renderer_host/quota_dispatcher_host.h @@ -23,7 +23,7 @@ class QuotaManager; class QuotaDispatcherHost : public BrowserMessageFilter { public: QuotaDispatcherHost(quota::QuotaManager* quota_manager); - ~QuotaDispatcherHost(); + virtual ~QuotaDispatcherHost(); virtual bool OnMessageReceived(const IPC::Message& message, bool* message_was_ok); diff --git a/content/browser/renderer_host/resource_dispatcher_host.h b/content/browser/renderer_host/resource_dispatcher_host.h index f8643fe..3e007ef 100644 --- a/content/browser/renderer_host/resource_dispatcher_host.h +++ b/content/browser/renderer_host/resource_dispatcher_host.h @@ -61,7 +61,7 @@ class ResourceDispatcherHost : public net::URLRequest::Delegate { public: explicit ResourceDispatcherHost( const ResourceQueue::DelegateSet& resource_queue_delegates); - ~ResourceDispatcherHost(); + virtual ~ResourceDispatcherHost(); void Initialize(); diff --git a/content/browser/renderer_host/sync_resource_handler.h b/content/browser/renderer_host/sync_resource_handler.h index c07064c..24267da 100644 --- a/content/browser/renderer_host/sync_resource_handler.h +++ b/content/browser/renderer_host/sync_resource_handler.h @@ -47,7 +47,7 @@ class SyncResourceHandler : public ResourceHandler { private: enum { kReadBufSize = 3840 }; - ~SyncResourceHandler(); + virtual ~SyncResourceHandler(); scoped_refptr<net::IOBuffer> read_buffer_; diff --git a/content/browser/resolve_proxy_msg_helper.h b/content/browser/resolve_proxy_msg_helper.h index 5032687..85b3b69 100644 --- a/content/browser/resolve_proxy_msg_helper.h +++ b/content/browser/resolve_proxy_msg_helper.h @@ -33,7 +33,7 @@ class ResolveProxyMsgHelper : public BrowserMessageFilter { // Destruction cancels the current outstanding request, and clears the // pending queue. - ~ResolveProxyMsgHelper(); + virtual ~ResolveProxyMsgHelper(); // BrowserMessageFilter implementation virtual bool OnMessageReceived(const IPC::Message& message, diff --git a/content/browser/speech/speech_recognizer.h b/content/browser/speech/speech_recognizer.h index f60a9de..f49b3ea 100644 --- a/content/browser/speech/speech_recognizer.h +++ b/content/browser/speech/speech_recognizer.h @@ -84,7 +84,7 @@ class SpeechRecognizer const std::string& grammar, const std::string& hardware_info, const std::string& origin_url); - ~SpeechRecognizer(); + virtual ~SpeechRecognizer(); // Starts audio recording and does recognition after recording ends. The same // SpeechRecognizer instance can be used multiple times for speech recognition diff --git a/content/browser/worker_host/worker_message_filter.h b/content/browser/worker_host/worker_message_filter.h index 52915e1..d5556f8 100644 --- a/content/browser/worker_host/worker_message_filter.h +++ b/content/browser/worker_host/worker_message_filter.h @@ -41,7 +41,7 @@ class WorkerMessageFilter : public BrowserMessageFilter { } private: - ~WorkerMessageFilter(); + virtual ~WorkerMessageFilter(); // Message handlers. void OnCreateWorker(const ViewHostMsg_CreateWorker_Params& params, diff --git a/content/browser/worker_host/worker_process_host.h b/content/browser/worker_host/worker_process_host.h index 29637b0..068624b 100644 --- a/content/browser/worker_host/worker_process_host.h +++ b/content/browser/worker_host/worker_process_host.h @@ -117,7 +117,7 @@ class WorkerProcessHost : public BrowserChildProcessHost { WorkerProcessHost( const content::ResourceContext* resource_context, ResourceDispatcherHost* resource_dispatcher_host); - ~WorkerProcessHost(); + virtual ~WorkerProcessHost(); // Starts the process. Returns true iff it succeeded. // |render_process_id| is the renderer process responsible for starting this diff --git a/content/common/file_system/file_system_dispatcher.h b/content/common/file_system/file_system_dispatcher.h index b480ce8..fe01733 100644 --- a/content/common/file_system/file_system_dispatcher.h +++ b/content/common/file_system/file_system_dispatcher.h @@ -30,7 +30,7 @@ class GURL; class FileSystemDispatcher : public IPC::Channel::Listener { public: FileSystemDispatcher(); - ~FileSystemDispatcher(); + virtual ~FileSystemDispatcher(); // IPC::Channel::Listener implementation. virtual bool OnMessageReceived(const IPC::Message& msg); diff --git a/content/common/font_config_ipc_linux.h b/content/common/font_config_ipc_linux.h index 4873c14..ed23c28 100644 --- a/content/common/font_config_ipc_linux.h +++ b/content/common/font_config_ipc_linux.h @@ -15,7 +15,7 @@ class FontConfigIPC : public FontConfigInterface { public: explicit FontConfigIPC(int fd); - ~FontConfigIPC(); + virtual ~FontConfigIPC(); // FontConfigInterface implementation. virtual bool Match(std::string* result_family, diff --git a/content/common/gpu/gpu_channel_manager.h b/content/common/gpu/gpu_channel_manager.h index f031f76e..a163597 100644 --- a/content/common/gpu/gpu_channel_manager.h +++ b/content/common/gpu/gpu_channel_manager.h @@ -47,7 +47,7 @@ class GpuChannelManager : public IPC::Channel::Listener, GpuWatchdog* watchdog, base::MessageLoopProxy* io_message_loop, base::WaitableEvent* shutdown_event); - ~GpuChannelManager(); + virtual ~GpuChannelManager(); // Remove the channel for a particular renderer. void RemoveChannel(int renderer_id); diff --git a/content/common/quota_dispatcher.h b/content/common/quota_dispatcher.h index d283b28..ddc2b79 100644 --- a/content/common/quota_dispatcher.h +++ b/content/common/quota_dispatcher.h @@ -30,7 +30,7 @@ class WebStorageQuotaCallbacks; class QuotaDispatcher : public IPC::Channel::Listener { public: QuotaDispatcher(); - ~QuotaDispatcher(); + virtual ~QuotaDispatcher(); // IPC::Channel::Listener implementation. virtual bool OnMessageReceived(const IPC::Message& msg); diff --git a/content/common/resource_dispatcher.h b/content/common/resource_dispatcher.h index 8317774..0c1a5cc 100644 --- a/content/common/resource_dispatcher.h +++ b/content/common/resource_dispatcher.h @@ -44,7 +44,7 @@ class ResourceDispatcher : public IPC::Channel::Listener { }; explicit ResourceDispatcher(IPC::Message::Sender* sender); - ~ResourceDispatcher(); + virtual ~ResourceDispatcher(); // IPC::Channel::Listener implementation. virtual bool OnMessageReceived(const IPC::Message& message); diff --git a/content/gpu/gpu_child_thread.h b/content/gpu/gpu_child_thread.h index 94a9bdf..6fc8fbd 100644 --- a/content/gpu/gpu_child_thread.h +++ b/content/gpu/gpu_child_thread.h @@ -47,7 +47,7 @@ class GpuChildThread : public ChildThread { // For single-process mode. explicit GpuChildThread(const std::string& channel_id); - ~GpuChildThread(); + virtual ~GpuChildThread(); void Init(const base::Time& process_start_time); void StopWatchdog(); diff --git a/content/gpu/gpu_process.h b/content/gpu/gpu_process.h index 8dfe0e3..bd05a72 100644 --- a/content/gpu/gpu_process.h +++ b/content/gpu/gpu_process.h @@ -11,7 +11,7 @@ class GpuProcess : public ChildProcess { public: GpuProcess(); - ~GpuProcess(); + virtual ~GpuProcess(); private: DISALLOW_COPY_AND_ASSIGN(GpuProcess); diff --git a/content/plugin/npobject_proxy.h b/content/plugin/npobject_proxy.h index 68bca78..dccd531 100644 --- a/content/plugin/npobject_proxy.h +++ b/content/plugin/npobject_proxy.h @@ -31,7 +31,7 @@ class NPObjectProxy : public IPC::Channel::Listener, public IPC::Message::Sender, public NPObjectBase { public: - ~NPObjectProxy(); + virtual ~NPObjectProxy(); static NPObject* Create(PluginChannelBase* channel, int route_id, diff --git a/content/plugin/npobject_stub.h b/content/plugin/npobject_stub.h index 46e1bc1..c100fe4 100644 --- a/content/plugin/npobject_stub.h +++ b/content/plugin/npobject_stub.h @@ -36,7 +36,7 @@ class NPObjectStub : public IPC::Channel::Listener, int route_id, gfx::NativeViewId containing_window, const GURL& page_url); - ~NPObjectStub(); + virtual ~NPObjectStub(); // IPC::Message::Sender implementation: virtual bool Send(IPC::Message* msg); diff --git a/content/plugin/plugin_thread.h b/content/plugin/plugin_thread.h index efd96b6..d325dd0 100644 --- a/content/plugin/plugin_thread.h +++ b/content/plugin/plugin_thread.h @@ -23,7 +23,7 @@ class PluginThread : public ChildThread { public: PluginThread(); - ~PluginThread(); + virtual ~PluginThread(); // Returns the one plugin thread. static PluginThread* current(); diff --git a/content/plugin/webplugin_delegate_stub.h b/content/plugin/webplugin_delegate_stub.h index b602a04..629da0a 100644 --- a/content/plugin/webplugin_delegate_stub.h +++ b/content/plugin/webplugin_delegate_stub.h @@ -55,7 +55,7 @@ class WebPluginDelegateStub : public IPC::Channel::Listener, private: friend class base::RefCounted<WebPluginDelegateStub>; - ~WebPluginDelegateStub(); + virtual ~WebPluginDelegateStub(); // Message handlers for the WebPluginDelegate calls that are proxied from the // renderer over the IPC channel. diff --git a/content/plugin/webplugin_proxy.h b/content/plugin/webplugin_proxy.h index 47f3ab2..3cde1cb 100644 --- a/content/plugin/webplugin_proxy.h +++ b/content/plugin/webplugin_proxy.h @@ -48,7 +48,7 @@ class WebPluginProxy : public webkit::npapi::WebPlugin { const GURL& page_url, gfx::NativeViewId containing_window, int host_render_view_routing_id); - ~WebPluginProxy(); + virtual ~WebPluginProxy(); void set_delegate(webkit::npapi::WebPluginDelegateImpl* d) { delegate_ = d; } diff --git a/content/ppapi_plugin/ppapi_thread.h b/content/ppapi_plugin/ppapi_thread.h index eedbd0a..a9d0b7c 100644 --- a/content/ppapi_plugin/ppapi_thread.h +++ b/content/ppapi_plugin/ppapi_thread.h @@ -27,7 +27,7 @@ class PpapiThread : public ChildThread, public pp::proxy::PluginDispatcher::PluginDelegate { public: explicit PpapiThread(bool is_broker); - ~PpapiThread(); + virtual ~PpapiThread(); private: // ChildThread overrides. diff --git a/content/renderer/audio_message_filter.h b/content/renderer/audio_message_filter.h index 316ac1b..2403e8f 100644 --- a/content/renderer/audio_message_filter.h +++ b/content/renderer/audio_message_filter.h @@ -53,7 +53,7 @@ class AudioMessageFilter : public IPC::ChannelProxy::MessageFilter { }; explicit AudioMessageFilter(int32 route_id); - ~AudioMessageFilter(); + virtual ~AudioMessageFilter(); // Add a delegate to the map and return id of the entry. int32 AddDelegate(Delegate* delegate); diff --git a/content/renderer/gpu_channel_host.h b/content/renderer/gpu_channel_host.h index ba7ec84..7e67da8 100644 --- a/content/renderer/gpu_channel_host.h +++ b/content/renderer/gpu_channel_host.h @@ -43,7 +43,7 @@ class GpuChannelHost : public IPC::Channel::Listener, // Called on the render thread GpuChannelHost(); - ~GpuChannelHost(); + virtual ~GpuChannelHost(); // Connect to GPU process channel. void Connect(const IPC::ChannelHandle& channel_handle, diff --git a/content/renderer/indexed_db_dispatcher.h b/content/renderer/indexed_db_dispatcher.h index b019510..8bd608e 100644 --- a/content/renderer/indexed_db_dispatcher.h +++ b/content/renderer/indexed_db_dispatcher.h @@ -28,7 +28,7 @@ class WebIDBTransaction; class IndexedDBDispatcher : public IPC::Channel::Listener { public: IndexedDBDispatcher(); - ~IndexedDBDispatcher(); + virtual ~IndexedDBDispatcher(); // IPC::Channel::Listener implementation. virtual bool OnMessageReceived(const IPC::Message& msg); diff --git a/content/renderer/plugin_channel_host.h b/content/renderer/plugin_channel_host.h index ec6bfed..524df47 100644 --- a/content/renderer/plugin_channel_host.h +++ b/content/renderer/plugin_channel_host.h @@ -46,7 +46,7 @@ class PluginChannelHost : public PluginChannelBase { private: // Called on the render thread PluginChannelHost(); - ~PluginChannelHost(); + virtual ~PluginChannelHost(); static PluginChannelBase* ClassFactory() { return new PluginChannelHost(); } diff --git a/content/renderer/render_process_impl.h b/content/renderer/render_process_impl.h index b530e6a..c5cbabe 100644 --- a/content/renderer/render_process_impl.h +++ b/content/renderer/render_process_impl.h @@ -20,7 +20,7 @@ class PlatformCanvas; class RenderProcessImpl : public RenderProcess { public: RenderProcessImpl(); - ~RenderProcessImpl(); + virtual ~RenderProcessImpl(); // RenderProcess implementation. virtual skia::PlatformCanvas* GetDrawingCanvas(TransportDIB** memory, diff --git a/content/renderer/renderer_webidbobjectstore_impl.h b/content/renderer/renderer_webidbobjectstore_impl.h index 802ba32..6467960 100644 --- a/content/renderer/renderer_webidbobjectstore_impl.h +++ b/content/renderer/renderer_webidbobjectstore_impl.h @@ -22,7 +22,7 @@ class WebString; class RendererWebIDBObjectStoreImpl : public WebKit::WebIDBObjectStore { public: explicit RendererWebIDBObjectStoreImpl(int32 idb_object_store_id); - ~RendererWebIDBObjectStoreImpl(); + virtual ~RendererWebIDBObjectStoreImpl(); // WebKit::WebIDBObjectStore virtual WebKit::WebString name() const; diff --git a/content/renderer/webplugin_delegate_proxy.h b/content/renderer/webplugin_delegate_proxy.h index 304e72b..7912436 100644 --- a/content/renderer/webplugin_delegate_proxy.h +++ b/content/renderer/webplugin_delegate_proxy.h @@ -123,7 +123,7 @@ class WebPluginDelegateProxy protected: template<class WebPluginDelegateProxy> friend class DeleteTask; - ~WebPluginDelegateProxy(); + virtual ~WebPluginDelegateProxy(); private: // Message handlers for messages that proxy WebPlugin methods, which diff --git a/content/renderer/webworker_proxy.h b/content/renderer/webworker_proxy.h index 9151193..80014ac 100644 --- a/content/renderer/webworker_proxy.h +++ b/content/renderer/webworker_proxy.h @@ -29,7 +29,7 @@ class WebWorkerProxy : public WebKit::WebWorker, private WebWorkerBase { ChildThread* child_thread, int render_view_route_id, int parent_appcache_host_id); - ~WebWorkerProxy(); + virtual ~WebWorkerProxy(); // WebWorker implementation. virtual void startWorkerContext(const WebKit::WebURL& script_url, diff --git a/content/worker/worker_thread.h b/content/worker/worker_thread.h index 25995a6..4e0e487 100644 --- a/content/worker/worker_thread.h +++ b/content/worker/worker_thread.h @@ -21,7 +21,7 @@ struct WorkerProcessMsg_CreateWorker_Params; class WorkerThread : public ChildThread { public: WorkerThread(); - ~WorkerThread(); + virtual ~WorkerThread(); // Returns the one worker thread. static WorkerThread* current(); diff --git a/ipc/ipc_channel.h b/ipc/ipc_channel.h index 1550d49..6bfcded 100644 --- a/ipc/ipc_channel.h +++ b/ipc/ipc_channel.h @@ -119,7 +119,7 @@ class Channel : public Message::Sender { Channel(const IPC::ChannelHandle &channel_handle, Mode mode, Listener* listener); - ~Channel(); + virtual ~Channel(); // Connect the pipe. On the server side, this will initiate // waiting for connections. On the client, it attempts to diff --git a/ipc/ipc_channel_posix.h b/ipc/ipc_channel_posix.h index ac914ba..652a29a 100644 --- a/ipc/ipc_channel_posix.h +++ b/ipc/ipc_channel_posix.h @@ -52,7 +52,7 @@ class Channel::ChannelImpl : public MessageLoopForIO::Watcher { // Mirror methods of Channel, see ipc_channel.h for description. ChannelImpl(const IPC::ChannelHandle& channel_handle, Mode mode, Listener* listener); - ~ChannelImpl(); + virtual ~ChannelImpl(); bool Connect(); void Close(); void set_listener(Listener* listener) { listener_ = listener; } diff --git a/ipc/ipc_message_macros.h b/ipc/ipc_message_macros.h index 87e9c20..34b5103 100644 --- a/ipc/ipc_message_macros.h +++ b/ipc/ipc_message_macros.h @@ -442,7 +442,7 @@ public: \ enum { ID = IPC_MESSAGE_ID() }; \ msg_class(IPC_TYPE_IN_##in_cnt in_list); \ - ~msg_class(); \ + virtual ~msg_class(); \ static void Log(std::string* name, const Message* msg, std::string* l); \ }; @@ -453,7 +453,7 @@ enum { ID = IPC_MESSAGE_ID() }; \ msg_class(int32 routing_id IPC_COMMA_##in_cnt \ IPC_TYPE_IN_##in_cnt in_list); \ - ~msg_class(); \ + virtual ~msg_class(); \ static void Log(std::string* name, const Message* msg, std::string* l); \ }; @@ -466,7 +466,7 @@ msg_class(IPC_TYPE_IN_##in_cnt in_list \ IPC_COMMA_AND_##in_cnt(IPC_COMMA_##out_cnt) \ IPC_TYPE_OUT_##out_cnt out_list); \ - ~msg_class(); \ + virtual ~msg_class(); \ static void Log(std::string* name, const Message* msg, std::string* l); \ }; @@ -481,7 +481,7 @@ IPC_TYPE_IN_##in_cnt in_list \ IPC_COMMA_AND_##in_cnt(IPC_COMMA_##out_cnt) \ IPC_TYPE_OUT_##out_cnt out_list); \ - ~msg_class(); \ + virtual ~msg_class(); \ static void Log(std::string* name, const Message* msg, std::string* l); \ }; @@ -777,4 +777,3 @@ LogFunctionMap g_log_function_mapping; // XXX_messages.h files need not do so themselves. This makes the // XXX_messages.h files easier to write. #undef IPC_MESSAGE_START - diff --git a/ipc/ipc_sync_channel.h b/ipc/ipc_sync_channel.h index 8cea5a8..e2d4c82 100644 --- a/ipc/ipc_sync_channel.h +++ b/ipc/ipc_sync_channel.h @@ -141,7 +141,7 @@ class SyncChannel : public ChannelProxy, bool restrict_dispatch() const { return restrict_dispatch_; } private: - ~SyncContext(); + virtual ~SyncContext(); // ChannelProxy methods that we override. // Called on the listener thread. diff --git a/ipc/ipc_test_sink.h b/ipc/ipc_test_sink.h index c8c2114..ad1125a 100644 --- a/ipc/ipc_test_sink.h +++ b/ipc/ipc_test_sink.h @@ -74,7 +74,7 @@ class Message; class TestSink : public Channel { public: TestSink(); - ~TestSink(); + virtual ~TestSink(); // Interface in IPC::Channel. This copies the message to the sink and then // deletes it. diff --git a/jingle/notifier/base/xmpp_connection.h b/jingle/notifier/base/xmpp_connection.h index 8252023..e3699cb 100644 --- a/jingle/notifier/base/xmpp_connection.h +++ b/jingle/notifier/base/xmpp_connection.h @@ -74,7 +74,7 @@ class XmppConnection : public sigslot::has_slots<> { // Invalidates any weak pointers passed to the delegate by // OnConnect(), but does not trigger a call to the delegate's // OnError() function. - ~XmppConnection(); + virtual ~XmppConnection(); private: void OnStateChange(buzz::XmppEngine::State state); diff --git a/media/base/filters.h b/media/base/filters.h index cceed67..c684839 100644 --- a/media/base/filters.h +++ b/media/base/filters.h @@ -267,7 +267,7 @@ class AudioDecoder : public Filter { protected: AudioDecoder(); - ~AudioDecoder(); + virtual ~AudioDecoder(); // Executes the permanent callback to pass off decoded audio. void ConsumeAudioSamples(scoped_refptr<Buffer> buffer); diff --git a/net/base/cert_verifier.h b/net/base/cert_verifier.h index 2546d7c..145fb59 100644 --- a/net/base/cert_verifier.h +++ b/net/base/cert_verifier.h @@ -71,7 +71,7 @@ class NET_API CertVerifier : NON_EXPORTED_BASE(public base::NonThreadSafe), // When the verifier is destroyed, all certificate verifications requests are // canceled, and their completion callbacks will not be called. - ~CertVerifier(); + virtual ~CertVerifier(); // Verifies the given certificate against the given hostname. Returns OK if // successful or an error code upon failure. diff --git a/net/base/cookie_monster.h b/net/base/cookie_monster.h index 58b13d4..c3943ac 100644 --- a/net/base/cookie_monster.h +++ b/net/base/cookie_monster.h @@ -341,7 +341,7 @@ class NET_API CookieMonster : public CookieStore { // Record statistics every kRecordStatisticsIntervalSeconds of uptime. static const int kRecordStatisticsIntervalSeconds = 10 * 60; - ~CookieMonster(); + virtual ~CookieMonster(); bool SetCookieWithCreationTime(const GURL& url, const std::string& cookie_line, diff --git a/net/base/dnsrr_resolver.h b/net/base/dnsrr_resolver.h index 4c47f8c..aca6a2e 100644 --- a/net/base/dnsrr_resolver.h +++ b/net/base/dnsrr_resolver.h @@ -83,7 +83,7 @@ class NET_API DnsRRResolver : NON_EXPORTED_BASE(public base::NonThreadSafe), }; DnsRRResolver(); - ~DnsRRResolver(); + virtual ~DnsRRResolver(); uint64 requests() const { return requests_; } uint64 cache_hits() const { return cache_hits_; } diff --git a/net/base/mock_host_resolver.h b/net/base/mock_host_resolver.h index 44667f4..b9e2f28 100644 --- a/net/base/mock_host_resolver.h +++ b/net/base/mock_host_resolver.h @@ -95,7 +95,7 @@ class MockHostResolver : public MockHostResolverBase { class MockCachingHostResolver : public MockHostResolverBase { public: MockCachingHostResolver() : MockHostResolverBase(true /*use_caching*/) {} - ~MockCachingHostResolver() {} + virtual ~MockCachingHostResolver() {} }; // RuleBasedHostResolverProc applies a set of rules to map a host string to @@ -147,7 +147,7 @@ class NET_TEST RuleBasedHostResolverProc : public HostResolverProc { struct Rule; typedef std::list<Rule> RuleList; - ~RuleBasedHostResolverProc(); + virtual ~RuleBasedHostResolverProc(); RuleList rules_; }; diff --git a/net/base/ssl_client_auth_cache.h b/net/base/ssl_client_auth_cache.h index fe4d310..4321e22 100644 --- a/net/base/ssl_client_auth_cache.h +++ b/net/base/ssl_client_auth_cache.h @@ -27,7 +27,7 @@ class X509Certificate; class NET_TEST SSLClientAuthCache : public CertDatabase::Observer { public: SSLClientAuthCache(); - ~SSLClientAuthCache(); + virtual ~SSLClientAuthCache(); // Checks for a client certificate preference for SSL server at |server|. // Returns true if a preference is found, and sets |*certificate| to the diff --git a/net/disk_cache/backend_impl.h b/net/disk_cache/backend_impl.h index e66fb4b..cbf6b86 100644 --- a/net/disk_cache/backend_impl.h +++ b/net/disk_cache/backend_impl.h @@ -47,7 +47,7 @@ class NET_TEST BackendImpl : public Backend { // mask can be used to limit the usable size of the hash table, for testing. BackendImpl(const FilePath& path, uint32 mask, base::MessageLoopProxy* cache_thread, net::NetLog* net_log); - ~BackendImpl(); + virtual ~BackendImpl(); // Returns a new backend with the desired flags. See the declaration of // CreateCacheBackend(). diff --git a/net/disk_cache/entry_impl.h b/net/disk_cache/entry_impl.h index 59901a8..830d426 100644 --- a/net/disk_cache/entry_impl.h +++ b/net/disk_cache/entry_impl.h @@ -152,7 +152,7 @@ class NET_TEST EntryImpl : public Entry, public base::RefCounted<EntryImpl> { }; class UserBuffer; - ~EntryImpl(); + virtual ~EntryImpl(); // Do all the work for ReadDataImpl and WriteDataImpl. Implemented as // separate functions to make logging of results simpler. diff --git a/net/disk_cache/file_lock.cc b/net/disk_cache/file_lock.cc index 949c645..6e9d949 100644 --- a/net/disk_cache/file_lock.cc +++ b/net/disk_cache/file_lock.cc @@ -12,6 +12,10 @@ FileLock::FileLock(BlockFileHeader* header) { acquired_ = true; } +FileLock::~FileLock() { + Unlock(); +} + void FileLock::Lock() { if (acquired_) return; diff --git a/net/disk_cache/file_lock.h b/net/disk_cache/file_lock.h index 48f872a..9823292 100644 --- a/net/disk_cache/file_lock.h +++ b/net/disk_cache/file_lock.h @@ -31,9 +31,8 @@ namespace disk_cache { class NET_TEST FileLock { public: explicit FileLock(BlockFileHeader* header); - virtual ~FileLock() { - Unlock(); - } + virtual ~FileLock(); + // Virtual to make sure the compiler never inlines the calls. virtual void Lock(); virtual void Unlock(); diff --git a/net/disk_cache/in_flight_backend_io.h b/net/disk_cache/in_flight_backend_io.h index 89fe3c1..659a33a 100644 --- a/net/disk_cache/in_flight_backend_io.h +++ b/net/disk_cache/in_flight_backend_io.h @@ -103,7 +103,7 @@ class BackendIO : public BackgroundIO { OP_IS_READY }; - ~BackendIO(); + virtual ~BackendIO(); void ExecuteBackendOperation(); void ExecuteEntryOperation(); @@ -139,7 +139,7 @@ class InFlightBackendIO : public InFlightIO { public: InFlightBackendIO(BackendImpl* backend, base::MessageLoopProxy* background_thread); - ~InFlightBackendIO(); + virtual ~InFlightBackendIO(); // The operations we proxy: void Init(net::CompletionCallback* callback); diff --git a/net/disk_cache/mem_backend_impl.h b/net/disk_cache/mem_backend_impl.h index dae4289..52a78f6 100644 --- a/net/disk_cache/mem_backend_impl.h +++ b/net/disk_cache/mem_backend_impl.h @@ -26,7 +26,7 @@ class MemEntryImpl; class NET_TEST MemBackendImpl : public Backend { public: explicit MemBackendImpl(net::NetLog* net_log); - ~MemBackendImpl(); + virtual ~MemBackendImpl(); // Returns an instance of a Backend implemented only in memory. The returned // object should be deleted when not needed anymore. max_bytes is the maximum diff --git a/net/disk_cache/mem_entry_impl.h b/net/disk_cache/mem_entry_impl.h index c3872dd..db46c4d 100644 --- a/net/disk_cache/mem_entry_impl.h +++ b/net/disk_cache/mem_entry_impl.h @@ -120,7 +120,7 @@ class MemEntryImpl : public Entry { NUM_STREAMS = 3 }; - ~MemEntryImpl(); + virtual ~MemEntryImpl(); // Do all the work for corresponding public functions. Implemented as // separate functions to make logging of results simpler. diff --git a/net/disk_cache/stats_histogram.h b/net/disk_cache/stats_histogram.h index 83d359c..7f513ce 100644 --- a/net/disk_cache/stats_histogram.h +++ b/net/disk_cache/stats_histogram.h @@ -33,7 +33,7 @@ class StatsHistogram : public base::Histogram { explicit StatsHistogram(const std::string& name, Sample minimum, Sample maximum, size_t bucket_count) : Histogram(name, minimum, maximum, bucket_count), init_(false) {} - ~StatsHistogram(); + virtual ~StatsHistogram(); static StatsHistogram* StatsHistogramFactoryGet(const std::string& name); diff --git a/net/ftp/ftp_network_layer.h b/net/ftp/ftp_network_layer.h index 91a3e608..de55192 100644 --- a/net/ftp/ftp_network_layer.h +++ b/net/ftp/ftp_network_layer.h @@ -18,7 +18,7 @@ class HostResolver; class NET_API FtpNetworkLayer : public FtpTransactionFactory { public: explicit FtpNetworkLayer(HostResolver* host_resolver); - ~FtpNetworkLayer(); + virtual ~FtpNetworkLayer(); static FtpTransactionFactory* CreateFactory(HostResolver* host_resolver); diff --git a/net/http/http_auth_handler_basic.h b/net/http/http_auth_handler_basic.h index b98c7fd..5c747c9 100644 --- a/net/http/http_auth_handler_basic.h +++ b/net/http/http_auth_handler_basic.h @@ -45,7 +45,7 @@ class NET_TEST HttpAuthHandlerBasic : public HttpAuthHandler { std::string* auth_token); private: - ~HttpAuthHandlerBasic() {} + virtual ~HttpAuthHandlerBasic() {} bool ParseChallenge(HttpAuth::ChallengeTokenizer* challenge); }; diff --git a/net/http/http_auth_handler_digest.h b/net/http/http_auth_handler_digest.h index a9bf0ec..7b0f120 100644 --- a/net/http/http_auth_handler_digest.h +++ b/net/http/http_auth_handler_digest.h @@ -122,7 +122,7 @@ class NET_TEST HttpAuthHandlerDigest : public HttpAuthHandler { // the handler. The lifetime of the |nonce_generator| must exceed that of this // handler. HttpAuthHandlerDigest(int nonce_count, const NonceGenerator* nonce_generator); - ~HttpAuthHandlerDigest(); + virtual ~HttpAuthHandlerDigest(); // Parse the challenge, saving the results into this instance. // Returns true on success. diff --git a/net/http/http_auth_handler_ntlm.h b/net/http/http_auth_handler_ntlm.h index ae7c78b..c5050af 100644 --- a/net/http/http_auth_handler_ntlm.h +++ b/net/http/http_auth_handler_ntlm.h @@ -127,7 +127,7 @@ class HttpAuthHandlerNTLM : public HttpAuthHandler { std::string* auth_token); private: - ~HttpAuthHandlerNTLM(); + virtual ~HttpAuthHandlerNTLM(); #if defined(NTLM_PORTABLE) // For unit tests to override the GenerateRandom and GetHostName functions. diff --git a/net/http/http_cache.h b/net/http/http_cache.h index 3fbb5e1..861d36b 100644 --- a/net/http/http_cache.h +++ b/net/http/http_cache.h @@ -144,7 +144,7 @@ class NET_API HttpCache : public HttpTransactionFactory, NetLog* net_log, BackendFactory* backend_factory); - ~HttpCache(); + virtual ~HttpCache(); HttpTransactionFactory* network_layer() { return network_layer_.get(); } diff --git a/net/http/http_stream_parser.h b/net/http/http_stream_parser.h index 2192eff..40a4a0a 100644 --- a/net/http/http_stream_parser.h +++ b/net/http/http_stream_parser.h @@ -37,7 +37,7 @@ class HttpStreamParser : public ChunkCallback { const HttpRequestInfo* request, GrowableIOBuffer* read_buffer, const BoundNetLog& net_log); - ~HttpStreamParser(); + virtual ~HttpStreamParser(); // These functions implement the interface described in HttpStream with // some additional functionality diff --git a/net/socket/client_socket_pool_base.h b/net/socket/client_socket_pool_base.h index eb9d2a2..a5defdf 100644 --- a/net/socket/client_socket_pool_base.h +++ b/net/socket/client_socket_pool_base.h @@ -219,7 +219,7 @@ class NET_TEST ClientSocketPoolBaseHelper base::TimeDelta used_idle_socket_timeout, ConnectJobFactory* connect_job_factory); - ~ClientSocketPoolBaseHelper(); + virtual ~ClientSocketPoolBaseHelper(); // See ClientSocketPool::RequestSocket for documentation on this function. // ClientSocketPoolBaseHelper takes ownership of |request|, which must be diff --git a/net/socket/client_socket_pool_manager.h b/net/socket/client_socket_pool_manager.h index 35c82a1..d798420 100644 --- a/net/socket/client_socket_pool_manager.h +++ b/net/socket/client_socket_pool_manager.h @@ -78,7 +78,7 @@ class ClientSocketPoolManager : public base::NonThreadSafe, SSLHostInfoFactory* ssl_host_info_factory, ProxyService* proxy_service, SSLConfigService* ssl_config_service); - ~ClientSocketPoolManager(); + virtual ~ClientSocketPoolManager(); void FlushSocketPools(); void CloseIdleSockets(); diff --git a/net/socket/socket_test_util.h b/net/socket/socket_test_util.h index 6e18a7e..bfb4ab2 100644 --- a/net/socket/socket_test_util.h +++ b/net/socket/socket_test_util.h @@ -281,7 +281,7 @@ class DelayedSocketData : public StaticSocketDataProvider, DelayedSocketData(const MockConnect& connect, int write_delay, MockRead* reads, size_t reads_count, MockWrite* writes, size_t writes_count); - ~DelayedSocketData(); + virtual ~DelayedSocketData(); void ForceNextRead(); diff --git a/net/socket/ssl_client_socket_mac.h b/net/socket/ssl_client_socket_mac.h index 0a69286..4dbffe6 100644 --- a/net/socket/ssl_client_socket_mac.h +++ b/net/socket/ssl_client_socket_mac.h @@ -38,7 +38,7 @@ class SSLClientSocketMac : public SSLClientSocket { const HostPortPair& host_and_port, const SSLConfig& ssl_config, CertVerifier* cert_verifier); - ~SSLClientSocketMac(); + virtual ~SSLClientSocketMac(); // SSLClientSocket methods: virtual void GetSSLInfo(SSLInfo* ssl_info); diff --git a/net/socket/ssl_client_socket_nss.h b/net/socket/ssl_client_socket_nss.h index 3b6f6ad..2f2e81c 100644 --- a/net/socket/ssl_client_socket_nss.h +++ b/net/socket/ssl_client_socket_nss.h @@ -53,7 +53,7 @@ class SSLClientSocketNSS : public SSLClientSocket { SSLHostInfo* ssl_host_info, CertVerifier* cert_verifier, DnsCertProvenanceChecker* dnsrr_resolver); - ~SSLClientSocketNSS(); + virtual ~SSLClientSocketNSS(); // For tests static void ClearSessionCache(); diff --git a/net/socket/tcp_server_socket_libevent.h b/net/socket/tcp_server_socket_libevent.h index 41dd40e..360ec09 100644 --- a/net/socket/tcp_server_socket_libevent.h +++ b/net/socket/tcp_server_socket_libevent.h @@ -22,7 +22,7 @@ class TCPServerSocketLibevent : public ServerSocket, public: TCPServerSocketLibevent(net::NetLog* net_log, const net::NetLog::Source& source); - ~TCPServerSocketLibevent(); + virtual ~TCPServerSocketLibevent(); // net::ServerSocket implementation. virtual int Listen(const net::IPEndPoint& address, int backlog); diff --git a/net/socket_stream/socket_stream.h b/net/socket_stream/socket_stream.h index 18042e0..0b1bc10 100644 --- a/net/socket_stream/socket_stream.h +++ b/net/socket_stream/socket_stream.h @@ -189,7 +189,7 @@ class NET_API SocketStream : public base::RefCountedThreadSafe<SocketStream> { std::string headers_; private: - ~RequestHeaders() { data_ = NULL; } + virtual ~RequestHeaders() { data_ = NULL; } }; class ResponseHeaders : public IOBuffer { @@ -202,7 +202,7 @@ class NET_API SocketStream : public base::RefCountedThreadSafe<SocketStream> { void Realloc(size_t new_size); private: - ~ResponseHeaders(); + virtual ~ResponseHeaders(); scoped_ptr_malloc<char> headers_; }; diff --git a/net/tools/flip_server/acceptor_thread.h b/net/tools/flip_server/acceptor_thread.h index 8a30532..b378e4d 100644 --- a/net/tools/flip_server/acceptor_thread.h +++ b/net/tools/flip_server/acceptor_thread.h @@ -46,7 +46,7 @@ class SMAcceptorThread : public base::SimpleThread, public SMConnectionPoolInterface { public: SMAcceptorThread(FlipAcceptor *acceptor, MemoryCache* memory_cache); - ~SMAcceptorThread(); + virtual ~SMAcceptorThread(); // EpollCallbackInteface interface virtual void OnRegistration(EpollServer* eps, int fd, int event_mask) {} @@ -92,4 +92,3 @@ class SMAcceptorThread : public base::SimpleThread, } // namespace net #endif // NET_TOOLS_FLIP_SERVER_ACCEPTOR_THREAD_H_ - diff --git a/net/tools/flip_server/simple_buffer.cc b/net/tools/flip_server/simple_buffer.cc index 569e505..d94153b 100644 --- a/net/tools/flip_server/simple_buffer.cc +++ b/net/tools/flip_server/simple_buffer.cc @@ -37,6 +37,11 @@ SimpleBuffer::SimpleBuffer(int size) storage_ = new char[size]; } +SimpleBuffer::~SimpleBuffer() { + delete[] storage_; +} + + //////////////////////////////////////////////////////////////////////////////// int SimpleBuffer::ReadableBytes() const { @@ -201,4 +206,3 @@ inline void SimpleBuffer::AdvanceWritablePtr(int amount_to_advance) { } } // namespace net - diff --git a/net/tools/flip_server/simple_buffer.h b/net/tools/flip_server/simple_buffer.h index fee7d4b..831531d 100644 --- a/net/tools/flip_server/simple_buffer.h +++ b/net/tools/flip_server/simple_buffer.h @@ -16,9 +16,7 @@ class SimpleBuffer : public BufferInterface { public: SimpleBuffer(); explicit SimpleBuffer(int size); - virtual ~SimpleBuffer() { - delete[] storage_; - } + virtual ~SimpleBuffer(); std::string str() const; @@ -92,4 +90,3 @@ class SimpleBuffer : public BufferInterface { } // namespace net #endif // NET_TOOLS_FLIP_SERVER_SIMPLE_BUFFER_H__ - diff --git a/net/tools/flip_server/sm_connection.cc b/net/tools/flip_server/sm_connection.cc index b57c5a9..f47b502 100644 --- a/net/tools/flip_server/sm_connection.cc +++ b/net/tools/flip_server/sm_connection.cc @@ -23,6 +23,11 @@ namespace net { // static bool SMConnection::force_spdy_ = false; +DataFrame::~DataFrame() { + if (delete_when_done) + delete[] data; +} + SMConnection::SMConnection(EpollServer* epoll_server, SSLState* ssl_state, MemoryCache* memory_cache, @@ -659,5 +664,3 @@ SMConnection* SMConnection::NewSMConnection(EpollServer* epoll_server, } } // namespace net - - diff --git a/net/tools/flip_server/sm_connection.h b/net/tools/flip_server/sm_connection.h index 044f311..aa91890 100644 --- a/net/tools/flip_server/sm_connection.h +++ b/net/tools/flip_server/sm_connection.h @@ -32,10 +32,7 @@ class DataFrame { bool delete_when_done; size_t index; DataFrame() : data(NULL), size(0), delete_when_done(false), index(0) {} - virtual ~DataFrame() { - if (delete_when_done) - delete[] data; - } + virtual ~DataFrame(); }; typedef std::list<DataFrame*> OutputList; @@ -160,4 +157,3 @@ class SMConnection : public SMConnectionInterface, } // namespace net #endif // NET_TOOLS_FLIP_SERVER_SM_CONNECTION_H_ - diff --git a/net/url_request/https_prober.h b/net/url_request/https_prober.h index b461fa8..d152e76 100644 --- a/net/url_request/https_prober.h +++ b/net/url_request/https_prober.h @@ -66,7 +66,7 @@ class HTTPSProber : public URLRequest::Delegate { friend struct DefaultSingletonTraits<HTTPSProber>; HTTPSProber(); - ~HTTPSProber(); + virtual ~HTTPSProber(); void Success(URLRequest* request); void Failure(URLRequest* request); diff --git a/net/url_request/url_request_data_job.h b/net/url_request/url_request_data_job.h index 766296f..3880241 100644 --- a/net/url_request/url_request_data_job.h +++ b/net/url_request/url_request_data_job.h @@ -27,7 +27,7 @@ class URLRequestDataJob : public URLRequestSimpleJob { std::string* data) const; private: - ~URLRequestDataJob(); + virtual ~URLRequestDataJob(); DISALLOW_COPY_AND_ASSIGN(URLRequestDataJob); }; diff --git a/net/url_request/url_request_error_job.h b/net/url_request/url_request_error_job.h index 31cb384..404a6a1 100644 --- a/net/url_request/url_request_error_job.h +++ b/net/url_request/url_request_error_job.h @@ -21,7 +21,7 @@ class URLRequestErrorJob : public URLRequestJob { virtual void Start(); private: - ~URLRequestErrorJob(); + virtual ~URLRequestErrorJob(); void StartAsync(); diff --git a/net/url_request/url_request_simple_job.h b/net/url_request/url_request_simple_job.h index 879319c..8ba9104 100644 --- a/net/url_request/url_request_simple_job.h +++ b/net/url_request/url_request_simple_job.h @@ -25,7 +25,7 @@ class URLRequestSimpleJob : public URLRequestJob { virtual bool GetCharset(std::string* charset); protected: - ~URLRequestSimpleJob(); + virtual ~URLRequestSimpleJob(); // subclasses must override the way response data is determined. virtual bool GetData(std::string* mime_type, diff --git a/printing/printing_context_cairo.h b/printing/printing_context_cairo.h index 2326dea..5bc30e6 100644 --- a/printing/printing_context_cairo.h +++ b/printing/printing_context_cairo.h @@ -17,7 +17,7 @@ class PrintDialogGtkInterface; class PrintingContextCairo : public PrintingContext { public: explicit PrintingContextCairo(const std::string& app_locale); - ~PrintingContextCairo(); + virtual ~PrintingContextCairo(); #if !defined(OS_CHROMEOS) // Sets the function that creates the print dialog. diff --git a/printing/printing_context_mac.h b/printing/printing_context_mac.h index 12a999c..84a5c05 100644 --- a/printing/printing_context_mac.h +++ b/printing/printing_context_mac.h @@ -22,7 +22,7 @@ namespace printing { class PrintingContextMac : public PrintingContext { public: explicit PrintingContextMac(const std::string& app_locale); - ~PrintingContextMac(); + virtual ~PrintingContextMac(); // PrintingContext implementation. virtual void AskUserForSettings(gfx::NativeView parent_view, diff --git a/remoting/client/plugin/pepper_xmpp_proxy.h b/remoting/client/plugin/pepper_xmpp_proxy.h index e564c6c..fc5ee42 100644 --- a/remoting/client/plugin/pepper_xmpp_proxy.h +++ b/remoting/client/plugin/pepper_xmpp_proxy.h @@ -34,7 +34,7 @@ class PepperXmppProxy : public XmppProxy { virtual void OnIq(const std::string& response_xml); private: - ~PepperXmppProxy(); + virtual ~PepperXmppProxy(); base::WeakPtr<ChromotingScriptableObject> scriptable_object_; diff --git a/remoting/host/capturer_fake.h b/remoting/host/capturer_fake.h index 60b4fec..879ee03 100644 --- a/remoting/host/capturer_fake.h +++ b/remoting/host/capturer_fake.h @@ -18,7 +18,7 @@ namespace remoting { class CapturerFake : public Capturer { public: CapturerFake(); - ~CapturerFake(); + virtual ~CapturerFake(); // Capturer interface. virtual void ScreenConfigurationChanged(); diff --git a/remoting/host/capturer_fake_ascii.h b/remoting/host/capturer_fake_ascii.h index fe008f7..2f348ad 100644 --- a/remoting/host/capturer_fake_ascii.h +++ b/remoting/host/capturer_fake_ascii.h @@ -19,7 +19,7 @@ namespace remoting { class CapturerFakeAscii : public Capturer { public: CapturerFakeAscii(); - ~CapturerFakeAscii(); + virtual ~CapturerFakeAscii(); // Capturer interface. virtual void ScreenConfigurationChanged(); diff --git a/remoting/jingle_glue/iq_request.h b/remoting/jingle_glue/iq_request.h index f5a9b3e..9d6c689 100644 --- a/remoting/jingle_glue/iq_request.h +++ b/remoting/jingle_glue/iq_request.h @@ -232,7 +232,7 @@ class SessionStartRequest : public sigslot::has_slots<> { public: SessionStartRequest(JavascriptIqRequest* request, cricket::SessionManager* session_manager); - ~SessionStartRequest(); + virtual ~SessionStartRequest(); void Run(); diff --git a/remoting/jingle_glue/ssl_socket_adapter.h b/remoting/jingle_glue/ssl_socket_adapter.h index 279e9e1..9acd3f7 100644 --- a/remoting/jingle_glue/ssl_socket_adapter.h +++ b/remoting/jingle_glue/ssl_socket_adapter.h @@ -33,7 +33,7 @@ class TransportSocket : public net::StreamSocket, public sigslot::has_slots<> { public: TransportSocket(talk_base::AsyncSocket* socket, SSLSocketAdapter *ssl_adapter); - ~TransportSocket(); + virtual ~TransportSocket(); void set_addr(const talk_base::SocketAddress& addr) { addr_ = addr; @@ -92,7 +92,7 @@ class TransportSocket : public net::StreamSocket, public sigslot::has_slots<> { class SSLSocketAdapter : public talk_base::SSLAdapter { public: explicit SSLSocketAdapter(talk_base::AsyncSocket* socket); - ~SSLSocketAdapter(); + virtual ~SSLSocketAdapter(); // StartSSL returns 0 if successful, or non-zero on failure. // If StartSSL is called while the socket is closed or connecting, the SSL diff --git a/remoting/protocol/jingle_session_manager.h b/remoting/protocol/jingle_session_manager.h index 943edf6..8371157 100644 --- a/remoting/protocol/jingle_session_manager.h +++ b/remoting/protocol/jingle_session_manager.h @@ -42,7 +42,7 @@ class ContentDescription : public cricket::ContentDescription { explicit ContentDescription(const CandidateSessionConfig* config, const std::string& auth_token, scoped_refptr<net::X509Certificate> certificate); - ~ContentDescription(); + virtual ~ContentDescription(); const CandidateSessionConfig* config() const { return candidate_config_.get(); diff --git a/remoting/protocol/rtp_reader.h b/remoting/protocol/rtp_reader.h index c2097b9..d932d48 100644 --- a/remoting/protocol/rtp_reader.h +++ b/remoting/protocol/rtp_reader.h @@ -48,7 +48,7 @@ class RtpPacket { class RtpReader : public SocketReaderBase { public: RtpReader(); - ~RtpReader(); + virtual ~RtpReader(); // The OnMessageCallback is called whenever a new message is received. // Ownership of the message is passed the callback. diff --git a/skia/ext/vector_platform_device_skia.h b/skia/ext/vector_platform_device_skia.h index 74f2817..53c711d 100644 --- a/skia/ext/vector_platform_device_skia.h +++ b/skia/ext/vector_platform_device_skia.h @@ -34,7 +34,7 @@ class VectorPlatformDeviceSkiaFactory : public SkDeviceFactory { class VectorPlatformDeviceSkia : public PlatformDevice { public: SK_API VectorPlatformDeviceSkia(SkPDFDevice* pdf_device); - ~VectorPlatformDeviceSkia(); + virtual ~VectorPlatformDeviceSkia(); SkPDFDevice* PdfDevice() { return pdf_device_.get(); } diff --git a/webkit/appcache/appcache_disk_cache.h b/webkit/appcache/appcache_disk_cache.h index 1799813..404da05 100644 --- a/webkit/appcache/appcache_disk_cache.h +++ b/webkit/appcache/appcache_disk_cache.h @@ -57,7 +57,7 @@ class AppCacheDiskCache { disk_cache::Backend* backend_ptr_; // Accessed directly. private: - ~CreateBackendCallback() { + virtual ~CreateBackendCallback() { delete backend_ptr_; } }; diff --git a/webkit/appcache/appcache_host.h b/webkit/appcache/appcache_host.h index a06cdd3..0f8ac47 100644 --- a/webkit/appcache/appcache_host.h +++ b/webkit/appcache/appcache_host.h @@ -48,7 +48,7 @@ class AppCacheHost : public AppCacheStorage::Delegate, AppCacheHost(int host_id, AppCacheFrontend* frontend, AppCacheService* service); - ~AppCacheHost(); + virtual ~AppCacheHost(); // Adds/removes an observer, the AppCacheHost does not take // ownership of the observer. diff --git a/webkit/appcache/appcache_update_job.h b/webkit/appcache/appcache_update_job.h index 04c3c80..b85d73b 100644 --- a/webkit/appcache/appcache_update_job.h +++ b/webkit/appcache/appcache_update_job.h @@ -33,7 +33,7 @@ class AppCacheUpdateJob : public AppCacheStorage::Delegate, public AppCacheHost::Observer { public: AppCacheUpdateJob(AppCacheService* service, AppCacheGroup* group); - ~AppCacheUpdateJob(); + virtual ~AppCacheUpdateJob(); // Triggers the update process or adds more info if this update is already // in progress. @@ -101,7 +101,7 @@ class AppCacheUpdateJob : public AppCacheStorage::Delegate, URLFetcher(const GURL& url, FetchType fetch_type, AppCacheUpdateJob* job); - ~URLFetcher(); + virtual ~URLFetcher(); void Start(); FetchType fetch_type() const { return fetch_type_; } net::URLRequest* request() const { return request_.get(); } diff --git a/webkit/appcache/view_appcache_internals_job.h b/webkit/appcache/view_appcache_internals_job.h index de2c736..8995713 100644 --- a/webkit/appcache/view_appcache_internals_job.h +++ b/webkit/appcache/view_appcache_internals_job.h @@ -34,7 +34,7 @@ class ViewAppCacheInternalsJob : public net::URLRequestSimpleJob { virtual bool IsRedirectResponse(GURL* location, int* http_status_code); private: - ~ViewAppCacheInternalsJob(); + virtual ~ViewAppCacheInternalsJob(); void AppCacheDone(int rv); diff --git a/webkit/blob/view_blob_internals_job.h b/webkit/blob/view_blob_internals_job.h index 547bf40..eee6835 100644 --- a/webkit/blob/view_blob_internals_job.h +++ b/webkit/blob/view_blob_internals_job.h @@ -34,7 +34,7 @@ class ViewBlobInternalsJob : public net::URLRequestSimpleJob { virtual void Kill(); private: - ~ViewBlobInternalsJob(); + virtual ~ViewBlobInternalsJob(); void DoWorkAsync(); void GenerateHTML(std::string* out) const; diff --git a/webkit/glue/weburlloader_impl.h b/webkit/glue/weburlloader_impl.h index 44e4e1e..4403c17 100644 --- a/webkit/glue/weburlloader_impl.h +++ b/webkit/glue/weburlloader_impl.h @@ -13,7 +13,7 @@ namespace webkit_glue { class WebURLLoaderImpl : public WebKit::WebURLLoader { public: WebURLLoaderImpl(); - ~WebURLLoaderImpl(); + virtual ~WebURLLoaderImpl(); // WebURLLoader methods: virtual void loadSynchronously( diff --git a/webkit/plugins/npapi/test/plugin_npobject_lifetime_test.h b/webkit/plugins/npapi/test/plugin_npobject_lifetime_test.h index 12cf4e2..8365b9b 100644 --- a/webkit/plugins/npapi/test/plugin_npobject_lifetime_test.h +++ b/webkit/plugins/npapi/test/plugin_npobject_lifetime_test.h @@ -41,7 +41,7 @@ class NPObjectLifetimeTestInstance2 : public PluginTest { public: // Constructor. NPObjectLifetimeTestInstance2(NPP id, NPNetscapeFuncs *host_functions); - ~NPObjectLifetimeTestInstance2(); + virtual ~NPObjectLifetimeTestInstance2(); // NPAPI SetWindow handler. virtual NPError SetWindow(NPWindow* pNPWindow); @@ -58,7 +58,7 @@ class NPObjectDeletePluginInNPN_Evaluate : public PluginTest { public: // Constructor. NPObjectDeletePluginInNPN_Evaluate(NPP id, NPNetscapeFuncs *host_functions); - ~NPObjectDeletePluginInNPN_Evaluate(); + virtual ~NPObjectDeletePluginInNPN_Evaluate(); // NPAPI SetWindow handler. virtual NPError SetWindow(NPWindow* pNPWindow); diff --git a/webkit/plugins/npapi/test/plugin_thread_async_call_test.h b/webkit/plugins/npapi/test/plugin_thread_async_call_test.h index 2980dbc..6962276 100644 --- a/webkit/plugins/npapi/test/plugin_thread_async_call_test.h +++ b/webkit/plugins/npapi/test/plugin_thread_async_call_test.h @@ -18,7 +18,7 @@ namespace NPAPIClient { class PluginThreadAsyncCallTest : public PluginTest { public: PluginThreadAsyncCallTest(NPP id, NPNetscapeFuncs *host_functions); - ~PluginThreadAsyncCallTest(); + virtual ~PluginThreadAsyncCallTest(); virtual NPError New(uint16 mode, int16 argc, const char* argn[], const char* argv[], NPSavedData* saved); diff --git a/webkit/plugins/npapi/webplugin_delegate_impl.h b/webkit/plugins/npapi/webplugin_delegate_impl.h index 039bb23..b5156e3 100644 --- a/webkit/plugins/npapi/webplugin_delegate_impl.h +++ b/webkit/plugins/npapi/webplugin_delegate_impl.h @@ -201,7 +201,7 @@ class WebPluginDelegateImpl : public WebPluginDelegate { WebPluginDelegateImpl(gfx::PluginWindowHandle containing_view, PluginInstance *instance); - ~WebPluginDelegateImpl(); + virtual ~WebPluginDelegateImpl(); // Called by Initialize() for platform-specific initialization. // If this returns false, the plugin shouldn't be started--see Initialize(). diff --git a/webkit/plugins/ppapi/ppb_audio_impl.h b/webkit/plugins/ppapi/ppb_audio_impl.h index 201193f..060b8bf 100644 --- a/webkit/plugins/ppapi/ppb_audio_impl.h +++ b/webkit/plugins/ppapi/ppb_audio_impl.h @@ -31,7 +31,7 @@ class PPB_AudioConfig_Impl : public Resource, public: // Note that you must call Init (on AudioConfigImpl) before using this class. PPB_AudioConfig_Impl(PluginInstance* instance); - ~PPB_AudioConfig_Impl(); + virtual ~PPB_AudioConfig_Impl(); // ResourceObjectBase overrides. virtual ::ppapi::thunk::PPB_AudioConfig_API* AsAudioConfig_API() OVERRIDE; diff --git a/webkit/quota/usage_tracker.h b/webkit/quota/usage_tracker.h index 52bbffc..8a9dfb9 100644 --- a/webkit/quota/usage_tracker.h +++ b/webkit/quota/usage_tracker.h @@ -28,7 +28,7 @@ class ClientUsageTracker; class UsageTracker : public QuotaTaskObserver { public: UsageTracker(const QuotaClientList& clients, StorageType type); - ~UsageTracker(); + virtual ~UsageTracker(); StorageType type() const { return type_; } ClientUsageTracker* GetClientTracker(QuotaClient::ID client_id); diff --git a/webkit/support/simple_database_system.h b/webkit/support/simple_database_system.h index b6aa9b9..56e6657 100644 --- a/webkit/support/simple_database_system.h +++ b/webkit/support/simple_database_system.h @@ -29,7 +29,7 @@ class SimpleDatabaseSystem : public webkit_database::DatabaseTracker::Observer, static SimpleDatabaseSystem* GetInstance(); SimpleDatabaseSystem(); - ~SimpleDatabaseSystem(); + virtual ~SimpleDatabaseSystem(); // WebDatabaseObserver implementation, these are called on the script // execution context thread on which the database is opened. This may be diff --git a/webkit/tools/test_shell/layout_test_controller.h b/webkit/tools/test_shell/layout_test_controller.h index 136b6a1..3ada264 100644 --- a/webkit/tools/test_shell/layout_test_controller.h +++ b/webkit/tools/test_shell/layout_test_controller.h @@ -27,7 +27,7 @@ class LayoutTestController : public CppBoundClass { // Builds the property and method lists needed to bind this class to a JS // object. LayoutTestController(TestShell* shell); - ~LayoutTestController(); + virtual ~LayoutTestController(); // By default, tests end when page load is complete. These methods are used // to delay the completion of the test until notifyDone is called. diff --git a/webkit/tools/test_shell/test_shell_request_context.h b/webkit/tools/test_shell/test_shell_request_context.h index cc74803..0f987c6 100644 --- a/webkit/tools/test_shell/test_shell_request_context.h +++ b/webkit/tools/test_shell/test_shell_request_context.h @@ -43,7 +43,7 @@ class TestShellRequestContext : public net::URLRequestContext { } private: - ~TestShellRequestContext(); + virtual ~TestShellRequestContext(); void Init(const FilePath& cache_path, net::HttpCache::Mode cache_mode, bool no_proxy); diff --git a/webkit/tools/test_shell/test_shell_webkit_init.h b/webkit/tools/test_shell/test_shell_webkit_init.h index 8795b46..a4e8f27 100644 --- a/webkit/tools/test_shell/test_shell_webkit_init.h +++ b/webkit/tools/test_shell/test_shell_webkit_init.h @@ -32,7 +32,7 @@ class TestShellWebKitInit : public webkit_glue::WebKitClientImpl { public: explicit TestShellWebKitInit(bool layout_test_mode); - ~TestShellWebKitInit(); + virtual ~TestShellWebKitInit(); virtual WebKit::WebMimeRegistry* mimeRegistry(); virtual WebKit::WebClipboard* clipboard(); |