Browse Source

Merge branch 'master' of https://github.com/acplt/open62541 into channel_counting

FlorianPalm 9 years ago
parent
commit
5f1d733ed8
2 changed files with 4 additions and 4 deletions
  1. 1 1
      src/server/ua_nodestore_concurrent.c
  2. 3 3
      src/server/ua_subscription_manager.c

+ 1 - 1
src/server/ua_nodestore_concurrent.c

@@ -196,7 +196,7 @@ UA_StatusCode UA_NodeStore_insert(UA_NodeStore *ns, UA_Node *node, const UA_Node
         }
         rcu_read_unlock();
     }
-
+    UA_NodeId_deleteMembers(&tempNodeid);
     UA_free(node);
     if(inserted)
         *inserted = &entry->node;

+ 3 - 3
src/server/ua_subscription_manager.c

@@ -76,10 +76,10 @@ UA_Int32 SubscriptionManager_deleteMonitoredItem(UA_SubscriptionManager *manager
     if(!sub)
         return UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID;
     
-    UA_MonitoredItem *mon;
-    LIST_FOREACH(mon, &sub->MonitoredItems, listEntry) {
+    UA_MonitoredItem *mon, *tmp_mon;
+    LIST_FOREACH_SAFE(mon, &sub->MonitoredItems, listEntry, tmp_mon) {
         if (mon->itemId == monitoredItemID) {
-            // FIXME!! don't we need to remove the list entry?
+            LIST_REMOVE(mon, listEntry);
             MonitoredItem_delete(mon);
             return UA_STATUSCODE_GOOD;
         }