ITS#8117 fix INTEGERDUP compare

This commit is contained in:
Howard Chu 2015-04-29 17:12:40 +01:00
parent 5cdde0c5b7
commit ba45e0c05a

View File

@ -7076,6 +7076,12 @@ mdb_xcursor_init1(MDB_cursor *mc, MDB_node *node)
mx->mx_db.md_flags |= MDB_INTEGERKEY;
}
}
#if UINT_MAX < SIZE_MAX
if (mc->mc_dbx->md_dcmp == mdb_cmp_int && mx->mx_db.md_pad == sizeof(size_t)) {
mc->mc_dbx->md_dcmp = mdb_cmp_clong;
mx->mx_dbx.md_cmp = mdb_cmp_clong;
}
#endif
DPRINTF(("Sub-db -%u root page %"Z"u", mx->mx_cursor.mc_dbi,
mx->mx_db.md_root));
mx->mx_dbflag = DB_VALID|DB_DIRTY; /* DB_DIRTY guides mdb_cursor_touch */