diff options
| author | Adam Ierymenko <adam.ierymenko@gmail.com> | 2018-03-08 22:33:08 -0800 |
|---|---|---|
| committer | Adam Ierymenko <adam.ierymenko@gmail.com> | 2018-03-08 22:33:08 -0800 |
| commit | 57b96af2c41ed63a12bfb41044f242fc55ab1358 (patch) | |
| tree | 2ce9e1159e3d9ff8d49f4a5a02c379bd9ac8bed7 /controller/RethinkDB.cpp | |
| parent | 2ee358dbfcf8483db0fed2a961b1ce56a37355ec (diff) | |
| download | infinitytier-57b96af2c41ed63a12bfb41044f242fc55ab1358.tar.gz infinitytier-57b96af2c41ed63a12bfb41044f242fc55ab1358.zip | |
Fix for FileDB _networkChanged / _memberChanged problem.
Diffstat (limited to 'controller/RethinkDB.cpp')
| -rw-r--r-- | controller/RethinkDB.cpp | 9 |
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 } } |
