]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#8472 only do index cleanup if DB is running
authorHoward Chu <hyc@openldap.org>
Fri, 25 Jan 2019 18:11:58 +0000 (18:11 +0000)
committerHoward Chu <hyc@openldap.org>
Fri, 25 Jan 2019 18:11:58 +0000 (18:11 +0000)
servers/slapd/back-mdb/config.c

index 7775f1b81db435e52a84a7528f3fbe8f26a68c0d..42e8f0d915f6cc6d04a7cc33ee72f16ffa5fd120 100644 (file)
@@ -281,6 +281,7 @@ mdb_cf_cleanup( ConfigArgs *c )
        }
 
        if ( mdb->mi_flags & MDB_OPEN_INDEX ) {
+               mdb->mi_flags ^= MDB_OPEN_INDEX;
                rc = mdb_attr_dbs_open( c->be, NULL, &c->reply );
                if ( rc )
                        rc = LDAP_OTHER;
@@ -712,8 +713,8 @@ mdb_cf_gen( ConfigArgs *c )
                        c->argc - 1, &c->argv[1], &c->reply);
 
                if( rc != LDAP_SUCCESS ) return 1;
-               mdb->mi_flags |= MDB_OPEN_INDEX;
                if ( mdb->mi_flags & MDB_IS_OPEN ) {
+                       mdb->mi_flags |= MDB_OPEN_INDEX;
                        c->cleanup = mdb_cf_cleanup;
                        if ( !mdb->mi_index_task ) {
                                /* Start the task as soon as we finish here. Set a long