]> git.sur5r.net Git - openldap/commitdiff
Minor cleanup
authorHoward Chu <hyc@openldap.org>
Fri, 21 Jan 2005 22:46:06 +0000 (22:46 +0000)
committerHoward Chu <hyc@openldap.org>
Fri, 21 Jan 2005 22:46:06 +0000 (22:46 +0000)
servers/slapd/slapadd.c

index 4b2223f3c74cc6456c4e9e46ebf962f084f033f2..fa6c5e8984ef3095bd8794c2d6b1da1f8bc8e5cc 100644 (file)
@@ -49,7 +49,7 @@ static struct berval bvtext;
 static int put_lineno;
 static int put_rc;
 
-static int use_thread = 0;     /*FIXME need a new switch for this */
+static int use_thread = 1;     /*FIXME need a new switch for this */
 
 static void *do_put(void *ptr)
 {
@@ -399,13 +399,16 @@ slapadd( int argc, char **argv )
        }
 
        if ( use_thread ) {
+               ldap_pvt_thread_mutex_lock( &put_mutex );
+               /* Tell child thread to stop if it hasn't aborted */
                if ( !put_rc ) {
                        put_rc = EXIT_FAILURE;
-                       ldap_pvt_thread_mutex_lock( &put_mutex );
                        ldap_pvt_thread_cond_signal( &put_cond );
-                       ldap_pvt_thread_mutex_unlock( &put_mutex );
                }
+               ldap_pvt_thread_mutex_unlock( &put_mutex );
                ldap_pvt_thread_join( put_tid, NULL );
+               ldap_pvt_thread_mutex_destroy( &put_mutex );
+               ldap_pvt_thread_cond_destroy( &put_cond );
        }
 
        bvtext.bv_len = textlen;