diff options
| author | Daniil Baturin <daniil@vyos.io> | 2025-07-22 15:08:29 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-22 15:08:29 +0100 |
| commit | f08ff04c71da7e3108120a45c1e2d4feb2f8e331 (patch) | |
| tree | 47e6aba2a8a6f73d6d2966e99e77b16eae0ea3f4 /src/commit.ml | |
| parent | 8c87d62c1131652dfe65747bdefefadbd860627c (diff) | |
| parent | 59c22fbdc1f1a9ad277c5ed8c9665ce0f8d86e57 (diff) | |
| download | vyconf-f08ff04c71da7e3108120a45c1e2d4feb2f8e331.tar.gz vyconf-f08ff04c71da7e3108120a45c1e2d4feb2f8e331.zip | |
Merge pull request #27 from jestabro/debug-smoketests
T7637: fix typo in commit update and relax error on redundant set
Diffstat (limited to 'src/commit.ml')
| -rw-r--r-- | src/commit.ml | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/commit.ml b/src/commit.ml index 0d675d8..2e2dbac 100644 --- a/src/commit.ml +++ b/src/commit.ml @@ -181,7 +181,12 @@ let config_result_update c_data n_data = match r.success, n_data.source with | true, ADD -> let add = CT.get_subtree c_data.config_diff ["add"] in - let add_tree = CD.clone add (CT.default) n_data.path in + let path = + match n_data.tag_value with + | None -> n_data.path + | Some v -> n_data.path @ [v] + in + let add_tree = CD.clone add (CT.default) path in let config = CD.tree_union add_tree c_data.config_result in let result = { success = c_data.result.success && true; @@ -190,7 +195,12 @@ let config_result_update c_data n_data = { c_data with config_result = config; result = result; } | false, DELETE -> let del = CT.get_subtree c_data.config_diff ["del"] in - let add_tree = CD.clone del (CT.default) n_data.path in + let path = + match n_data.tag_value with + | None -> n_data.path + | Some v -> n_data.path @ [v] + in + let add_tree = CD.clone del (CT.default) path in let config = CD.tree_union add_tree c_data.config_result in let result = { success = c_data.result.success && false; |
