summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Alex Light <allight@google.com> 2018-03-03 03:51:45 +0000
committer android-build-merger <android-build-merger@google.com> 2018-03-03 03:51:45 +0000
commit63354d1597b8db8db2f9fb887fcf8de6e98acb70 (patch)
tree11af69cf69128913ede1fdadd066ac87214fae62
parent319c34390f7d58652027fc4038b3058e87c69c27 (diff)
parentccb274f8b778fe01420de1be9ff2933f97c11300 (diff)
Merge "Ensure loaded plugins are not copied." am: a9a74666df am: d38b3a94f0
am: ccb274f8b7 Change-Id: I78ef18f0510a07946329253ecf3c3aae0ab489cd
-rw-r--r--runtime/plugin.cc5
-rw-r--r--runtime/plugin.h2
2 files changed, 2 insertions, 5 deletions
diff --git a/runtime/plugin.cc b/runtime/plugin.cc
index 7d86f1d5dc..6f1c5179f9 100644
--- a/runtime/plugin.cc
+++ b/runtime/plugin.cc
@@ -28,10 +28,7 @@ const char* PLUGIN_INITIALIZATION_FUNCTION_NAME = "ArtPlugin_Initialize";
const char* PLUGIN_DEINITIALIZATION_FUNCTION_NAME = "ArtPlugin_Deinitialize";
Plugin::Plugin(const Plugin& other) : library_(other.library_), dlopen_handle_(nullptr) {
- if (other.IsLoaded()) {
- std::string err;
- Load(&err);
- }
+ CHECK(!other.IsLoaded()) << "Should not copy loaded plugins.";
}
bool Plugin::Load(/*out*/std::string* error_msg) {
diff --git a/runtime/plugin.h b/runtime/plugin.h
index 909c710a96..4885b2e3c0 100644
--- a/runtime/plugin.h
+++ b/runtime/plugin.h
@@ -60,7 +60,7 @@ class Plugin {
Plugin(const Plugin& other);
// Create move constructor for putting this in a list
- Plugin(Plugin&& other)
+ Plugin(Plugin&& other) noexcept
: library_(other.library_),
dlopen_handle_(other.dlopen_handle_) {
other.dlopen_handle_ = nullptr;