Revert "Fix a memleak in svcctl_init_keys()"
authorVolker Lendecke <vl@samba.org>
Wed, 18 Jun 2008 14:30:37 +0000 (16:30 +0200)
committerKarolin Seeger <kseeger@samba.org>
Wed, 18 Jun 2008 20:41:05 +0000 (22:41 +0200)
This reverts commit b1afb31f3cadd4749bf6e3eb5d8935588bf8ebfc.

This one is very strange: I need to investigate why valgrind showed it as
leaking, and why in my initial tests this did not fail.
(cherry picked from commit 24730f5981efb920811e7929a9483bd72bb0984c)

source/services/services_db.c

index ae9fe1aeb7ca335ead917799d0dafef0da096dcd..620b03693263c6eba297a5e2ecf72e0b32af94f7 100644 (file)
@@ -447,22 +447,15 @@ void svcctl_init_keys( void )
        REGSUBKEY_CTR *subkeys;
        REGISTRY_KEY *key = NULL;
        WERROR wresult;
-       struct nt_user_token *token = get_root_nt_token();
-
-       if (token == NULL) {
-               DEBUG(0, ("svcctl_init_keys: get_root_nt_token failed\n"));
-               return;
-       }
 
        /* bad mojo here if the lookup failed.  Should not happen */
 
        wresult = regkey_open_internal( NULL, &key, KEY_SERVICES,
-                                       token, REG_KEY_ALL );
+                                       get_root_nt_token(), REG_KEY_ALL );
 
        if ( !W_ERROR_IS_OK(wresult) ) {
                DEBUG(0,("svcctl_init_keys: key lookup failed! (%s)\n",
                        dos_errstr(wresult)));
-               TALLOC_FREE(token);
                return;
        }
 
@@ -471,7 +464,6 @@ void svcctl_init_keys( void )
        if ( !(subkeys = TALLOC_ZERO_P( key, REGSUBKEY_CTR )) ) {
                DEBUG(0,("svcctl_init_keys: talloc() failed!\n"));
                TALLOC_FREE( key );
-               TALLOC_FREE(token);
                return;
        }
 
@@ -494,7 +486,6 @@ void svcctl_init_keys( void )
        }
 
        TALLOC_FREE( key );
-       TALLOC_FREE(token);
 
        /* initialize the control hooks */