ITS#7878 Replace uint32_t with unsigned in back-mdb
This fixes a compilation failure under MinGW, where stdint.h types are not implicitly pulled in by other headers. The quick fix is to #include <stdint.h>
, however upon inspecting the types and their uses, it looked like using the fixed-size types is actually unnecessary. Tested on Linux (Debian 9) and MinGW (MSYS2).
init.c
: align mi_dbenv_flags
and flags
with mdb_dbi_open
, which declares flags
as unsigned int
.
search.c
: align mi_rtxn_size
with ARG_UINT
, which assigns an unsigned int
; also change ww_ctx.nentries
to silence a warning about signed/unsigned comparison.
config.c
: parse checkpoint
config more carefully. Reject negative or unreasonably large values for kbytes
and minutes
(previously, negative or large values were just reinterpreted as uint32_t
). Ensure both values are parsed successfully before making any changes.