Fixed device remove exception.
Ylian Saint-Hilaire committed
Sep 9, 2020 at 14:26 UTC
92dd96d91fc933d39d4901f063e6ae43823214de
2 files changed
+16
-16
meshagent.js
+8
-8
@@ -63,14 +63,14 @@ module.exports.CreateMeshAgent = function (parent, db, ws, req, args, domain) {
63
// If this is a temporary or recovery agent, or all devices in this group are temporary, remove the agent (0x20 = Temporary, 0x40 = Recovery)
64
if (((obj.agentInfo) && (obj.agentInfo.capabilities) && ((obj.agentInfo.capabilities & 0x20) || (obj.agentInfo.capabilities & 0x40))) || ((mesh) && (mesh.flags) && (mesh.flags & 1))) {
65
// Delete this node including network interface information and events
66
- db.Remove(obj.dbNodeKey); // Remove node with that id
67
- db.Remove('if' + obj.dbNodeKey); // Remove interface information
68
- db.Remove('nt' + obj.dbNodeKey); // Remove notes
69
- db.Remove('lc' + obj.dbNodeKey); // Remove last connect time
70
- db.Remove('si' + obj.dbNodeKey); // Remove system information
71
- db.RemoveSMBIOS(obj.dbNodeKey); // Remove SMBios data
72
- db.RemoveAllNodeEvents(obj.dbNodeKey); // Remove all events for this node
73
- db.removeAllPowerEventsForNode(obj.dbNodeKey); // Remove all power events for this node
66
+ db.Remove(obj.dbNodeKey); // Remove node with that id
67
+ db.Remove('if' + obj.dbNodeKey); // Remove interface information
68
+ db.Remove('nt' + obj.dbNodeKey); // Remove notes
69
+ db.Remove('lc' + obj.dbNodeKey); // Remove last connect time
70
+ db.Remove('si' + obj.dbNodeKey); // Remove system information
71
+ if (db.RemoveSMBIOS) { db.RemoveSMBIOS(obj.dbNodeKey); } // Remove SMBios data
72
+ db.RemoveAllNodeEvents(obj.dbNodeKey); // Remove all events for this node
73
+ db.removeAllPowerEventsForNode(obj.dbNodeKey); // Remove all power events for this node
74
75
// Event node deletion
76
parent.parent.DispatchEvent(parent.CreateMeshDispatchTargets(obj.dbMeshKey, [obj.dbNodeKey]), obj, { etype: 'node', action: 'removenode', nodeid: obj.dbNodeKey, domain: domain.id, nolog: 1 });
meshuser.js
+8
-8
@@ -3419,14 +3419,14 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
3419
if ((rights & MESHRIGHT_UNINSTALL) == 0) return;
3420
3421
// Delete this node including network interface information, events and timeline
3422
- db.Remove(node._id); // Remove node with that id
3423
- db.Remove('if' + node._id); // Remove interface information
3424
- db.Remove('nt' + node._id); // Remove notes
3425
- db.Remove('lc' + node._id); // Remove last connect time
3426
- db.Remove('si' + node._id); // Remove system information
3427
- db.RemoveSMBIOS(node._id); // Remove SMBios data
3428
- db.RemoveAllNodeEvents(node._id); // Remove all events for this node
3429
- db.removeAllPowerEventsForNode(node._id); // Remove all power events for this node
3422
+ db.Remove(node._id); // Remove node with that id
3423
+ db.Remove('if' + node._id); // Remove interface information
3424
+ db.Remove('nt' + node._id); // Remove notes
3425
+ db.Remove('lc' + node._id); // Remove last connect time
3426
+ db.Remove('si' + node._id); // Remove system information
3427
+ if (db.RemoveSMBIOS) { db.RemoveSMBIOS(node._id); } // Remove SMBios data
3428
+ db.RemoveAllNodeEvents(node._id); // Remove all events for this node
3429
+ db.removeAllPowerEventsForNode(node._id); // Remove all power events for this node
3430
db.Get('ra' + obj.dbNodeKey, function (err, nodes) {
3431
if ((nodes != null) && (nodes.length == 1)) { db.Remove('da' + nodes[0].daid); } // Remove diagnostic agent to real agent link
3432
db.Remove('ra' + node._id); // Remove real agent to diagnostic agent link