diff options
Diffstat (limited to 'source3/registry')
-rw-r--r-- | source3/registry/reg_cachehook.c | 4 | ||||
-rw-r--r-- | source3/registry/reg_frontend.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/source3/registry/reg_cachehook.c b/source3/registry/reg_cachehook.c index e2444d8d17..2139fa7066 100644 --- a/source3/registry/reg_cachehook.c +++ b/source3/registry/reg_cachehook.c @@ -74,6 +74,8 @@ REGISTRY_HOOK* reghook_cache_find( char *keyname ) if ( !keyname ) return NULL; + /* prepend the string with a '\' character */ + len = strlen( keyname ); if ( !(key = malloc( len + 2 )) ) { DEBUG(0,("reghook_cache_find: malloc failed for string [%s] !?!?!\n", @@ -84,6 +86,8 @@ REGISTRY_HOOK* reghook_cache_find( char *keyname ) *key = '\\'; strncpy( key+1, keyname, len+1); + /* swap to a form understood by the SORTED_TREE */ + string_sub( key, "\\", "/", 0 ); DEBUG(10,("reghook_cache_find: Searching for keyname [%s]\n", key)); diff --git a/source3/registry/reg_frontend.c b/source3/registry/reg_frontend.c index 6090245096..de2b279546 100644 --- a/source3/registry/reg_frontend.c +++ b/source3/registry/reg_frontend.c @@ -60,7 +60,8 @@ BOOL init_registry( void ) return False; } - reghook_dump_cache(20); + if ( DEBUGLEVEL >= 20 ) + reghook_dump_cache(20); return True; } |