From: Joakim Hassila Date: Thu, 9 Jun 2022 19:48:38 +0000 (+0200) Subject: ITS#9861 fix readonly regression from #9017 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0179cfab57d83ab1bec9e5bae4a3ac9101820e6e;p=thirdparty%2Fopenldap.git ITS#9861 fix readonly regression from #9017 --- diff --git a/libraries/liblmdb/mdb.c b/libraries/liblmdb/mdb.c index befc70bc73..5bdec70b19 100644 --- a/libraries/liblmdb/mdb.c +++ b/libraries/liblmdb/mdb.c @@ -6074,9 +6074,11 @@ mdb_env_open(MDB_env *env, const char *path, unsigned int flags, mdb_mode_t mode /* Synchronous fd for meta writes. Needed even with * MDB_NOSYNC/MDB_NOMETASYNC, in case these get reset. */ - rc = mdb_fopen(env, &fname, MDB_O_META, mode, &env->me_mfd); - if (rc) - goto leave; + if (!(flags & (MDB_RDONLY|MDB_WRITEMAP))) { + rc = mdb_fopen(env, &fname, MDB_O_META, mode, &env->me_mfd); + if (rc) + goto leave; + } DPRINTF(("opened dbenv %p", (void *) env)); if (excl > 0 && !(flags & MDB_PREVSNAPSHOT)) { rc = mdb_env_share_locks(env, &excl);