summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/components/constdb
diff options
context:
space:
mode:
Diffstat (limited to 'sca-cpp/trunk/components/constdb')
-rw-r--r--sca-cpp/trunk/components/constdb/constdb.cpp2
-rw-r--r--sca-cpp/trunk/components/constdb/tinycdb.hpp13
2 files changed, 12 insertions, 3 deletions
diff --git a/sca-cpp/trunk/components/constdb/constdb.cpp b/sca-cpp/trunk/components/constdb/constdb.cpp
index c3b9d63284..6d1cb15baf 100644
--- a/sca-cpp/trunk/components/constdb/constdb.cpp
+++ b/sca-cpp/trunk/components/constdb/constdb.cpp
@@ -102,7 +102,7 @@ private:
*/
const failable<value> start(unused const list<value>& params) {
// Connect to the configured database and table
- const value dbname = ((lambda<value(list<value>)>)car(params))(list<value>());
+ const value dbname = ((lambda<value(const list<value>&)>)car(params))(list<value>());
tinycdb::TinyCDB& cdb = *(new (gc_new<tinycdb::TinyCDB>()) tinycdb::TinyCDB(dbname));
// Return the component implementation lambda function
diff --git a/sca-cpp/trunk/components/constdb/tinycdb.hpp b/sca-cpp/trunk/components/constdb/tinycdb.hpp
index c7d4cf520b..68be0a09dc 100644
--- a/sca-cpp/trunk/components/constdb/tinycdb.hpp
+++ b/sca-cpp/trunk/components/constdb/tinycdb.hpp
@@ -107,7 +107,6 @@ const string absdbname(const string& name) {
class TinyCDB {
public:
TinyCDB() : owner(false), fd(-1) {
- debug("tinycdb::tinycdb");
st.st_ino = 0;
}
@@ -121,8 +120,18 @@ public:
st.st_ino = c.st.st_ino;
}
+ const TinyCDB& operator=(const TinyCDB& c) {
+ debug("tinycdb::tinycdb::operator=");
+ if(this == &c)
+ return *this;
+ owner = false;
+ name = c.name;
+ fd = c.fd;
+ st.st_ino = c.st.st_ino;
+ return *this;
+ }
+
~TinyCDB() {
- debug("tinycdb::~tinycdb");
if (!owner)
return;
if (fd == -1)