More dependency check-ups
[invirt/third/libt4.git] / lock_server.cc
index d5e85a5..b724140 100644 (file)
@@ -30,8 +30,8 @@ lock_state & lock_server::get_lock_state(lock_protocol::lockid_t lid) {
 }
 
 lock_server::lock_server(class rsm *_rsm) : rsm (_rsm) {
-    std::thread(&lock_server::revoker, this).detach();
-    std::thread(&lock_server::retryer, this).detach();
+    thread(&lock_server::revoker, this).detach();
+    thread(&lock_server::retryer, this).detach();
     rsm->set_state_transfer(this);
 }
 
@@ -167,16 +167,14 @@ int lock_server::release(int &, lock_protocol::lockid_t lid, callback_t id, lock
 string lock_server::marshal_state() {
     lock sl(lock_table_lock);
     marshall rep;
-    rep << nacquire;
-    rep << lock_table;
-    return rep.str();
+    rep << nacquire << lock_table;
+    return rep.content();
 }
 
 void lock_server::unmarshal_state(string state) {
     lock sl(lock_table_lock);
-    unmarshall rep(state);
-    rep >> nacquire;
-    rep >> lock_table;
+    unmarshall rep(state, false);
+    rep >> nacquire >> lock_table;
 }
 
 lock_protocol::status lock_server::stat(int &r, lock_protocol::lockid_t lid) {