summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvmpstr <vmpstr@chromium.org>2016-02-29 12:33:57 -0800
committerCommit bot <commit-bot@chromium.org>2016-02-29 20:34:55 +0000
commit11ea3850f60af63a8c917d9798bef890f5daa9f2 (patch)
treecf0586c7006c622a9428fe0dc25736066aacda8d
parent102f1fdb555614af8adbed38705d0084dd9e6e42 (diff)
downloadchromium_src-11ea3850f60af63a8c917d9798bef890f5daa9f2.zip
chromium_src-11ea3850f60af63a8c917d9798bef890f5daa9f2.tar.gz
chromium_src-11ea3850f60af63a8c917d9798bef890f5daa9f2.tar.bz2
mojo: Add out-of-line copy ctors for complex classes.
This patch adds out of line copy constructors for classes that our clang-plugin considers heavy. This is an effort to enable copy constructor checks by default. BUG=436357 R=sky@chromium.org, dcheng@chromium.org, thakis@chromium.org Review URL: https://codereview.chromium.org/1731003003 Cr-Commit-Position: refs/heads/master@{#378262}
-rw-r--r--mojo/edk/system/dispatcher.cc3
-rw-r--r--mojo/edk/system/dispatcher.h1
-rw-r--r--mojo/edk/system/handle_table.cc2
-rw-r--r--mojo/edk/system/handle_table.h1
-rw-r--r--mojo/edk/system/wait_set_dispatcher.cc2
-rw-r--r--mojo/edk/system/wait_set_dispatcher.h1
-rw-r--r--mojo/public/cpp/utility/lib/run_loop.cc2
-rw-r--r--mojo/public/cpp/utility/run_loop.h1
-rw-r--r--mojo/services/package_manager/package_manager.cc1
-rw-r--r--mojo/services/package_manager/package_manager.h1
-rw-r--r--mojo/shell/identity.cc2
-rw-r--r--mojo/shell/identity.h1
12 files changed, 18 insertions, 0 deletions
diff --git a/mojo/edk/system/dispatcher.cc b/mojo/edk/system/dispatcher.cc
index d475ef6..8a2e15e 100644
--- a/mojo/edk/system/dispatcher.cc
+++ b/mojo/edk/system/dispatcher.cc
@@ -17,6 +17,9 @@ namespace edk {
Dispatcher::DispatcherInTransit::DispatcherInTransit() {}
+Dispatcher::DispatcherInTransit::DispatcherInTransit(
+ const DispatcherInTransit& other) = default;
+
Dispatcher::DispatcherInTransit::~DispatcherInTransit() {}
MojoResult Dispatcher::WriteMessage(const void* bytes,
diff --git a/mojo/edk/system/dispatcher.h b/mojo/edk/system/dispatcher.h
index 8bdff28..89876eb 100644
--- a/mojo/edk/system/dispatcher.h
+++ b/mojo/edk/system/dispatcher.h
@@ -41,6 +41,7 @@ class MOJO_SYSTEM_IMPL_EXPORT Dispatcher
public:
struct DispatcherInTransit {
DispatcherInTransit();
+ DispatcherInTransit(const DispatcherInTransit& other);
~DispatcherInTransit();
scoped_refptr<Dispatcher> dispatcher;
diff --git a/mojo/edk/system/handle_table.cc b/mojo/edk/system/handle_table.cc
index 7aeca64..e41817d 100644
--- a/mojo/edk/system/handle_table.cc
+++ b/mojo/edk/system/handle_table.cc
@@ -126,6 +126,8 @@ HandleTable::Entry::Entry() {}
HandleTable::Entry::Entry(scoped_refptr<Dispatcher> dispatcher)
: dispatcher(dispatcher) {}
+HandleTable::Entry::Entry(const Entry& other) = default;
+
HandleTable::Entry::~Entry() {}
} // namespace edk
diff --git a/mojo/edk/system/handle_table.h b/mojo/edk/system/handle_table.h
index ecfb21e..882d540 100644
--- a/mojo/edk/system/handle_table.h
+++ b/mojo/edk/system/handle_table.h
@@ -53,6 +53,7 @@ class HandleTable {
struct Entry {
Entry();
explicit Entry(scoped_refptr<Dispatcher> dispatcher);
+ Entry(const Entry& other);
~Entry();
scoped_refptr<Dispatcher> dispatcher;
diff --git a/mojo/edk/system/wait_set_dispatcher.cc b/mojo/edk/system/wait_set_dispatcher.cc
index a083ce9..edca415 100644
--- a/mojo/edk/system/wait_set_dispatcher.cc
+++ b/mojo/edk/system/wait_set_dispatcher.cc
@@ -34,6 +34,8 @@ class WaitSetDispatcher::Waiter final : public Awakable {
WaitSetDispatcher::WaitState::WaitState() {}
+WaitSetDispatcher::WaitState::WaitState(const WaitState& other) = default;
+
WaitSetDispatcher::WaitState::~WaitState() {}
WaitSetDispatcher::WaitSetDispatcher()
diff --git a/mojo/edk/system/wait_set_dispatcher.h b/mojo/edk/system/wait_set_dispatcher.h
index 11e82cd..5bf457f 100644
--- a/mojo/edk/system/wait_set_dispatcher.h
+++ b/mojo/edk/system/wait_set_dispatcher.h
@@ -52,6 +52,7 @@ class MOJO_SYSTEM_IMPL_EXPORT WaitSetDispatcher : public Dispatcher {
struct WaitState {
WaitState();
+ WaitState(const WaitState& other);
~WaitState();
scoped_refptr<Dispatcher> dispatcher;
diff --git a/mojo/public/cpp/utility/lib/run_loop.cc b/mojo/public/cpp/utility/lib/run_loop.cc
index 5d10fa1..8121afe 100644
--- a/mojo/public/cpp/utility/lib/run_loop.cc
+++ b/mojo/public/cpp/utility/lib/run_loop.cc
@@ -251,6 +251,8 @@ RunLoop::PendingTask::PendingTask(const Closure& task,
: task(task), run_time(run_time), sequence_number(sequence_number) {
}
+RunLoop::PendingTask::PendingTask(const PendingTask& other) = default;
+
RunLoop::PendingTask::~PendingTask() {
}
diff --git a/mojo/public/cpp/utility/run_loop.h b/mojo/public/cpp/utility/run_loop.h
index 253f5d4..407c58b 100644
--- a/mojo/public/cpp/utility/run_loop.h
+++ b/mojo/public/cpp/utility/run_loop.h
@@ -136,6 +136,7 @@ class RunLoop {
PendingTask(const Closure& task,
MojoTimeTicks runtime,
uint64_t sequence_number);
+ PendingTask(const PendingTask& other);
~PendingTask();
bool operator<(const PendingTask& other) const;
diff --git a/mojo/services/package_manager/package_manager.cc b/mojo/services/package_manager/package_manager.cc
index 4e62fa1..0eb697c 100644
--- a/mojo/services/package_manager/package_manager.cc
+++ b/mojo/services/package_manager/package_manager.cc
@@ -88,6 +88,7 @@ const char ApplicationCatalogStore::kDisplayNameKey[] = "display_name";
const char ApplicationCatalogStore::kCapabilitiesKey[] = "capabilities";
ApplicationInfo::ApplicationInfo() {}
+ApplicationInfo::ApplicationInfo(const ApplicationInfo& other) = default;
ApplicationInfo::~ApplicationInfo() {}
PackageManager::PackageManager(base::TaskRunner* blocking_pool,
diff --git a/mojo/services/package_manager/package_manager.h b/mojo/services/package_manager/package_manager.h
index 421be06..f4b0e93 100644
--- a/mojo/services/package_manager/package_manager.h
+++ b/mojo/services/package_manager/package_manager.h
@@ -27,6 +27,7 @@ using CapabilityFilter = std::map<std::string, AllowedInterfaces>;
// Static information about an application package known to the PackageManager.
struct ApplicationInfo {
ApplicationInfo();
+ ApplicationInfo(const ApplicationInfo& other);
~ApplicationInfo();
std::string name;
diff --git a/mojo/shell/identity.cc b/mojo/shell/identity.cc
index 2933c3b..c8c1fed 100644
--- a/mojo/shell/identity.cc
+++ b/mojo/shell/identity.cc
@@ -21,6 +21,8 @@ Identity::Identity(const std::string& name, const std::string& qualifier,
qualifier_(qualifier.empty() ? GetNamePath(name_) : qualifier),
user_id_(user_id) {}
+Identity::Identity(const Identity& other) = default;
+
Identity::~Identity() {}
bool Identity::operator<(const Identity& other) const {
diff --git a/mojo/shell/identity.h b/mojo/shell/identity.h
index f22f6a9..921c839 100644
--- a/mojo/shell/identity.h
+++ b/mojo/shell/identity.h
@@ -37,6 +37,7 @@ class Identity {
Identity(const std::string& in_name,
const std::string& in_qualifier,
uint32_t user_id);
+ Identity(const Identity& other);
~Identity();
bool operator<(const Identity& other) const;