|
|
|
@ -228,7 +228,7 @@ union semun { |
|
|
|
|
|
|
|
|
|
#if (BYTE_ORDER == LITTLE_ENDIAN) == (BYTE_ORDER == BIG_ENDIAN) |
|
|
|
|
# error "Unknown or unsupported endianness (BYTE_ORDER)" |
|
|
|
|
#elif (-6 & 5) || CHAR_BIT != 8 || UINT_MAX < 0xffffffff || ULONG_MAX % 0xFFFF |
|
|
|
|
#elif (-6 & 5) || CHAR_BIT!=8 || UINT_MAX!=0xffffffff || MDB_SIZE_MAX%UINT_MAX |
|
|
|
|
# error "Two's complement, reasonably sized integer types, please" |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
@ -1028,7 +1028,7 @@ typedef struct MDB_node { |
|
|
|
|
#ifdef MISALIGNED_OK |
|
|
|
|
#define COPY_PGNO(dst,src) dst = src |
|
|
|
|
#else |
|
|
|
|
#if SIZE_MAX > 4294967295UL |
|
|
|
|
#if MDB_SIZE_MAX > 0xffffffffU |
|
|
|
|
#define COPY_PGNO(dst,src) do { \ |
|
|
|
|
unsigned short *s, *d; \
|
|
|
|
|
s = (unsigned short *)&(src); \
|
|
|
|
@ -3551,7 +3551,7 @@ mdb_page_flush(MDB_txn *txn, int keep) |
|
|
|
|
* the write offset, to at least save the overhead of a Seek |
|
|
|
|
* system call. |
|
|
|
|
*/ |
|
|
|
|
DPRINTF(("committing page %"Z"u", pgno)); |
|
|
|
|
DPRINTF(("committing page %"Y"u", pgno)); |
|
|
|
|
memset(&ov, 0, sizeof(ov)); |
|
|
|
|
ov.Offset = pos & 0xffffffff; |
|
|
|
|
ov.OffsetHigh = pos >> 16 >> 16; |
|
|
|
@ -8165,7 +8165,7 @@ mdb_xcursor_init2(MDB_cursor *mc, MDB_xcursor *src_mx, int new_dupdata) |
|
|
|
|
mx->mx_cursor.mc_flags |= C_INITIALIZED; |
|
|
|
|
mx->mx_cursor.mc_ki[0] = 0; |
|
|
|
|
mx->mx_dbflag = DB_VALID|DB_USRVALID|DB_DIRTY; /* DB_DIRTY guides mdb_cursor_touch */ |
|
|
|
|
#if UINT_MAX < SIZE_MAX |
|
|
|
|
#if UINT_MAX < MDB_SIZE_MAX /* matches mdb_xcursor_init1:NEED_CMP_CLONG() */ |
|
|
|
|
mx->mx_dbx.md_cmp = src_mx->mx_dbx.md_cmp; |
|
|
|
|
#endif |
|
|
|
|
} else if (!(mx->mx_cursor.mc_flags & C_INITIALIZED)) { |
|
|
|
|