From 14ae9fb2a1101bc8eb1b06967d7431a4b715aa1e Mon Sep 17 00:00:00 2001 From: Leonid Yuriev Date: Mon, 14 Jan 2019 16:47:14 +0300 Subject: [PATCH] mdbx: env_set_geometry() treat zero-values also as defaults. Change-Id: If8c6f7d7bbeffe71ae4e28f27184103dd1da257b --- src/mdbx.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/mdbx.c b/src/mdbx.c index bdf3185f..cc0d2800 100644 --- a/src/mdbx.c +++ b/src/mdbx.c @@ -5729,19 +5729,21 @@ LIBMDBX_API int mdbx_env_set_geometry(MDBX_env *env, intptr_t size_lower, goto bailout; } - if (size_lower < 0) { + if (size_lower <= 0) { size_lower = MIN_MAPSIZE; if (MIN_MAPSIZE / pagesize < MIN_PAGENO) size_lower = MIN_PAGENO * pagesize; } - if (size_now < 0) { + if (size_now <= 0) { size_now = DEFAULT_MAPSIZE; if (size_now < size_lower) size_now = size_lower; + if (size_upper >= size_lower && size_now > size_upper) + size_now = size_upper; } - if (size_upper < 0) { + if (size_upper <= 0) { if ((size_t)size_now >= MAX_MAPSIZE / 2) size_upper = MAX_MAPSIZE; else if (MAX_MAPSIZE != MAX_MAPSIZE32 &&