diff --git a/lib/src/clixon_datastore_write.c b/lib/src/clixon_datastore_write.c index fdfa1d2d..4033f986 100644 --- a/lib/src/clixon_datastore_write.c +++ b/lib/src/clixon_datastore_write.c @@ -495,6 +495,7 @@ text_modify(clixon_handle h, yang_stmt *yc; /* yang child */ cxobj **x0vec = NULL; int i; + int j; int ret; char *instr = NULL; char *keystr = NULL; @@ -921,7 +922,15 @@ text_modify(clixon_handle h, x0c = NULL; if (match_base_child(x0, x1c, yc, &x0c) < 0) goto done; - x0vec[i++] = x0c; /* != NULL if x0c is matching x1c */ + if (x0c) { + /* Duplicate check can happen if multiple operations on same object, whihc should be filtered, just silently drop */ + for (j=0; jmerge + + one + foo + +" "" "" + +new "Add duplicate list entries" +expecteof_netconf "$clixon_netconf -qf $cfg" 0 "$DEFAULTHELLO" "none + + one + bar + + + one + fie + +" "" "applicationoperation-faileddata-not-uniqueerror/rpc/edit-config/config/c/server[name=\"one\"]/name" + new "Add list with duplicate" expecteof_netconf "$clixon_netconf -qf $cfg" 0 "$DEFAULTHELLO" "replace