summaryrefslogtreecommitdiff
path: root/source3/utils/regedit.c
diff options
context:
space:
mode:
authorChris Davis <cd.rattan@gmail.com>2014-06-27 18:01:36 -0700
committerMichael Adam <obnox@samba.org>2014-10-01 14:32:08 +0200
commit75045f052a5bc00fc8ffe35514c60e2f1611c9e9 (patch)
tree4fae0d2fb6c16cb47066b4907311f3d88488dae2 /source3/utils/regedit.c
parent2a8beb99a49829adfbad1c887448e3a2caa32255 (diff)
downloadsamba-75045f052a5bc00fc8ffe35514c60e2f1611c9e9.tar.gz
regedit: reopen parent keys when adding or removing subkeys
This clears any cache associated with the parent key, and ensures the changes will be noticed by the UI. Signed-off-by: Chris Davis <cd.rattan@gmail.com> Reviewed-by: Andreas Schneider <asn@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
Diffstat (limited to 'source3/utils/regedit.c')
-rw-r--r--source3/utils/regedit.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source3/utils/regedit.c b/source3/utils/regedit.c
index 471f875db2d..b006fac848d 100644
--- a/source3/utils/regedit.c
+++ b/source3/utils/regedit.c
@@ -230,6 +230,10 @@ static void add_reg_key(struct regedit *regedit, struct tree_node *node,
name, new_key);
SMB_ASSERT(new_node);
tree_node_insert_sorted(list, new_node);
+ } else {
+ /* Reopen the parent key to make sure the
+ new subkey will be noticed. */
+ tree_node_reopen_key(parent);
}
list = tree_node_first(node);
@@ -419,6 +423,7 @@ static void handle_tree_input(struct regedit *regedit, int c)
rv = reg_key_del(node, parent->key, node->name);
if (W_ERROR_IS_OK(rv)) {
+ tree_node_reopen_key(parent);
tree_view_clear(regedit->keys);
pop = tree_node_pop(&node);
tree_node_free_recursive(pop);