From d13ca0de4fccafa93cf97674f4b8539b8f00d3f3 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Tue, 18 Sep 2012 12:36:54 -0700 Subject: [PATCH] ITS#7394 ignore WRITEMAP if RDONLY --- libraries/libmdb/mdb.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libraries/libmdb/mdb.c b/libraries/libmdb/mdb.c index 2c54cbd..c0eb625 100644 --- a/libraries/libmdb/mdb.c +++ b/libraries/libmdb/mdb.c @@ -3128,6 +3128,10 @@ mdb_env_open(MDB_env *env, const char *path, unsigned int flags, mode_t mode) if (rc) goto leave; + /* silently ignore WRITEMAP if we're only getting read access */ + if (F_ISSET(flags, MDB_RDONLY) && F_ISSET(flags, MDB_WRITEMAP)) + flags ^= MDB_WRITEMAP; + #ifdef _WIN32 if (F_ISSET(flags, MDB_RDONLY)) { oflags = GENERIC_READ;