summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/kernel/dynlib.hpp
diff options
context:
space:
mode:
authorjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2012-07-16 06:48:11 +0000
committerjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2012-07-16 06:48:11 +0000
commit574ccee478b9da9457cdf0e476b8df6eb584b580 (patch)
tree5a8166f47057ed322294db7816e2732d1d18f7bc /sca-cpp/trunk/kernel/dynlib.hpp
parent419f903ff44a22debba43976baae1e86c1e5d871 (diff)
Minor memory management, performance, and tracing improvements.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1361917 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/kernel/dynlib.hpp')
-rw-r--r--sca-cpp/trunk/kernel/dynlib.hpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/sca-cpp/trunk/kernel/dynlib.hpp b/sca-cpp/trunk/kernel/dynlib.hpp
index 484de3d666..69359b4dae 100644
--- a/sca-cpp/trunk/kernel/dynlib.hpp
+++ b/sca-cpp/trunk/kernel/dynlib.hpp
@@ -59,6 +59,15 @@ public:
lib(const lib& l) : name(l.name), h(l.h), owner(false) {
}
+ const lib& operator=(const lib& l) {
+ if(this == &l)
+ return *this;
+ name = l.name;
+ h = l.h;
+ owner = false;
+ return *this;
+ }
+
~lib() {
if (!owner)
return;
@@ -70,7 +79,7 @@ public:
private:
template<typename S> friend const failable<lambda<S> > dynlambda(const string& name, const lib& l);
- const string name;
+ string name;
failable<void*> h;
bool owner;
};