diff options
Diffstat (limited to 'src/cstore/cstore.cpp')
-rw-r--r-- | src/cstore/cstore.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/cstore/cstore.cpp b/src/cstore/cstore.cpp index ebf9585..0634988 100644 --- a/src/cstore/cstore.cpp +++ b/src/cstore/cstore.cpp @@ -1791,6 +1791,22 @@ Cstore::markCfgPathChanged(const vector<string>& path_comps) return true; } +/* unmark "changed" status of specified path in working config. + * this is used, e.g., at the end of "commit" to reset a subtree. + * note: unmarking a node means all of its descendants are also unmarked, + * i.e., they become "unchanged". + * return true if successful. otherwise return false. + */ +bool +Cstore::unmarkCfgPathChanged(const vector<string>& path_comps) +{ + SAVE_PATHS; + append_cfg_path(path_comps); + bool ret = unmark_changed_with_descendants(); + RESTORE_PATHS; + return ret; +} + ////// protected functions void |