-bool
-config::remove(const std::string &m)
-{
- adopt_lock ml(cfg_mutex);
- tprintf("config::remove: my_view_id %d remove? %s\n",
- my_view_id, m.c_str());
- std::vector<std::string> n;
- for (unsigned i = 0; i < mems.size(); i++) {
- if (mems[i] != m)
- n.push_back(mems[i]);
- }
- std::string v = value(n);
- std::vector<std::string> cmems = mems;
- int nextvid = my_view_id + 1;
- bool r;
- {
- ml.unlock();
- r = paxos_proposer->run(nextvid, cmems, v);
- ml.lock();
+bool config::remove(const string &m, lock &cfg_mutex_lock) {
+ LOG("my_view_id " << my_view_id << " remove? " << m);
+ vector<string> n;
+ for (auto mem : mems) {
+ if (mem != m)
+ n.push_back(mem);