ITS#9385 fix using MDB_NOSUBDIR with nonexistent file

This commit is contained in:
Kris Zyp 2020-11-02 20:33:09 +00:00 committed by Howard Chu
parent 033a32a20b
commit ade464a5a0
No known key found for this signature in database
GPG key ID: FD2A70B44AB11BA7

View file

@ -5495,11 +5495,8 @@ mdb_env_open(MDB_env *env, const char *path, unsigned int flags, mdb_mode_t mode
#ifndef _WIN32 #ifndef _WIN32
{ {
struct stat st; struct stat st;
rc = stat(path, &st);
if (rc)
return ErrCode();
flags &= ~MDB_RAWPART; flags &= ~MDB_RAWPART;
if (S_ISBLK(st.st_mode)) { if (!stat(path, &st) && (S_ISBLK(st.st_mode) || S_ISCHR(st.st_mode))) {
flags |= MDB_RAWPART | MDB_NOSUBDIR; flags |= MDB_RAWPART | MDB_NOSUBDIR;
if (!env->me_mapsize) if (!env->me_mapsize)
env->me_mapsize = DEFAULT_MAPSIZE; env->me_mapsize = DEFAULT_MAPSIZE;