summaryrefslogtreecommitdiff
path: root/source4/lib/registry/common/reg_objects.c
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2004-04-12 20:07:50 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:51:15 -0500
commit198a92cb77ef2070957f18da0a8b6a48d01dbe9b (patch)
treea8154008035dffdae289cb538431dc593a0be4d7 /source4/lib/registry/common/reg_objects.c
parentb560bf536154a3bcfbfb8bb2ca5e2f154a6d6dd4 (diff)
downloadsamba-198a92cb77ef2070957f18da0a8b6a48d01dbe9b.tar.gz
samba-198a92cb77ef2070957f18da0a8b6a48d01dbe9b.tar.bz2
samba-198a92cb77ef2070957f18da0a8b6a48d01dbe9b.zip
r187: RPC registry backend fixes
(This used to be commit f832d6776cb10f5c7d7ed83e6f66e4d28a461916)
Diffstat (limited to 'source4/lib/registry/common/reg_objects.c')
-rw-r--r--source4/lib/registry/common/reg_objects.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/source4/lib/registry/common/reg_objects.c b/source4/lib/registry/common/reg_objects.c
index 3f721c107e..787ec52127 100644
--- a/source4/lib/registry/common/reg_objects.c
+++ b/source4/lib/registry/common/reg_objects.c
@@ -163,11 +163,14 @@ REG_KEY *reg_key_new_abs(const char *path, REG_HANDLE *h, void *data)
REG_KEY *reg_key_new_rel(const char *name, REG_KEY *k, void *data)
{
REG_KEY *r;
+ const char *parent_path = k?reg_key_get_path(k):"";
TALLOC_CTX *mem_ctx = talloc_init(name);
r = talloc(mem_ctx, sizeof(REG_KEY));
ZERO_STRUCTP(r);
r->handle = k->handle;
r->name = talloc_strdup(mem_ctx, name);
+
+ r->path = talloc_asprintf(mem_ctx, "%s%s%s", parent_path, *parent_path && parent_path[strlen(parent_path)-1] != '\\'?"\\":"", name);
r->backend_data = data;
r->mem_ctx = mem_ctx;
r->ref = 1;