summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorerg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-30 20:06:30 +0000
committererg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-30 20:06:30 +0000
commit20f0487a5b73e8071af2612150301b0942cbf0e2 (patch)
treeecee69b28f16712bdc1558ac0a015ac80095c761
parent167b0dd17d5ed57ff293b6480ccaed706e0bc9cb (diff)
downloadchromium_src-20f0487a5b73e8071af2612150301b0942cbf0e2.zip
chromium_src-20f0487a5b73e8071af2612150301b0942cbf0e2.tar.gz
chromium_src-20f0487a5b73e8071af2612150301b0942cbf0e2.tar.bz2
FBTF: Move ctors/dtors into implementation files. Adds ctors/dtors to non-POD structs.
Cuts ~2MB off our .a files (Debug, Linux). Also added the "virtual" keyword on a whole bunch of virtual dtors that were missing it. BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3522004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61100 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--base/simple_thread.cc35
-rw-r--r--base/simple_thread.h22
-rw-r--r--chrome/browser/history/history_types.cc35
-rw-r--r--chrome/browser/history/history_types.h16
-rw-r--r--chrome/browser/history/snippet.cc11
-rw-r--r--chrome/browser/history/snippet.h8
-rw-r--r--chrome/browser/importer/importer_bridge.cc8
-rw-r--r--chrome/browser/importer/importer_bridge.h8
-rw-r--r--chrome/browser/importer/importer_data_types.cc15
-rw-r--r--chrome/browser/importer/importer_data_types.h3
-rw-r--r--chrome/browser/importer/profile_writer.cc8
-rw-r--r--chrome/browser/importer/profile_writer.h22
-rw-r--r--chrome/browser/profile_import_process_host.cc17
-rw-r--r--chrome/browser/profile_import_process_host.h11
-rw-r--r--chrome/chrome_browser.gypi1
-rw-r--r--chrome/common/net/gaia/gaia_authenticator.cc8
-rw-r--r--chrome/common/net/gaia/gaia_authenticator.h8
-rw-r--r--chrome/common/net/url_fetcher_protect.cc4
-rw-r--r--chrome/common/net/url_fetcher_protect.h4
-rw-r--r--chrome/common/net/url_request_context_getter.cc4
-rw-r--r--chrome/common/net/url_request_context_getter.h4
-rw-r--r--chrome/common/web_resource/web_resource_unpacker.cc7
-rw-r--r--chrome/common/web_resource/web_resource_unpacker.h4
-rw-r--r--gfx/gtk_native_view_id_manager.cc3
-rw-r--r--gfx/gtk_native_view_id_manager.h1
-rw-r--r--gfx/platform_font_gtk.cc2
-rw-r--r--gfx/platform_font_gtk.h2
-rw-r--r--ipc/ipc_channel_proxy.cc2
-rw-r--r--ipc/ipc_channel_proxy.h1
-rw-r--r--ipc/ipc_message_utils.cc32
-rw-r--r--ipc/ipc_message_utils.h29
-rw-r--r--net/base/ssl_client_auth_cache.cc4
-rw-r--r--net/base/ssl_client_auth_cache.h4
-rw-r--r--net/disk_cache/in_flight_backend_io.cc2
-rw-r--r--net/disk_cache/in_flight_backend_io.h2
-rw-r--r--net/ftp/ftp_auth_cache.cc14
-rw-r--r--net/ftp/ftp_auth_cache.h11
-rw-r--r--net/http/http_auth_cache.cc9
-rw-r--r--net/http/http_auth_cache.h5
-rw-r--r--net/proxy/proxy_config_service_common_unittest.cc20
-rw-r--r--net/proxy/proxy_config_service_common_unittest.h12
-rw-r--r--net/proxy/proxy_list.cc7
-rw-r--r--net/proxy/proxy_list.h6
-rw-r--r--net/proxy/proxy_list_unittest.cc2
-rw-r--r--net/proxy/proxy_service.cc2
-rw-r--r--net/proxy/proxy_service.h4
-rw-r--r--net/socket/client_socket_pool.cc4
-rw-r--r--net/socket/client_socket_pool.h4
-rw-r--r--net/socket/client_socket_pool_histograms.h4
-rw-r--r--net/socket/socket_test_util.cc12
-rw-r--r--net/socket/socket_test_util.h8
-rw-r--r--net/socket/ssl_client_socket_pool.cc1
-rw-r--r--net/socket/tcp_client_socket_pool.cc1
-rw-r--r--printing/print_settings.cc3
-rw-r--r--printing/print_settings.h1
-rw-r--r--printing/printed_document.cc6
-rw-r--r--printing/printed_document.h4
-rw-r--r--skia/ext/SkFontHost_fontconfig_direct.cpp3
-rw-r--r--skia/ext/SkFontHost_fontconfig_direct.h31
-rw-r--r--webkit/appcache/appcache_backend_impl.cc6
-rw-r--r--webkit/appcache/appcache_backend_impl.h2
-rw-r--r--webkit/appcache/appcache_interfaces.cc25
-rw-r--r--webkit/appcache/appcache_interfaces.h10
-rw-r--r--webkit/appcache/appcache_response.cc9
-rw-r--r--webkit/appcache/appcache_response.h11
-rw-r--r--webkit/appcache/appcache_service.cc4
-rw-r--r--webkit/appcache/appcache_service.h4
-rw-r--r--webkit/appcache/appcache_storage.cc15
-rw-r--r--webkit/appcache/appcache_storage.h12
-rw-r--r--webkit/appcache/appcache_update_job.cc11
-rw-r--r--webkit/appcache/appcache_update_job.h5
-rw-r--r--webkit/appcache/appcache_working_set.cc2
-rw-r--r--webkit/appcache/appcache_working_set.h2
-rw-r--r--webkit/appcache/manifest_parser.cc4
-rw-r--r--webkit/appcache/manifest_parser.h5
-rw-r--r--webkit/glue/plugins/pepper_url_request_info.cc25
-rw-r--r--webkit/glue/plugins/pepper_url_request_info.h26
-rw-r--r--webkit/glue/plugins/plugin_list.cc3
-rw-r--r--webkit/glue/plugins/plugin_list.h2
-rw-r--r--webkit/glue/plugins/webplugin_impl.cc9
-rw-r--r--webkit/glue/plugins/webplugin_impl.h9
81 files changed, 537 insertions, 185 deletions
diff --git a/base/simple_thread.cc b/base/simple_thread.cc
index bd97369..086a430 100644
--- a/base/simple_thread.cc
+++ b/base/simple_thread.cc
@@ -37,17 +37,52 @@ void SimpleThread::ThreadMain() {
Run();
}
+SimpleThread::SimpleThread(const std::string& name_prefix)
+ : name_prefix_(name_prefix), name_(name_prefix),
+ thread_(), event_(true, false), tid_(0), joined_(false) {
+}
+
+SimpleThread::SimpleThread(const std::string& name_prefix,
+ const Options& options)
+ : name_prefix_(name_prefix), name_(name_prefix), options_(options),
+ thread_(), event_(true, false), tid_(0), joined_(false) {
+}
+
SimpleThread::~SimpleThread() {
DCHECK(HasBeenStarted()) << "SimpleThread was never started.";
DCHECK(HasBeenJoined()) << "SimpleThread destroyed without being Join()ed.";
}
+DelegateSimpleThread::DelegateSimpleThread(Delegate* delegate,
+ const std::string& name_prefix)
+ : SimpleThread(name_prefix),
+ delegate_(delegate) {
+}
+
+DelegateSimpleThread::DelegateSimpleThread(Delegate* delegate,
+ const std::string& name_prefix,
+ const Options& options)
+ : SimpleThread(name_prefix, options),
+ delegate_(delegate) {
+}
+
+DelegateSimpleThread::~DelegateSimpleThread() {
+}
+
void DelegateSimpleThread::Run() {
DCHECK(delegate_) << "Tried to call Run without a delegate (called twice?)";
delegate_->Run();
delegate_ = NULL;
}
+DelegateSimpleThreadPool::DelegateSimpleThreadPool(
+ const std::string& name_prefix,
+ int num_threads)
+ : name_prefix_(name_prefix),
+ num_threads_(num_threads),
+ dry_(true, false) {
+}
+
DelegateSimpleThreadPool::~DelegateSimpleThreadPool() {
DCHECK(threads_.empty());
DCHECK(delegates_.empty());
diff --git a/base/simple_thread.h b/base/simple_thread.h
index 40e568a..13c46c0 100644
--- a/base/simple_thread.h
+++ b/base/simple_thread.h
@@ -74,12 +74,8 @@ class SimpleThread : public PlatformThread::Delegate {
// configuration involving the thread creation and management.
// Every thread has a name, in the form of |name_prefix|/TID, for example
// "my_thread/321". The thread will not be created until Start() is called.
- explicit SimpleThread(const std::string& name_prefix)
- : name_prefix_(name_prefix), name_(name_prefix),
- thread_(), event_(true, false), tid_(0), joined_(false) { }
- SimpleThread(const std::string& name_prefix, const Options& options)
- : name_prefix_(name_prefix), name_(name_prefix), options_(options),
- thread_(), event_(true, false), tid_(0), joined_(false) { }
+ explicit SimpleThread(const std::string& name_prefix);
+ SimpleThread(const std::string& name_prefix, const Options& options);
virtual ~SimpleThread();
@@ -127,14 +123,12 @@ class DelegateSimpleThread : public SimpleThread {
};
DelegateSimpleThread(Delegate* delegate,
- const std::string& name_prefix)
- : SimpleThread(name_prefix), delegate_(delegate) { }
+ const std::string& name_prefix);
DelegateSimpleThread(Delegate* delegate,
const std::string& name_prefix,
- const Options& options)
- : SimpleThread(name_prefix, options), delegate_(delegate) { }
+ const Options& options);
- virtual ~DelegateSimpleThread() { }
+ virtual ~DelegateSimpleThread();
virtual void Run();
private:
Delegate* delegate_;
@@ -153,10 +147,8 @@ class DelegateSimpleThreadPool : public DelegateSimpleThread::Delegate {
public:
typedef DelegateSimpleThread::Delegate Delegate;
- DelegateSimpleThreadPool(const std::string& name_prefix, int num_threads)
- : name_prefix_(name_prefix), num_threads_(num_threads),
- dry_(true, false) { }
- ~DelegateSimpleThreadPool();
+ DelegateSimpleThreadPool(const std::string& name_prefix, int num_threads);
+ virtual ~DelegateSimpleThreadPool();
// Start up all of the underlying threads, and start processing work if we
// have any.
diff --git a/chrome/browser/history/history_types.cc b/chrome/browser/history/history_types.cc
index 8a8ce6d..4591130 100644
--- a/chrome/browser/history/history_types.cc
+++ b/chrome/browser/history/history_types.cc
@@ -95,6 +95,14 @@ VisitRow::VisitRow(URLID arg_url_id,
VisitRow::~VisitRow() {
}
+// Favicons -------------------------------------------------------------------
+
+ImportedFavIconUsage::ImportedFavIconUsage() {
+}
+
+ImportedFavIconUsage::~ImportedFavIconUsage() {
+}
+
// StarredEntry ----------------------------------------------------------------
StarredEntry::StarredEntry()
@@ -292,6 +300,33 @@ void QueryResults::AdjustResultMap(size_t begin, size_t end, ptrdiff_t delta) {
}
}
+// QueryOptions ----------------------------------------------------------------
+
+QueryOptions::QueryOptions() : max_count(0) {}
+
+void QueryOptions::SetRecentDayRange(int days_ago) {
+ end_time = base::Time::Now();
+ begin_time = end_time - base::TimeDelta::FromDays(days_ago);
+}
+
+// KeywordSearchTermVisit -----------------------------------------------------
+
+KeywordSearchTermVisit::KeywordSearchTermVisit() {
+}
+
+KeywordSearchTermVisit::~KeywordSearchTermVisit() {
+}
+
+// Images ---------------------------------------------------------------------
+
+Images::Images() {
+}
+
+Images::~Images() {
+}
+
+// HistoryAddPageArgs ---------------------------------------------------------
+
HistoryAddPageArgs::HistoryAddPageArgs(
const GURL& arg_url,
base::Time arg_time,
diff --git a/chrome/browser/history/history_types.h b/chrome/browser/history/history_types.h
index 8fab602..b479cbc 100644
--- a/chrome/browser/history/history_types.h
+++ b/chrome/browser/history/history_types.h
@@ -242,6 +242,9 @@ typedef std::vector<VisitRow> VisitVector;
// Used by the importer to set favicons for imported bookmarks.
struct ImportedFavIconUsage {
+ ImportedFavIconUsage();
+ ~ImportedFavIconUsage();
+
// The URL of the favicon.
GURL favicon_url;
@@ -479,7 +482,7 @@ class QueryResults {
// QueryOptions ----------------------------------------------------------------
struct QueryOptions {
- QueryOptions() : max_count(0) {}
+ QueryOptions();
// The time range to search for matches in.
//
@@ -497,10 +500,7 @@ struct QueryOptions {
base::Time end_time;
// Sets the query time to the last |days_ago| days to the present time.
- void SetRecentDayRange(int days_ago) {
- end_time = base::Time::Now();
- begin_time = end_time - base::TimeDelta::FromDays(days_ago);
- }
+ void SetRecentDayRange(int days_ago);
// The maximum number of results to return. The results will be sorted with
// the most recent first, so older results may not be returned if there is not
@@ -513,6 +513,9 @@ struct QueryOptions {
// KeywordSearchTermVisit is returned from GetMostRecentKeywordSearchTerms. It
// gives the time and search term of the keyword visit.
struct KeywordSearchTermVisit {
+ KeywordSearchTermVisit();
+ ~KeywordSearchTermVisit();
+
// The time of the visit.
base::Time time;
@@ -537,6 +540,9 @@ struct MostVisitedURL {
// Used by TopSites to store the thumbnails.
struct Images {
+ Images();
+ ~Images();
+
scoped_refptr<RefCountedBytes> thumbnail;
ThumbnailScore thumbnail_score;
diff --git a/chrome/browser/history/snippet.cc b/chrome/browser/history/snippet.cc
index 6e3e93c..47c11c3 100644
--- a/chrome/browser/history/snippet.cc
+++ b/chrome/browser/history/snippet.cc
@@ -200,6 +200,12 @@ void Snippet::ConvertMatchPositionsToWide(
}
}
+Snippet::Snippet() {
+}
+
+Snippet::~Snippet() {
+}
+
void Snippet::ComputeSnippet(const MatchPositions& match_positions,
const std::string& document) {
// The length of snippets we try to produce.
@@ -284,3 +290,8 @@ void Snippet::ComputeSnippet(const MatchPositions& match_positions,
utext_close(document_utext);
swap(text_, snippet);
}
+
+void Snippet::Swap(Snippet* other) {
+ text_.swap(other->text_);
+ matches_.swap(other->matches_);
+}
diff --git a/chrome/browser/history/snippet.h b/chrome/browser/history/snippet.h
index ffa8fa1..bbabef0 100644
--- a/chrome/browser/history/snippet.h
+++ b/chrome/browser/history/snippet.h
@@ -43,6 +43,9 @@ class Snippet {
const std::string& utf8_string,
Snippet::MatchPositions* match_positions);
+ Snippet();
+ ~Snippet();
+
// Given |matches|, the match positions within |document|, compute the snippet
// for the document.
// Note that |document| is UTF-8 and the offsets in |matches| are byte
@@ -54,10 +57,7 @@ class Snippet {
const MatchPositions& matches() const { return matches_; }
// Efficiently swaps the contents of this snippet with the other.
- void Swap(Snippet* other) {
- text_.swap(other->text_);
- matches_.swap(other->matches_);
- }
+ void Swap(Snippet* other);
private:
// The text of the snippet.
diff --git a/chrome/browser/importer/importer_bridge.cc b/chrome/browser/importer/importer_bridge.cc
index 079ebe3..3a95080 100644
--- a/chrome/browser/importer/importer_bridge.cc
+++ b/chrome/browser/importer/importer_bridge.cc
@@ -21,6 +21,10 @@
#include "chrome/profile_import/profile_import_thread.h"
#include "webkit/glue/password_form.h"
+ImporterBridge::ImporterBridge() { }
+
+ImporterBridge::~ImporterBridge() { }
+
InProcessImporterBridge::InProcessImporterBridge(ProfileWriter* writer,
ImporterHost* host)
: writer_(writer), host_(host) {
@@ -116,6 +120,8 @@ std::wstring InProcessImporterBridge::GetLocalizedString(int message_id) {
return l10n_util::GetString(message_id);
}
+InProcessImporterBridge::~InProcessImporterBridge() {}
+
ExternalProcessImporterBridge::ExternalProcessImporterBridge(
ProfileImportThread* profile_import_thread,
const DictionaryValue& localized_strings)
@@ -194,3 +200,5 @@ std::wstring ExternalProcessImporterBridge::GetLocalizedString(
localized_strings_->GetString(base::IntToString(message_id), &message);
return UTF16ToWideHack(message);
}
+
+ExternalProcessImporterBridge::~ExternalProcessImporterBridge() {}
diff --git a/chrome/browser/importer/importer_bridge.h b/chrome/browser/importer/importer_bridge.h
index 8b57ab0..191276b 100644
--- a/chrome/browser/importer/importer_bridge.h
+++ b/chrome/browser/importer/importer_bridge.h
@@ -24,7 +24,7 @@ class ImporterHost;
class ImporterBridge : public base::RefCountedThreadSafe<ImporterBridge> {
public:
- ImporterBridge() { }
+ ImporterBridge();
virtual void AddBookmarkEntries(
const std::vector<ProfileWriter::BookmarkEntry>& bookmarks,
@@ -72,7 +72,7 @@ class ImporterBridge : public base::RefCountedThreadSafe<ImporterBridge> {
// the abstraction here and assume import is in-process.
friend class Toolbar5Importer;
- virtual ~ImporterBridge() {}
+ virtual ~ImporterBridge();
DISALLOW_COPY_AND_ASSIGN(ImporterBridge);
};
@@ -110,7 +110,7 @@ class InProcessImporterBridge : public ImporterBridge {
virtual std::wstring GetLocalizedString(int message_id);
private:
- ~InProcessImporterBridge() {}
+ virtual ~InProcessImporterBridge();
ProfileWriter* const writer_; // weak
ImporterHost* const host_; // weak
@@ -156,7 +156,7 @@ class ExternalProcessImporterBridge : public ImporterBridge {
virtual std::wstring GetLocalizedString(int message_id);
private:
- ~ExternalProcessImporterBridge() {}
+ ~ExternalProcessImporterBridge();
// Call back to send data and messages across IPC.
ProfileImportThread* const profile_import_thread_;
diff --git a/chrome/browser/importer/importer_data_types.cc b/chrome/browser/importer/importer_data_types.cc
new file mode 100644
index 0000000..3b327a9
--- /dev/null
+++ b/chrome/browser/importer/importer_data_types.cc
@@ -0,0 +1,15 @@
+// Copyright (c) 2010 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/importer/importer_data_types.h"
+
+namespace importer {
+
+ProfileInfo::ProfileInfo() {
+}
+
+ProfileInfo::~ProfileInfo() {
+}
+
+} // namespace importer
diff --git a/chrome/browser/importer/importer_data_types.h b/chrome/browser/importer/importer_data_types.h
index e4af8fb..f937d40 100644
--- a/chrome/browser/importer/importer_data_types.h
+++ b/chrome/browser/importer/importer_data_types.h
@@ -46,6 +46,9 @@ enum ProfileType {
// Information about a profile needed by an importer to do import work.
struct ProfileInfo {
+ ProfileInfo();
+ ~ProfileInfo();
+
std::wstring description;
importer::ProfileType browser_type;
FilePath source_path;
diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer/profile_writer.cc
index 93d6248..57ddffc 100644
--- a/chrome/browser/importer/profile_writer.cc
+++ b/chrome/browser/importer/profile_writer.cc
@@ -19,6 +19,12 @@
using webkit_glue::PasswordForm;
+ProfileWriter::BookmarkEntry::BookmarkEntry() : in_toolbar(false) {}
+
+ProfileWriter::BookmarkEntry::~BookmarkEntry() {}
+
+ProfileWriter::ProfileWriter(Profile* profile) : profile_(profile) {}
+
bool ProfileWriter::BookmarkModelIsLoaded() const {
return profile_->GetBookmarkModel()->IsLoaded();
}
@@ -277,6 +283,8 @@ void ProfileWriter::ShowBookmarkBar() {
}
}
+ProfileWriter::~ProfileWriter() {}
+
std::wstring ProfileWriter::GenerateUniqueFolderName(
BookmarkModel* model,
const std::wstring& folder_name) {
diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/profile_writer.h
index a8571cb..5c0e25c 100644
--- a/chrome/browser/importer/profile_writer.h
+++ b/chrome/browser/importer/profile_writer.h
@@ -48,19 +48,13 @@ class ProfileWriter : public base::RefCountedThreadSafe<ProfileWriter> {
BOOKMARK_BAR_DISABLED = 1 << 2
};
- explicit ProfileWriter(Profile* profile) : profile_(profile) {}
-
- // These functions return true if the corresponding model has been loaded.
- // If the models haven't been loaded, the importer waits to run until they've
- // completed.
- virtual bool BookmarkModelIsLoaded() const;
- virtual bool TemplateURLModelIsLoaded() const;
-
// A bookmark entry.
// TODO(mirandac): remove instances of wstring from ProfileWriter
// (http://crbug.com/43460).
struct BookmarkEntry {
- BookmarkEntry() : in_toolbar(false) {}
+ BookmarkEntry();
+ ~BookmarkEntry();
+
bool in_toolbar;
GURL url;
std::vector<std::wstring> path;
@@ -68,6 +62,14 @@ class ProfileWriter : public base::RefCountedThreadSafe<ProfileWriter> {
base::Time creation_time;
};
+ explicit ProfileWriter(Profile* profile);
+
+ // These functions return true if the corresponding model has been loaded.
+ // If the models haven't been loaded, the importer waits to run until they've
+ // completed.
+ virtual bool BookmarkModelIsLoaded() const;
+ virtual bool TemplateURLModelIsLoaded() const;
+
// Helper methods for adding data to local stores.
virtual void AddPasswordForm(const webkit_glue::PasswordForm& form);
#if defined(OS_WIN)
@@ -115,7 +117,7 @@ class ProfileWriter : public base::RefCountedThreadSafe<ProfileWriter> {
protected:
friend class base::RefCountedThreadSafe<ProfileWriter>;
- virtual ~ProfileWriter() {}
+ virtual ~ProfileWriter();
private:
// Generates a unique folder name. If folder_name is not unique, then this
diff --git a/chrome/browser/profile_import_process_host.cc b/chrome/browser/profile_import_process_host.cc
index a5b84ee..7cc58b3 100644
--- a/chrome/browser/profile_import_process_host.cc
+++ b/chrome/browser/profile_import_process_host.cc
@@ -24,6 +24,9 @@ ProfileImportProcessHost::ProfileImportProcessHost(
thread_id_(thread_id) {
}
+ProfileImportProcessHost::~ProfileImportProcessHost() {
+}
+
bool ProfileImportProcessHost::StartProfileImportProcess(
const importer::ProfileInfo& profile_info, int items,
bool import_to_bookmark_bar) {
@@ -132,6 +135,20 @@ void ProfileImportProcessHost::OnProcessCrashed() {
&ImportProcessClient::OnProcessCrashed));
}
+bool ProfileImportProcessHost::CanShutdown() {
+ return true;
+}
+
+URLRequestContext* ProfileImportProcessHost::GetRequestContext(
+ uint32 request_id,
+ const ViewHostMsg_Resource_Request& request_data) {
+ return NULL;
+}
+
+ProfileImportProcessHost::ImportProcessClient::ImportProcessClient() {}
+
+ProfileImportProcessHost::ImportProcessClient::~ImportProcessClient() {}
+
void ProfileImportProcessHost::ImportProcessClient::OnMessageReceived(
const IPC::Message& message) {
IPC_BEGIN_MESSAGE_MAP(ProfileImportProcessHost, message)
diff --git a/chrome/browser/profile_import_process_host.h b/chrome/browser/profile_import_process_host.h
index 8b0d9a3..22e0026 100644
--- a/chrome/browser/profile_import_process_host.h
+++ b/chrome/browser/profile_import_process_host.h
@@ -35,7 +35,7 @@ class ProfileImportProcessHost : public BrowserChildProcessHost {
class ImportProcessClient :
public base::RefCountedThreadSafe<ImportProcessClient> {
public:
- ImportProcessClient() {}
+ ImportProcessClient();
// These methods are used by the ProfileImportProcessHost to pass messages
// received from the external process back to the ImportProcessClient in
@@ -79,7 +79,7 @@ class ProfileImportProcessHost : public BrowserChildProcessHost {
protected:
friend class base::RefCountedThreadSafe<ImportProcessClient>;
- virtual ~ImportProcessClient() {}
+ virtual ~ImportProcessClient();
private:
friend class ProfileImportProcessHost;
@@ -98,6 +98,7 @@ class ProfileImportProcessHost : public BrowserChildProcessHost {
ProfileImportProcessHost(ResourceDispatcherHost* resource_dispatcher,
ImportProcessClient* import_process_client,
ChromeThread::ID thread_id);
+ virtual ~ProfileImportProcessHost();
// |profile_info|, |items|, and |import_to_bookmark_bar| are all needed by
// the external importer process.
@@ -126,12 +127,10 @@ class ProfileImportProcessHost : public BrowserChildProcessHost {
// Overridden from BrowserChildProcessHost:
virtual void OnProcessCrashed();
- virtual bool CanShutdown() { return true; }
+ virtual bool CanShutdown();
virtual URLRequestContext* GetRequestContext(
uint32 request_id,
- const ViewHostMsg_Resource_Request& request_data) {
- return NULL;
- }
+ const ViewHostMsg_Resource_Request& request_data);
// Receives messages to be passed back to the importer host.
scoped_refptr<ImportProcessClient> import_process_client_;
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi
index 5db948f..90bef1d 100644
--- a/chrome/chrome_browser.gypi
+++ b/chrome/chrome_browser.gypi
@@ -1987,6 +1987,7 @@
'browser/importer/importer.h',
'browser/importer/importer_bridge.cc',
'browser/importer/importer_bridge.h',
+ 'browser/importer/importer_data_types.cc',
'browser/importer/importer_data_types.h',
'browser/importer/importer_list.cc',
'browser/importer/importer_list.h',
diff --git a/chrome/common/net/gaia/gaia_authenticator.cc b/chrome/common/net/gaia/gaia_authenticator.cc
index f544e94..7a7322c 100644
--- a/chrome/common/net/gaia/gaia_authenticator.cc
+++ b/chrome/common/net/gaia/gaia_authenticator.cc
@@ -26,6 +26,14 @@ static const char kGaiaV1IssueAuthTokenPath[] = "/accounts/IssueAuthToken";
static const char kGetUserInfoPath[] = "/accounts/GetUserInfo";
+GaiaAuthenticator::AuthResults::AuthResults() : auth_error(None) {}
+
+GaiaAuthenticator::AuthResults::~AuthResults() {}
+
+GaiaAuthenticator::AuthParams::AuthParams() {}
+
+GaiaAuthenticator::AuthParams::~AuthParams() {}
+
// Sole constructor with initializers for all fields.
GaiaAuthenticator::GaiaAuthenticator(const string& user_agent,
const string& service_id,
diff --git a/chrome/common/net/gaia/gaia_authenticator.h b/chrome/common/net/gaia/gaia_authenticator.h
index 696f403..789863e 100644
--- a/chrome/common/net/gaia/gaia_authenticator.h
+++ b/chrome/common/net/gaia/gaia_authenticator.h
@@ -131,6 +131,9 @@ class GaiaAuthenticator {
void SetAuthToken(const std::string& auth_token);
struct AuthResults {
+ AuthResults();
+ ~AuthResults();
+
std::string email;
std::string password;
@@ -147,13 +150,14 @@ class GaiaAuthenticator {
std::string auth_error_url;
std::string captcha_token;
std::string captcha_url;
-
- AuthResults() : auth_error(None) {}
};
protected:
struct AuthParams {
+ AuthParams();
+ ~AuthParams();
+
GaiaAuthenticator* authenticator;
uint32 request_id;
std::string email;
diff --git a/chrome/common/net/url_fetcher_protect.cc b/chrome/common/net/url_fetcher_protect.cc
index 05c8e2e2..f078fd4 100644
--- a/chrome/common/net/url_fetcher_protect.cc
+++ b/chrome/common/net/url_fetcher_protect.cc
@@ -52,6 +52,8 @@ URLFetcherProtectEntry::URLFetcherProtectEntry(int sliding_window_period,
ResetBackoff();
}
+URLFetcherProtectEntry::~URLFetcherProtectEntry() {}
+
int64 URLFetcherProtectEntry::UpdateBackoff(EventType event_type) {
// request may be sent in different threads
AutoLock lock(lock_);
@@ -174,3 +176,5 @@ URLFetcherProtectEntry* URLFetcherProtectManager::Register(
services_[id] = entry;
return entry;
}
+
+URLFetcherProtectManager::URLFetcherProtectManager() {}
diff --git a/chrome/common/net/url_fetcher_protect.h b/chrome/common/net/url_fetcher_protect.h
index 980353c..6372640 100644
--- a/chrome/common/net/url_fetcher_protect.h
+++ b/chrome/common/net/url_fetcher_protect.h
@@ -48,7 +48,7 @@ class URLFetcherProtectEntry {
int maximum_timeout);
- virtual ~URLFetcherProtectEntry() { }
+ virtual ~URLFetcherProtectEntry();
// When a connection event happens, log it to the queue, and recalculate
// the timeout period. It returns the backoff time, in milliseconds, that
@@ -138,7 +138,7 @@ class URLFetcherProtectManager {
URLFetcherProtectEntry* entry);
private:
- URLFetcherProtectManager() { }
+ URLFetcherProtectManager();
typedef std::map<const std::string, URLFetcherProtectEntry*> ProtectService;
diff --git a/chrome/common/net/url_request_context_getter.cc b/chrome/common/net/url_request_context_getter.cc
index e58b794..c53f782 100644
--- a/chrome/common/net/url_request_context_getter.cc
+++ b/chrome/common/net/url_request_context_getter.cc
@@ -10,6 +10,10 @@ net::CookieStore* URLRequestContextGetter::GetCookieStore() {
return GetURLRequestContext()->cookie_store();
}
+URLRequestContextGetter::URLRequestContextGetter() {}
+
+URLRequestContextGetter::~URLRequestContextGetter() {}
+
void URLRequestContextGetter::OnDestruct() {
scoped_refptr<base::MessageLoopProxy> io_message_loop_proxy =
GetIOMessageLoopProxy();
diff --git a/chrome/common/net/url_request_context_getter.h b/chrome/common/net/url_request_context_getter.h
index 34aa668..89b28b5 100644
--- a/chrome/common/net/url_request_context_getter.h
+++ b/chrome/common/net/url_request_context_getter.h
@@ -39,7 +39,9 @@ class URLRequestContextGetter
friend class DeleteTask<URLRequestContextGetter>;
friend struct URLRequestContextGetterTraits;
- virtual ~URLRequestContextGetter() {}
+ URLRequestContextGetter();
+ virtual ~URLRequestContextGetter();
+
private:
// OnDestruct is meant to ensure deletion on the thread on which the request
// IO happens.
diff --git a/chrome/common/web_resource/web_resource_unpacker.cc b/chrome/common/web_resource/web_resource_unpacker.cc
index bbb14cf..e93ea36 100644
--- a/chrome/common/web_resource/web_resource_unpacker.cc
+++ b/chrome/common/web_resource/web_resource_unpacker.cc
@@ -13,6 +13,13 @@ const char* WebResourceUnpacker::kInvalidDataTypeError =
const char* WebResourceUnpacker::kUnexpectedJSONFormatError =
"Data from web resource server does not have expected format.";
+WebResourceUnpacker::WebResourceUnpacker(const std::string &resource_data)
+ : resource_data_(resource_data) {
+}
+
+WebResourceUnpacker::~WebResourceUnpacker() {
+}
+
// TODO(mrc): Right now, this reads JSON data from the experimental popgadget
// server. Change so the format is based on a template, once we have
// decided on final server format.
diff --git a/chrome/common/web_resource/web_resource_unpacker.h b/chrome/common/web_resource/web_resource_unpacker.h
index c49f2fa..0728c2c 100644
--- a/chrome/common/web_resource/web_resource_unpacker.h
+++ b/chrome/common/web_resource/web_resource_unpacker.h
@@ -25,8 +25,8 @@ class WebResourceUnpacker {
static const char* kInvalidDataTypeError;
static const char* kUnexpectedJSONFormatError;
- explicit WebResourceUnpacker(const std::string &resource_data)
- : resource_data_(resource_data) {}
+ explicit WebResourceUnpacker(const std::string &resource_data);
+ ~WebResourceUnpacker();
// This does the actual parsing. In case of an error, error_message_
// is set to an appropriate value.
diff --git a/gfx/gtk_native_view_id_manager.cc b/gfx/gtk_native_view_id_manager.cc
index 91407283a..0cb96df 100644
--- a/gfx/gtk_native_view_id_manager.cc
+++ b/gfx/gtk_native_view_id_manager.cc
@@ -38,6 +38,9 @@ static void OnDestroy(GtkObject* obj, void* arg) {
GtkNativeViewManager::GtkNativeViewManager() {
}
+GtkNativeViewManager::~GtkNativeViewManager() {
+}
+
gfx::NativeViewId GtkNativeViewManager::GetIdForWidget(gfx::NativeView widget) {
// This is just for unit tests:
if (!widget)
diff --git a/gfx/gtk_native_view_id_manager.h b/gfx/gtk_native_view_id_manager.h
index b53d494..0a90e2f 100644
--- a/gfx/gtk_native_view_id_manager.h
+++ b/gfx/gtk_native_view_id_manager.h
@@ -69,6 +69,7 @@ class GtkNativeViewManager {
private:
// This object is a singleton:
GtkNativeViewManager();
+ ~GtkNativeViewManager();
friend struct DefaultSingletonTraits<GtkNativeViewManager>;
struct NativeViewInfo {
diff --git a/gfx/platform_font_gtk.cc b/gfx/platform_font_gtk.cc
index 6458a48..5ed7793 100644
--- a/gfx/platform_font_gtk.cc
+++ b/gfx/platform_font_gtk.cc
@@ -279,6 +279,8 @@ PlatformFontGtk::PlatformFontGtk(SkTypeface* typeface,
InitWithTypefaceNameSizeAndStyle(typeface, name, size, style);
}
+PlatformFontGtk::~PlatformFontGtk() {}
+
void PlatformFontGtk::InitWithNameAndSize(const std::wstring& font_name,
int font_size) {
DCHECK_GT(font_size, 0);
diff --git a/gfx/platform_font_gtk.h b/gfx/platform_font_gtk.h
index 3c507fb..bd26d8f 100644
--- a/gfx/platform_font_gtk.h
+++ b/gfx/platform_font_gtk.h
@@ -53,7 +53,7 @@ class PlatformFontGtk : public PlatformFont {
const std::wstring& name,
int size,
int style);
- virtual ~PlatformFontGtk() {}
+ virtual ~PlatformFontGtk();
// Initialize this object.
void InitWithNameAndSize(const std::wstring& font_name, int font_size);
diff --git a/ipc/ipc_channel_proxy.cc b/ipc/ipc_channel_proxy.cc
index 903a71d..9785216 100644
--- a/ipc/ipc_channel_proxy.cc
+++ b/ipc/ipc_channel_proxy.cc
@@ -36,6 +36,8 @@ class SendTask : public Task {
//------------------------------------------------------------------------------
+ChannelProxy::MessageFilter::MessageFilter() {}
+
ChannelProxy::MessageFilter::~MessageFilter() {}
void ChannelProxy::MessageFilter::OnFilterAdded(Channel* channel) {}
diff --git a/ipc/ipc_channel_proxy.h b/ipc/ipc_channel_proxy.h
index 19aea28..1ce9986 100644
--- a/ipc/ipc_channel_proxy.h
+++ b/ipc/ipc_channel_proxy.h
@@ -55,6 +55,7 @@ class ChannelProxy : public Message::Sender {
class MessageFilter
: public base::RefCountedThreadSafe<MessageFilter, MessageFilterTraits> {
public:
+ MessageFilter();
virtual ~MessageFilter();
// Called on the background thread to provide the filter with access to the
diff --git a/ipc/ipc_message_utils.cc b/ipc/ipc_message_utils.cc
index 5c599ab..9664810 100644
--- a/ipc/ipc_message_utils.cc
+++ b/ipc/ipc_message_utils.cc
@@ -401,4 +401,36 @@ void ParamTraits<IPC::ChannelHandle>::Log(const param_type& p,
l->append(")");
}
+LogData::LogData() {
+}
+
+LogData::~LogData() {
+}
+
+void ParamTraits<LogData>::Write(Message* m, const param_type& p) {
+ WriteParam(m, p.channel);
+ WriteParam(m, p.routing_id);
+ WriteParam(m, static_cast<int>(p.type));
+ WriteParam(m, p.flags);
+ WriteParam(m, p.sent);
+ WriteParam(m, p.receive);
+ WriteParam(m, p.dispatch);
+ WriteParam(m, p.params);
+}
+
+bool ParamTraits<LogData>::Read(const Message* m, void** iter, param_type* r) {
+ int type;
+ bool result =
+ ReadParam(m, iter, &r->channel) &&
+ ReadParam(m, iter, &r->routing_id) &&
+ ReadParam(m, iter, &type) &&
+ ReadParam(m, iter, &r->flags) &&
+ ReadParam(m, iter, &r->sent) &&
+ ReadParam(m, iter, &r->receive) &&
+ ReadParam(m, iter, &r->dispatch) &&
+ ReadParam(m, iter, &r->params);
+ r->type = static_cast<uint16>(type);
+ return result;
+}
+
} // namespace IPC
diff --git a/ipc/ipc_message_utils.h b/ipc/ipc_message_utils.h
index dc1d35f..0e22c6b 100644
--- a/ipc/ipc_message_utils.h
+++ b/ipc/ipc_message_utils.h
@@ -730,6 +730,9 @@ struct ParamTraits<XFORM> {
#endif // defined(OS_WIN)
struct LogData {
+ LogData();
+ ~LogData();
+
std::string channel;
int32 routing_id;
uint32 type; // "User-defined" message type, from ipc_message.h.
@@ -746,30 +749,8 @@ struct LogData {
template <>
struct ParamTraits<LogData> {
typedef LogData param_type;
- static void Write(Message* m, const param_type& p) {
- WriteParam(m, p.channel);
- WriteParam(m, p.routing_id);
- WriteParam(m, static_cast<int>(p.type));
- WriteParam(m, p.flags);
- WriteParam(m, p.sent);
- WriteParam(m, p.receive);
- WriteParam(m, p.dispatch);
- WriteParam(m, p.params);
- }
- static bool Read(const Message* m, void** iter, param_type* r) {
- int type;
- bool result =
- ReadParam(m, iter, &r->channel) &&
- ReadParam(m, iter, &r->routing_id) &&
- ReadParam(m, iter, &type) &&
- ReadParam(m, iter, &r->flags) &&
- ReadParam(m, iter, &r->sent) &&
- ReadParam(m, iter, &r->receive) &&
- ReadParam(m, iter, &r->dispatch) &&
- ReadParam(m, iter, &r->params);
- r->type = static_cast<uint16>(type);
- return result;
- }
+ static void Write(Message* m, const param_type& p);
+ static bool Read(const Message* m, void** iter, param_type* r);
static void Log(const param_type& p, std::string* l) {
// Doesn't make sense to implement this!
}
diff --git a/net/base/ssl_client_auth_cache.cc b/net/base/ssl_client_auth_cache.cc
index b0deec9..d2f47cc 100644
--- a/net/base/ssl_client_auth_cache.cc
+++ b/net/base/ssl_client_auth_cache.cc
@@ -6,6 +6,10 @@
namespace net {
+SSLClientAuthCache::SSLClientAuthCache() {}
+
+SSLClientAuthCache::~SSLClientAuthCache() {}
+
X509Certificate* SSLClientAuthCache::Lookup(const std::string& server) {
AuthCacheMap::iterator iter = cache_.find(server);
return (iter == cache_.end()) ? NULL : iter->second;
diff --git a/net/base/ssl_client_auth_cache.h b/net/base/ssl_client_auth_cache.h
index 3c8ed99..023480b 100644
--- a/net/base/ssl_client_auth_cache.h
+++ b/net/base/ssl_client_auth_cache.h
@@ -23,8 +23,8 @@ namespace net {
// code to a template class.
class SSLClientAuthCache {
public:
- SSLClientAuthCache() {}
- ~SSLClientAuthCache() {}
+ SSLClientAuthCache();
+ ~SSLClientAuthCache();
// Check if we have a client certificate for SSL server at |server|.
// Returns the client certificate (if found) or NULL (if not found).
diff --git a/net/disk_cache/in_flight_backend_io.cc b/net/disk_cache/in_flight_backend_io.cc
index e400ac3..fe53829 100644
--- a/net/disk_cache/in_flight_backend_io.cc
+++ b/net/disk_cache/in_flight_backend_io.cc
@@ -181,6 +181,8 @@ void BackendIO::ReadyForSparseIO(EntryImpl* entry) {
entry_ = entry;
}
+BackendIO::~BackendIO() {}
+
// Runs on the background thread.
void BackendIO::ExecuteBackendOperation() {
switch (operation_) {
diff --git a/net/disk_cache/in_flight_backend_io.h b/net/disk_cache/in_flight_backend_io.h
index 889fb20..5eba131 100644
--- a/net/disk_cache/in_flight_backend_io.h
+++ b/net/disk_cache/in_flight_backend_io.h
@@ -104,7 +104,7 @@ class BackendIO : public BackgroundIO {
OP_IS_READY
};
- ~BackendIO() {}
+ ~BackendIO();
void ExecuteBackendOperation();
void ExecuteEntryOperation();
diff --git a/net/ftp/ftp_auth_cache.cc b/net/ftp/ftp_auth_cache.cc
index caa2b8a..a67c2e0 100644
--- a/net/ftp/ftp_auth_cache.cc
+++ b/net/ftp/ftp_auth_cache.cc
@@ -12,6 +12,20 @@ namespace net {
// static
const size_t FtpAuthCache::kMaxEntries = 10;
+FtpAuthCache::Entry::Entry(const GURL& origin,
+ const string16& username,
+ const string16& password)
+ : origin(origin),
+ username(username),
+ password(password) {
+}
+
+FtpAuthCache::Entry::~Entry() {}
+
+FtpAuthCache::FtpAuthCache() {}
+
+FtpAuthCache::~FtpAuthCache() {}
+
FtpAuthCache::Entry* FtpAuthCache::Lookup(const GURL& origin) {
for (EntryList::iterator it = entries_.begin(); it != entries_.end(); ++it) {
if (it->origin == origin)
diff --git a/net/ftp/ftp_auth_cache.h b/net/ftp/ftp_auth_cache.h
index 36156da..f935fe9 100644
--- a/net/ftp/ftp_auth_cache.h
+++ b/net/ftp/ftp_auth_cache.h
@@ -28,19 +28,16 @@ class FtpAuthCache {
struct Entry {
Entry(const GURL& origin, const string16& username,
- const string16& password)
- : origin(origin),
- username(username),
- password(password) {
- }
+ const string16& password);
+ ~Entry();
const GURL origin;
string16 username;
string16 password;
};
- FtpAuthCache() {}
- ~FtpAuthCache() {}
+ FtpAuthCache();
+ ~FtpAuthCache();
// Return Entry corresponding to given |origin| or NULL if not found.
Entry* Lookup(const GURL& origin);
diff --git a/net/http/http_auth_cache.cc b/net/http/http_auth_cache.cc
index 7423115..cc80861 100644
--- a/net/http/http_auth_cache.cc
+++ b/net/http/http_auth_cache.cc
@@ -59,6 +59,12 @@ struct IsEnclosedBy {
namespace net {
+HttpAuthCache::HttpAuthCache() {
+}
+
+HttpAuthCache::~HttpAuthCache() {
+}
+
// Performance: O(n), where n is the number of realm entries.
HttpAuthCache::Entry* HttpAuthCache::Lookup(const GURL& origin,
const std::string& realm,
@@ -134,6 +140,9 @@ HttpAuthCache::Entry* HttpAuthCache::Add(const GURL& origin,
return entry;
}
+HttpAuthCache::Entry::~Entry() {
+}
+
HttpAuthCache::Entry::Entry()
: nonce_count_(0) {
}
diff --git a/net/http/http_auth_cache.h b/net/http/http_auth_cache.h
index 764a563..707288c 100644
--- a/net/http/http_auth_cache.h
+++ b/net/http/http_auth_cache.h
@@ -28,6 +28,9 @@ class HttpAuthCache {
public:
class Entry;
+ HttpAuthCache();
+ ~HttpAuthCache();
+
// Find the realm entry on server |origin| for realm |realm| and
// scheme |scheme|.
// |origin| - the {scheme, host, port} of the server.
@@ -140,6 +143,8 @@ class HttpAuthCache::Entry {
void UpdateStaleChallenge(const std::string& auth_challenge);
+ ~Entry();
+
private:
friend class HttpAuthCache;
FRIEND_TEST_ALL_PREFIXES(HttpAuthCacheTest, AddPath);
diff --git a/net/proxy/proxy_config_service_common_unittest.cc b/net/proxy/proxy_config_service_common_unittest.cc
index b233bb6..429abc5 100644
--- a/net/proxy/proxy_config_service_common_unittest.cc
+++ b/net/proxy/proxy_config_service_common_unittest.cc
@@ -49,6 +49,26 @@ std::string FlattenProxyBypass(const ProxyBypassRules& bypass_rules) {
} // namespace
+ProxyRulesExpectation::ProxyRulesExpectation(
+ ProxyConfig::ProxyRules::Type type,
+ const char* single_proxy,
+ const char* proxy_for_http,
+ const char* proxy_for_https,
+ const char* proxy_for_ftp,
+ const char* fallback_proxy,
+ const char* flattened_bypass_rules,
+ bool reverse_bypass)
+ : type(type),
+ single_proxy(single_proxy),
+ proxy_for_http(proxy_for_http),
+ proxy_for_https(proxy_for_https),
+ proxy_for_ftp(proxy_for_ftp),
+ fallback_proxy(fallback_proxy),
+ flattened_bypass_rules(flattened_bypass_rules),
+ reverse_bypass(reverse_bypass) {
+}
+
+
::testing::AssertionResult ProxyRulesExpectation::Matches(
const ProxyConfig::ProxyRules& rules) const {
::testing::AssertionResult failure_details = ::testing::AssertionFailure();
diff --git a/net/proxy/proxy_config_service_common_unittest.h b/net/proxy/proxy_config_service_common_unittest.h
index b64cd6b..724e1de 100644
--- a/net/proxy/proxy_config_service_common_unittest.h
+++ b/net/proxy/proxy_config_service_common_unittest.h
@@ -24,17 +24,7 @@ struct ProxyRulesExpectation {
const char* proxy_for_ftp,
const char* fallback_proxy,
const char* flattened_bypass_rules,
- bool reverse_bypass)
- : type(type),
- single_proxy(single_proxy),
- proxy_for_http(proxy_for_http),
- proxy_for_https(proxy_for_https),
- proxy_for_ftp(proxy_for_ftp),
- fallback_proxy(fallback_proxy),
- flattened_bypass_rules(flattened_bypass_rules),
- reverse_bypass(reverse_bypass) {
- }
-
+ bool reverse_bypass);
// Call this within an EXPECT_TRUE(), to assert that |rules| matches
// our expected values |*this|.
diff --git a/net/proxy/proxy_list.cc b/net/proxy/proxy_list.cc
index b119b13..236e707 100644
--- a/net/proxy/proxy_list.cc
+++ b/net/proxy/proxy_list.cc
@@ -7,12 +7,19 @@
#include "base/logging.h"
#include "base/string_tokenizer.h"
#include "base/time.h"
+#include "net/proxy/proxy_server.h"
using base::TimeDelta;
using base::TimeTicks;
namespace net {
+ProxyList::ProxyList() {
+}
+
+ProxyList::~ProxyList() {
+}
+
void ProxyList::Set(const std::string& proxy_uri_list) {
proxies_.clear();
StringTokenizer str_tok(proxy_uri_list, ";");
diff --git a/net/proxy/proxy_list.h b/net/proxy/proxy_list.h
index 26265d0..e5c41c6 100644
--- a/net/proxy/proxy_list.h
+++ b/net/proxy/proxy_list.h
@@ -10,15 +10,19 @@
#include <vector>
#include "net/proxy/proxy_retry_info.h"
-#include "net/proxy/proxy_server.h"
namespace net {
+class ProxyServer;
+
// This class is used to hold a list of proxies returned by GetProxyForUrl or
// manually configured. It handles proxy fallback if multiple servers are
// specified.
class ProxyList {
public:
+ ProxyList();
+ ~ProxyList();
+
// Initializes the proxy list to a string containing one or more proxy servers
// delimited by a semicolon.
void Set(const std::string& proxy_uri_list);
diff --git a/net/proxy/proxy_list_unittest.cc b/net/proxy/proxy_list_unittest.cc
index 397bb7c..04d9268 100644
--- a/net/proxy/proxy_list_unittest.cc
+++ b/net/proxy/proxy_list_unittest.cc
@@ -3,6 +3,8 @@
// found in the LICENSE file.
#include "net/proxy/proxy_list.h"
+
+#include "net/proxy/proxy_server.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace net {
diff --git a/net/proxy/proxy_service.cc b/net/proxy/proxy_service.cc
index ee4a403..dfdacde 100644
--- a/net/proxy/proxy_service.cc
+++ b/net/proxy/proxy_service.cc
@@ -877,6 +877,8 @@ int SyncProxyServiceHelper::ReconsiderProxyAfterError(
return result_;
}
+SyncProxyServiceHelper::~SyncProxyServiceHelper() {}
+
void SyncProxyServiceHelper::StartAsyncResolve(const GURL& url,
const BoundNetLog& net_log) {
result_ = proxy_service_->ResolveProxy(
diff --git a/net/proxy/proxy_service.h b/net/proxy/proxy_service.h
index d8d2e6c..da0013f 100644
--- a/net/proxy/proxy_service.h
+++ b/net/proxy/proxy_service.h
@@ -217,7 +217,7 @@ class ProxyService : public base::RefCountedThreadSafe<ProxyService>,
STATE_READY,
};
- ~ProxyService();
+ virtual ~ProxyService();
// Resets all the variables associated with the current proxy configuration,
// and rewinds the current state to |STATE_NONE|. Returns the previous value
@@ -341,7 +341,7 @@ class SyncProxyServiceHelper
private:
friend class base::RefCountedThreadSafe<SyncProxyServiceHelper>;
- ~SyncProxyServiceHelper() {}
+ virtual ~SyncProxyServiceHelper();
void StartAsyncResolve(const GURL& url, const BoundNetLog& net_log);
void StartAsyncReconsider(const GURL& url, const BoundNetLog& net_log);
diff --git a/net/socket/client_socket_pool.cc b/net/socket/client_socket_pool.cc
index 4cefe8d..a54109e 100644
--- a/net/socket/client_socket_pool.cc
+++ b/net/socket/client_socket_pool.cc
@@ -26,4 +26,8 @@ void ClientSocketPool::set_unused_idle_socket_timeout(int timeout) {
g_unused_idle_socket_timeout = timeout;
}
+ClientSocketPool::ClientSocketPool() {}
+
+ClientSocketPool::~ClientSocketPool() {}
+
} // namespace net
diff --git a/net/socket/client_socket_pool.h b/net/socket/client_socket_pool.h
index c727345..ad5f1ae 100644
--- a/net/socket/client_socket_pool.h
+++ b/net/socket/client_socket_pool.h
@@ -124,8 +124,8 @@ class ClientSocketPool {
static void set_unused_idle_socket_timeout(int timeout);
protected:
- ClientSocketPool() {}
- virtual ~ClientSocketPool() {}
+ ClientSocketPool();
+ virtual ~ClientSocketPool();
// Return the connection timeout for this pool.
virtual base::TimeDelta ConnectionTimeout() const = 0;
diff --git a/net/socket/client_socket_pool_histograms.h b/net/socket/client_socket_pool_histograms.h
index 74be341..9c12e5d 100644
--- a/net/socket/client_socket_pool_histograms.h
+++ b/net/socket/client_socket_pool_histograms.h
@@ -8,8 +8,10 @@
#include <string>
-#include "base/histogram.h"
#include "base/ref_counted.h"
+#include "base/time.h"
+
+class Histogram;
namespace net {
diff --git a/net/socket/socket_test_util.cc b/net/socket/socket_test_util.cc
index 0c181b6..32623de 100644
--- a/net/socket/socket_test_util.cc
+++ b/net/socket/socket_test_util.cc
@@ -989,6 +989,18 @@ SSLClientSocket* DeterministicMockClientSocketFactory::CreateSSLClientSocket(
return socket;
}
+TestSocketRequest::TestSocketRequest(
+ std::vector<TestSocketRequest*>* request_order,
+ size_t* completion_count)
+ : request_order_(request_order),
+ completion_count_(completion_count) {
+ DCHECK(request_order);
+ DCHECK(completion_count);
+}
+
+TestSocketRequest::~TestSocketRequest() {
+}
+
int TestSocketRequest::WaitForResult() {
return callback_.WaitForResult();
}
diff --git a/net/socket/socket_test_util.h b/net/socket/socket_test_util.h
index 7f83a70..c76dfae 100644
--- a/net/socket/socket_test_util.h
+++ b/net/socket/socket_test_util.h
@@ -683,12 +683,8 @@ class TestSocketRequest : public CallbackRunner< Tuple1<int> > {
public:
TestSocketRequest(
std::vector<TestSocketRequest*>* request_order,
- size_t* completion_count)
- : request_order_(request_order),
- completion_count_(completion_count) {
- DCHECK(request_order);
- DCHECK(completion_count);
- }
+ size_t* completion_count);
+ virtual ~TestSocketRequest();
ClientSocketHandle* handle() { return &handle_; }
diff --git a/net/socket/ssl_client_socket_pool.cc b/net/socket/ssl_client_socket_pool.cc
index c065658..6069f4d 100644
--- a/net/socket/ssl_client_socket_pool.cc
+++ b/net/socket/ssl_client_socket_pool.cc
@@ -4,6 +4,7 @@
#include "net/socket/ssl_client_socket_pool.h"
+#include "base/histogram.h"
#include "base/values.h"
#include "net/base/net_errors.h"
#include "net/base/ssl_cert_request_info.h"
diff --git a/net/socket/tcp_client_socket_pool.cc b/net/socket/tcp_client_socket_pool.cc
index 89b000e..bea4dff 100644
--- a/net/socket/tcp_client_socket_pool.cc
+++ b/net/socket/tcp_client_socket_pool.cc
@@ -5,6 +5,7 @@
#include "net/socket/tcp_client_socket_pool.h"
#include "base/compiler_specific.h"
+#include "base/histogram.h"
#include "base/logging.h"
#include "base/message_loop.h"
#include "base/string_util.h"
diff --git a/printing/print_settings.cc b/printing/print_settings.cc
index 98a9ebf..0950d63 100644
--- a/printing/print_settings.cc
+++ b/printing/print_settings.cc
@@ -31,6 +31,9 @@ PrintSettings::PrintSettings()
landscape_(false) {
}
+PrintSettings::~PrintSettings() {
+}
+
void PrintSettings::Clear() {
ranges.clear();
min_shrink = 1.25;
diff --git a/printing/print_settings.h b/printing/print_settings.h
index bdea485..8cde1ca 100644
--- a/printing/print_settings.h
+++ b/printing/print_settings.h
@@ -25,6 +25,7 @@ namespace printing {
class PrintSettings {
public:
PrintSettings();
+ ~PrintSettings();
// Reinitialize the settings to the default values.
void Clear();
diff --git a/printing/printed_document.cc b/printing/printed_document.cc
index 560f95b..f5989f6 100644
--- a/printing/printed_document.cc
+++ b/printing/printed_document.cc
@@ -303,6 +303,9 @@ PrintedDocument::Mutable::Mutable(PrintedPagesSource* source)
shrink_factor(0) {
}
+PrintedDocument::Mutable::~Mutable() {
+}
+
PrintedDocument::Immutable::Immutable(const PrintSettings& settings,
PrintedPagesSource* source,
int cookie)
@@ -327,4 +330,7 @@ PrintedDocument::Immutable::Immutable(const PrintSettings& settings,
#endif // OS_WIN
}
+PrintedDocument::Immutable::~Immutable() {
+}
+
} // namespace printing
diff --git a/printing/printed_document.h b/printing/printed_document.h
index e4a3280..dfab7a5 100644
--- a/printing/printed_document.h
+++ b/printing/printed_document.h
@@ -111,7 +111,7 @@ class PrintedDocument : public base::RefCountedThreadSafe<PrintedDocument> {
private:
friend class base::RefCountedThreadSafe<PrintedDocument>;
- ~PrintedDocument();
+ virtual ~PrintedDocument();
// Array of data for each print previewed page.
typedef std::map<int, scoped_refptr<PrintedPage> > PrintedPages;
@@ -120,6 +120,7 @@ class PrintedDocument : public base::RefCountedThreadSafe<PrintedDocument> {
// lock held.
struct Mutable {
explicit Mutable(PrintedPagesSource* source);
+ ~Mutable();
// Source that generates the PrintedPage's (i.e. a TabContents). It will be
// set back to NULL if the source is deleted before this object.
@@ -146,6 +147,7 @@ class PrintedDocument : public base::RefCountedThreadSafe<PrintedDocument> {
struct Immutable {
Immutable(const PrintSettings& settings, PrintedPagesSource* source,
int cookie);
+ ~Immutable();
// Print settings used to generate this document. Immutable.
PrintSettings settings_;
diff --git a/skia/ext/SkFontHost_fontconfig_direct.cpp b/skia/ext/SkFontHost_fontconfig_direct.cpp
index 47b89653..adaddf9 100644
--- a/skia/ext/SkFontHost_fontconfig_direct.cpp
+++ b/skia/ext/SkFontHost_fontconfig_direct.cpp
@@ -106,6 +106,9 @@ FontConfigDirect::FontConfigDirect()
FcInit();
}
+FontConfigDirect::~FontConfigDirect() {
+}
+
// -----------------------------------------------------------------------------
// Normally we only return exactly the font asked for. In last-resort
// cases, the request either doesn't specify a font or is one of the
diff --git a/skia/ext/SkFontHost_fontconfig_direct.h b/skia/ext/SkFontHost_fontconfig_direct.h
index e338633..c4ffb6c 100644
--- a/skia/ext/SkFontHost_fontconfig_direct.h
+++ b/skia/ext/SkFontHost_fontconfig_direct.h
@@ -26,23 +26,24 @@
#include "SkFontHost_fontconfig_impl.h"
class FontConfigDirect : public FontConfigInterface {
- public:
- FontConfigDirect();
+ public:
+ FontConfigDirect();
+ virtual ~FontConfigDirect();
- // FontConfigInterface implementation. Thread safe.
- virtual bool Match(std::string* result_family, unsigned* result_filefaceid,
- bool filefaceid_valid, unsigned filefaceid,
- const std::string& family,
- const void* characters, size_t characters_bytes,
- bool* is_bold, bool* is_italic);
- virtual int Open(unsigned filefaceid);
+ // FontConfigInterface implementation. Thread safe.
+ virtual bool Match(std::string* result_family, unsigned* result_filefaceid,
+ bool filefaceid_valid, unsigned filefaceid,
+ const std::string& family,
+ const void* characters, size_t characters_bytes,
+ bool* is_bold, bool* is_italic);
+ virtual int Open(unsigned filefaceid);
- private:
- SkMutex mutex_;
- // fileid stored in two maps below are unique per font file.
- std::map<unsigned, std::string> fileid_to_filename_;
- std::map<std::string, unsigned> filename_to_fileid_;
- unsigned next_file_id_;
+ private:
+ SkMutex mutex_;
+ // fileid stored in two maps below are unique per font file.
+ std::map<unsigned, std::string> fileid_to_filename_;
+ std::map<std::string, unsigned> filename_to_fileid_;
+ unsigned next_file_id_;
};
#endif // FontConfigDirect_DEFINED
diff --git a/webkit/appcache/appcache_backend_impl.cc b/webkit/appcache/appcache_backend_impl.cc
index e077a33..a9349fa 100644
--- a/webkit/appcache/appcache_backend_impl.cc
+++ b/webkit/appcache/appcache_backend_impl.cc
@@ -12,6 +12,12 @@
namespace appcache {
+AppCacheBackendImpl::AppCacheBackendImpl()
+ : service_(NULL),
+ frontend_(NULL),
+ process_id_(0) {
+}
+
AppCacheBackendImpl::~AppCacheBackendImpl() {
STLDeleteValues(&hosts_);
if (service_)
diff --git a/webkit/appcache/appcache_backend_impl.h b/webkit/appcache/appcache_backend_impl.h
index d299641..ac563ff 100644
--- a/webkit/appcache/appcache_backend_impl.h
+++ b/webkit/appcache/appcache_backend_impl.h
@@ -14,7 +14,7 @@ class AppCacheService;
class AppCacheBackendImpl {
public:
- AppCacheBackendImpl() : service_(NULL), frontend_(NULL), process_id_(0) {}
+ AppCacheBackendImpl();
~AppCacheBackendImpl();
void Initialize(AppCacheService* service,
diff --git a/webkit/appcache/appcache_interfaces.cc b/webkit/appcache/appcache_interfaces.cc
index a818bb9..4ed0f09 100644
--- a/webkit/appcache/appcache_interfaces.cc
+++ b/webkit/appcache/appcache_interfaces.cc
@@ -23,6 +23,29 @@ const char kHttpHEADMethod[] = "HEAD";
const FilePath::CharType kAppCacheDatabaseName[] = FILE_PATH_LITERAL("Index");
+AppCacheInfo::AppCacheInfo()
+ : cache_id(kNoCacheId),
+ status(UNCACHED),
+ size(0),
+ is_complete(false) {
+}
+
+AppCacheInfo::~AppCacheInfo() {
+}
+
+AppCacheResourceInfo::AppCacheResourceInfo()
+ : url(),
+ size(0),
+ is_master(0),
+ is_manifest(0),
+ is_fallback(0),
+ is_foreign(0),
+ is_explicit(0) {
+}
+
+AppCacheResourceInfo::~AppCacheResourceInfo() {
+}
+
bool IsSchemeSupported(const GURL& url) {
bool supported = url.SchemeIs(kHttpScheme) || url.SchemeIs(kHttpsScheme);
#ifndef NDEBUG
@@ -85,4 +108,4 @@ COMPILE_ASSERT((int)WebConsoleMessage::LevelWarning ==
COMPILE_ASSERT((int)WebConsoleMessage::LevelError ==
(int)LOG_ERROR, LevelError);
-} // namespace
+} // namespace appcache
diff --git a/webkit/appcache/appcache_interfaces.h b/webkit/appcache/appcache_interfaces.h
index 1dfd326..973f795 100644
--- a/webkit/appcache/appcache_interfaces.h
+++ b/webkit/appcache/appcache_interfaces.h
@@ -53,6 +53,9 @@ enum LogLevel {
};
struct AppCacheInfo {
+ AppCacheInfo();
+ ~AppCacheInfo();
+
GURL manifest_url;
base::Time creation_time;
base::Time last_update_time;
@@ -61,14 +64,15 @@ struct AppCacheInfo {
Status status;
int64 size;
bool is_complete;
- AppCacheInfo() : cache_id(kNoCacheId), status(UNCACHED),
- size(0), is_complete(false) { }
};
typedef std::vector<AppCacheInfo> AppCacheInfoVector;
-// POD type to hold information about a single appcache resource.
+// Type to hold information about a single appcache resource.
struct AppCacheResourceInfo {
+ AppCacheResourceInfo();
+ ~AppCacheResourceInfo();
+
GURL url;
int64 size;
bool is_master;
diff --git a/webkit/appcache/appcache_response.cc b/webkit/appcache/appcache_response.cc
index c44eac6..54bba14 100644
--- a/webkit/appcache/appcache_response.cc
+++ b/webkit/appcache/appcache_response.cc
@@ -63,6 +63,15 @@ AppCacheResponseInfo::~AppCacheResponseInfo() {
service_->storage()->working_set()->RemoveResponseInfo(this);
}
+// HttpResponseInfoIOBuffer ------------------------------------------
+
+HttpResponseInfoIOBuffer::HttpResponseInfoIOBuffer()
+ : response_data_size(kUnkownResponseDataSize) {}
+
+HttpResponseInfoIOBuffer::HttpResponseInfoIOBuffer(net::HttpResponseInfo* info)
+ : http_info(info), response_data_size(kUnkownResponseDataSize) {}
+
+HttpResponseInfoIOBuffer::~HttpResponseInfoIOBuffer() {}
// AppCacheResponseIO ----------------------------------------------
diff --git a/webkit/appcache/appcache_response.h b/webkit/appcache/appcache_response.h
index 1f8ecce..5f62b14 100644
--- a/webkit/appcache/appcache_response.h
+++ b/webkit/appcache/appcache_response.h
@@ -48,7 +48,7 @@ class AppCacheResponseInfo
private:
friend class base::RefCounted<AppCacheResponseInfo>;
- ~AppCacheResponseInfo();
+ virtual ~AppCacheResponseInfo();
const GURL manifest_url_;
const int64 response_id_;
@@ -64,15 +64,12 @@ struct HttpResponseInfoIOBuffer
scoped_ptr<net::HttpResponseInfo> http_info;
int response_data_size;
- HttpResponseInfoIOBuffer()
- : response_data_size(kUnkownResponseDataSize) {}
- explicit HttpResponseInfoIOBuffer(net::HttpResponseInfo* info)
- : http_info(info), response_data_size(kUnkownResponseDataSize) {}
+ HttpResponseInfoIOBuffer();
+ explicit HttpResponseInfoIOBuffer(net::HttpResponseInfo* info);
private:
friend class base::RefCountedThreadSafe<HttpResponseInfoIOBuffer>;
-
- ~HttpResponseInfoIOBuffer() {}
+ virtual ~HttpResponseInfoIOBuffer();
};
// Common base class for response reader and writer.
diff --git a/webkit/appcache/appcache_service.cc b/webkit/appcache/appcache_service.cc
index bf8fba2..c6bba28 100644
--- a/webkit/appcache/appcache_service.cc
+++ b/webkit/appcache/appcache_service.cc
@@ -12,6 +12,10 @@
namespace appcache {
+AppCacheInfoCollection::AppCacheInfoCollection() {}
+
+AppCacheInfoCollection::~AppCacheInfoCollection() {}
+
// AsyncHelper -------
class AppCacheService::AsyncHelper
diff --git a/webkit/appcache/appcache_service.h b/webkit/appcache/appcache_service.h
index fe5ec60..ebd8fb7 100644
--- a/webkit/appcache/appcache_service.h
+++ b/webkit/appcache/appcache_service.h
@@ -32,7 +32,9 @@ class AppCachePolicy;
// Refcounted container to avoid copying the collection in callbacks.
struct AppCacheInfoCollection
: public base::RefCountedThreadSafe<AppCacheInfoCollection> {
- virtual ~AppCacheInfoCollection() {}
+ AppCacheInfoCollection();
+ virtual ~AppCacheInfoCollection();
+
std::map<GURL, AppCacheInfoVector> infos_by_origin;
};
diff --git a/webkit/appcache/appcache_storage.cc b/webkit/appcache/appcache_storage.cc
index 445b965..01c18f1 100644
--- a/webkit/appcache/appcache_storage.cc
+++ b/webkit/appcache/appcache_storage.cc
@@ -22,6 +22,18 @@ AppCacheStorage::~AppCacheStorage() {
DCHECK(delegate_references_.empty());
}
+AppCacheStorage::DelegateReference::DelegateReference(
+ Delegate* delegate, AppCacheStorage* storage)
+ : delegate(delegate), storage(storage) {
+ storage->delegate_references_.insert(
+ DelegateReferenceMap::value_type(delegate, this));
+}
+
+AppCacheStorage::DelegateReference::~DelegateReference() {
+ if (delegate)
+ storage->delegate_references_.erase(delegate);
+}
+
AppCacheStorage::ResponseInfoLoadTask::ResponseInfoLoadTask(
const GURL& manifest_url,
int64 response_id,
@@ -36,6 +48,9 @@ AppCacheStorage::ResponseInfoLoadTask::ResponseInfoLoadTask(
PendingResponseInfoLoads::value_type(response_id, this));
}
+AppCacheStorage::ResponseInfoLoadTask::~ResponseInfoLoadTask() {
+}
+
void AppCacheStorage::ResponseInfoLoadTask::StartIfNeeded() {
if (reader_.get())
return;
diff --git a/webkit/appcache/appcache_storage.h b/webkit/appcache/appcache_storage.h
index 559237c..20fbffe 100644
--- a/webkit/appcache/appcache_storage.h
+++ b/webkit/appcache/appcache_storage.h
@@ -206,11 +206,7 @@ class AppCacheStorage {
Delegate* delegate;
AppCacheStorage* storage;
- DelegateReference(Delegate* delegate, AppCacheStorage* storage)
- : delegate(delegate), storage(storage) {
- storage->delegate_references_.insert(
- DelegateReferenceMap::value_type(delegate, this));
- }
+ DelegateReference(Delegate* delegate, AppCacheStorage* storage);
void CancelReference() {
storage->delegate_references_.erase(delegate);
@@ -221,10 +217,7 @@ class AppCacheStorage {
private:
friend class base::RefCounted<DelegateReference>;
- ~DelegateReference() {
- if (delegate)
- storage->delegate_references_.erase(delegate);
- }
+ virtual ~DelegateReference();
};
typedef std::map<Delegate*, DelegateReference*> DelegateReferenceMap;
typedef std::vector<scoped_refptr<DelegateReference> >
@@ -236,6 +229,7 @@ class AppCacheStorage {
public:
ResponseInfoLoadTask(const GURL& manifest_url, int64 response_id,
AppCacheStorage* storage);
+ ~ResponseInfoLoadTask();
int64 response_id() const { return response_id_; }
const GURL& manifest_url() const { return manifest_url_; }
diff --git a/webkit/appcache/appcache_update_job.cc b/webkit/appcache/appcache_update_job.cc
index 5433e55..7d48a3a 100644
--- a/webkit/appcache/appcache_update_job.cc
+++ b/webkit/appcache/appcache_update_job.cc
@@ -123,6 +123,17 @@ class HostNotifier {
NotifyHostMap hosts_to_notify;
};
+AppCacheUpdateJob::UrlToFetch::UrlToFetch(const GURL& url,
+ bool checked,
+ AppCacheResponseInfo* info)
+ : url(url),
+ storage_checked(checked),
+ existing_response_info(info) {
+}
+
+AppCacheUpdateJob::UrlToFetch::~UrlToFetch() {
+}
+
AppCacheUpdateJob::AppCacheUpdateJob(AppCacheService* service,
AppCacheGroup* group)
: ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)),
diff --git a/webkit/appcache/appcache_update_job.h b/webkit/appcache/appcache_update_job.h
index 9d82e68..b0a683c 100644
--- a/webkit/appcache/appcache_update_job.h
+++ b/webkit/appcache/appcache_update_job.h
@@ -83,11 +83,12 @@ class AppCacheUpdateJob : public URLRequest::Delegate,
};
struct UrlToFetch {
+ UrlToFetch(const GURL& url, bool checked, AppCacheResponseInfo* info);
+ ~UrlToFetch();
+
GURL url;
bool storage_checked;
scoped_refptr<AppCacheResponseInfo> existing_response_info;
- UrlToFetch(const GURL& url, bool checked, AppCacheResponseInfo* info)
- : url(url), storage_checked(checked), existing_response_info(info) {}
};
UpdateJobInfo* GetUpdateJobInfo(URLRequest* request);
diff --git a/webkit/appcache/appcache_working_set.cc b/webkit/appcache/appcache_working_set.cc
index 1c3f40b..e7bdf53 100644
--- a/webkit/appcache/appcache_working_set.cc
+++ b/webkit/appcache/appcache_working_set.cc
@@ -11,6 +11,8 @@
namespace appcache {
+AppCacheWorkingSet::AppCacheWorkingSet() : is_disabled_(false) {}
+
AppCacheWorkingSet::~AppCacheWorkingSet() {
DCHECK(caches_.empty());
DCHECK(groups_.empty());
diff --git a/webkit/appcache/appcache_working_set.h b/webkit/appcache/appcache_working_set.h
index 15221d12..d7e4fc9 100644
--- a/webkit/appcache/appcache_working_set.h
+++ b/webkit/appcache/appcache_working_set.h
@@ -22,7 +22,7 @@ class AppCacheWorkingSet {
public:
typedef std::map<GURL, AppCacheGroup*> GroupMap;
- AppCacheWorkingSet() : is_disabled_(false) {}
+ AppCacheWorkingSet();
~AppCacheWorkingSet();
void Disable();
diff --git a/webkit/appcache/manifest_parser.cc b/webkit/appcache/manifest_parser.cc
index cbd1c68..68b37d8 100644
--- a/webkit/appcache/manifest_parser.cc
+++ b/webkit/appcache/manifest_parser.cc
@@ -45,6 +45,10 @@ enum Mode {
UNKNOWN,
};
+Manifest::Manifest() : online_whitelist_all(false) {}
+
+Manifest::~Manifest() {}
+
bool ParseManifest(const GURL& manifest_url, const char* data, int length,
Manifest& manifest) {
static const std::wstring kSignature(L"CACHE MANIFEST");
diff --git a/webkit/appcache/manifest_parser.h b/webkit/appcache/manifest_parser.h
index e9f80d9..19d5cac 100644
--- a/webkit/appcache/manifest_parser.h
+++ b/webkit/appcache/manifest_parser.h
@@ -44,12 +44,13 @@ namespace appcache {
typedef std::pair<GURL, GURL> FallbackNamespace;
struct Manifest {
+ Manifest();
+ ~Manifest();
+
base::hash_set<std::string> explicit_urls;
std::vector<FallbackNamespace> fallback_namespaces;
std::vector<GURL> online_whitelist_namespaces;
bool online_whitelist_all;
-
- Manifest() : online_whitelist_all(false) {}
};
bool ParseManifest(const GURL& manifest_url, const char* data, int length,
diff --git a/webkit/glue/plugins/pepper_url_request_info.cc b/webkit/glue/plugins/pepper_url_request_info.cc
index 4edbe83..24348b7 100644
--- a/webkit/glue/plugins/pepper_url_request_info.cc
+++ b/webkit/glue/plugins/pepper_url_request_info.cc
@@ -123,6 +123,31 @@ const PPB_URLRequestInfo_Dev ppb_urlrequestinfo = {
} // namespace
+struct URLRequestInfo::BodyItem {
+ BodyItem(const std::string& data)
+ : data(data),
+ start_offset(0),
+ number_of_bytes(-1),
+ expected_last_modified_time(0.0) {
+ }
+
+ BodyItem(FileRef* file_ref,
+ int64_t start_offset,
+ int64_t number_of_bytes,
+ PP_Time expected_last_modified_time)
+ : file_ref(file_ref),
+ start_offset(start_offset),
+ number_of_bytes(number_of_bytes),
+ expected_last_modified_time(expected_last_modified_time) {
+ }
+
+ std::string data;
+ scoped_refptr<FileRef> file_ref;
+ int64_t start_offset;
+ int64_t number_of_bytes;
+ PP_Time expected_last_modified_time;
+};
+
URLRequestInfo::URLRequestInfo(PluginModule* module)
: Resource(module),
stream_to_file_(false) {
diff --git a/webkit/glue/plugins/pepper_url_request_info.h b/webkit/glue/plugins/pepper_url_request_info.h
index 7220531..2d394d5 100644
--- a/webkit/glue/plugins/pepper_url_request_info.h
+++ b/webkit/glue/plugins/pepper_url_request_info.h
@@ -45,31 +45,7 @@ class URLRequestInfo : public Resource {
WebKit::WebURLRequest ToWebURLRequest(WebKit::WebFrame* frame) const;
private:
- struct BodyItem {
- BodyItem(const std::string& data)
- : data(data),
- start_offset(0),
- number_of_bytes(-1),
- expected_last_modified_time(0.0) {
- }
-
- BodyItem(FileRef* file_ref,
- int64_t start_offset,
- int64_t number_of_bytes,
- PP_Time expected_last_modified_time)
- : file_ref(file_ref),
- start_offset(start_offset),
- number_of_bytes(number_of_bytes),
- expected_last_modified_time(expected_last_modified_time) {
- }
-
- std::string data;
- scoped_refptr<FileRef> file_ref;
- int64_t start_offset;
- int64_t number_of_bytes;
- PP_Time expected_last_modified_time;
- };
-
+ struct BodyItem;
typedef std::vector<BodyItem> Body;
std::string url_;
diff --git a/webkit/glue/plugins/plugin_list.cc b/webkit/glue/plugins/plugin_list.cc
index 2f71d43..a8d0534 100644
--- a/webkit/glue/plugins/plugin_list.cc
+++ b/webkit/glue/plugins/plugin_list.cc
@@ -445,6 +445,9 @@ bool PluginList::EnablePlugin(const FilePath& filename) {
return did_enable;
}
+PluginList::~PluginList() {
+}
+
bool PluginList::DisablePlugin(const FilePath& filename) {
AutoLock lock(lock_);
diff --git a/webkit/glue/plugins/plugin_list.h b/webkit/glue/plugins/plugin_list.h
index 36d8941..c0108ef 100644
--- a/webkit/glue/plugins/plugin_list.h
+++ b/webkit/glue/plugins/plugin_list.h
@@ -164,6 +164,8 @@ class PluginList {
// will be disabled.
bool DisablePlugin(const FilePath& filename);
+ ~PluginList();
+
private:
// Constructors are private for singletons
PluginList();
diff --git a/webkit/glue/plugins/webplugin_impl.cc b/webkit/glue/plugins/webplugin_impl.cc
index 80bc197..704145b 100644
--- a/webkit/glue/plugins/webplugin_impl.cc
+++ b/webkit/glue/plugins/webplugin_impl.cc
@@ -4,6 +4,7 @@
#include "webkit/glue/plugins/webplugin_impl.h"
+#include "base/linked_ptr.h"
#include "base/logging.h"
#include "base/message_loop.h"
#include "base/string_util.h"
@@ -207,6 +208,14 @@ void GetResponseInfo(const WebURLResponse& response,
// WebKit::WebPlugin ----------------------------------------------------------
+struct WebPluginImpl::ClientInfo {
+ unsigned long id;
+ WebPluginResourceClient* client;
+ WebKit::WebURLRequest request;
+ bool pending_failure_notification;
+ linked_ptr<WebKit::WebURLLoader> loader;
+};
+
bool WebPluginImpl::initialize(WebPluginContainer* container) {
if (!page_delegate_)
return false;
diff --git a/webkit/glue/plugins/webplugin_impl.h b/webkit/glue/plugins/webplugin_impl.h
index 5fe96d2..cb0970b 100644
--- a/webkit/glue/plugins/webplugin_impl.h
+++ b/webkit/glue/plugins/webplugin_impl.h
@@ -11,7 +11,6 @@
#include "base/basictypes.h"
#include "base/file_path.h"
-#include "base/linked_ptr.h"
#include "base/task.h"
#include "base/weak_ptr.h"
#include "gfx/native_widget_types.h"
@@ -256,13 +255,7 @@ class WebPluginImpl : public WebPlugin,
// Delayed task for downloading the plugin source URL.
void OnDownloadPluginSrcUrl();
- struct ClientInfo {
- unsigned long id;
- WebPluginResourceClient* client;
- WebKit::WebURLRequest request;
- bool pending_failure_notification;
- linked_ptr<WebKit::WebURLLoader> loader;
- };
+ struct ClientInfo;
// Helper functions
WebPluginResourceClient* GetClientFromLoader(WebKit::WebURLLoader* loader);