From 6c165c84e3482264d9bd6475cb6bc08ad170e268 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Mon, 30 May 2011 16:54:47 +0200 Subject: [PATCH] s3:net registry: polish output of net registry enumerate[_recursive] so that net registry enumerate output is as before, and net registry enumerate_recursive is formatted more nicely (cherry picked from commit 0d746f653e76de52985d543a15fd6ee3bf2f4823) Fix bug: #8193 --- source3/utils/net_registry.c | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/source3/utils/net_registry.c b/source3/utils/net_registry.c index ecfa5e6a8cb..0acd8c4c308 100644 --- a/source3/utils/net_registry.c +++ b/source3/utils/net_registry.c @@ -138,17 +138,19 @@ static WERROR registry_enumkey(struct registry_key* parent, const char* keyname, goto done; } - printf("[%s]\n", key->key->name); - - for (count = 0; - werr = reg_enumkey(ctx, key, count, &subkey_name, &modtime), - W_ERROR_IS_OK(werr); - count++) - { - print_registry_key(subkey_name, &modtime); - } - if (!W_ERROR_EQUAL(WERR_NO_MORE_ITEMS, werr)) { - goto done; + if (recursive) { + printf("[%s]\n\n", key->key->name); + } else { + for (count = 0; + werr = reg_enumkey(ctx, key, count, &subkey_name, &modtime), + W_ERROR_IS_OK(werr); + count++) + { + print_registry_key(subkey_name, &modtime); + } + if (!W_ERROR_EQUAL(WERR_NO_MORE_ITEMS, werr)) { + goto done; + } } for (count = 0; @@ -180,7 +182,9 @@ static WERROR registry_enumkey(struct registry_key* parent, const char* keyname, if (!W_ERROR_EQUAL(WERR_NO_MORE_ITEMS, werr)) { goto done; } + werr = WERR_OK; + done: TALLOC_FREE(ctx); return werr; -- 2.11.4.GIT