summaryrefslogtreecommitdiff
path: root/controller/RethinkDB.cpp
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2018-03-08 22:33:08 -0800
committerAdam Ierymenko <adam.ierymenko@gmail.com>2018-03-08 22:33:08 -0800
commit57b96af2c41ed63a12bfb41044f242fc55ab1358 (patch)
tree2ce9e1159e3d9ff8d49f4a5a02c379bd9ac8bed7 /controller/RethinkDB.cpp
parent2ee358dbfcf8483db0fed2a961b1ce56a37355ec (diff)
downloadinfinitytier-57b96af2c41ed63a12bfb41044f242fc55ab1358.tar.gz
infinitytier-57b96af2c41ed63a12bfb41044f242fc55ab1358.zip
Fix for FileDB _networkChanged / _memberChanged problem.
Diffstat (limited to 'controller/RethinkDB.cpp')
-rw-r--r--controller/RethinkDB.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/controller/RethinkDB.cpp b/controller/RethinkDB.cpp
index a3bdfbc9..0948b012 100644
--- a/controller/RethinkDB.cpp
+++ b/controller/RethinkDB.cpp
@@ -138,10 +138,11 @@ RethinkDB::RethinkDB(EmbeddedNetworkController *const nc,const Identity &myId,co
try {
json &ov = tmp["old_val"];
json &nv = tmp["new_val"];
- if (ov.is_object()||nv.is_object()) {
- //if (nv.is_object()) printf("NETWORK: %s" ZT_EOL_S,nv.dump().c_str());
- this->_networkChanged(ov,nv,(this->_ready <= 0));
- }
+ json oldConfig,newConfig;
+ if (ov.is_object()) oldConfig = ov["config"];
+ if (nv.is_object()) newConfig = nv["config"];
+ if (oldConfig.is_object()||newConfig.is_object())
+ this->_networkChanged(oldConfig,newConfig,(this->_ready <= 0));
} catch ( ... ) {} // ignore bad records
}
}