Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Nadezhda Ivanova
OpenLDAP
Commits
ca8e48d9
Commit
ca8e48d9
authored
Jul 25, 2017
by
Hallvard Furuseth
Committed by
Howard Chu
Oct 10, 2020
Browse files
Fix last commit - sizeof(pgno_t) and C90 compat
parent
757378fc
Changes
1
Hide whitespace changes
Inline
Side-by-side
libraries/liblmdb/mdb.c
View file @
ca8e48d9
...
...
@@ -1037,7 +1037,7 @@ typedef struct MDB_page {
/** Test if a page is a sub page */
#define IS_SUBP(p) F_ISSET((p)->mp_flags, P_SUBP)
/**
Header for
overflow page
s
, stored in an F_BIGDATA node */
/**
Info about
overflow page, stored in an F_BIGDATA node */
typedef struct MDB_ovpage {
pgno_t op_pgno;
txnid_t op_txnid;
...
...
@@ -8412,7 +8412,7 @@ mdb_leaf_size(MDB_env *env, MDB_val *key, MDB_val *data)
sz = LEAFSIZE(key, data);
if (sz > env->me_nodemax) {
/* put on overflow page */
sz -= data->mv_size - sizeof(
pgno_t
);
sz -= data->mv_size - sizeof(
MDB_ovpage
);
}
return EVEN(sz + sizeof(indx_t));
...
...
@@ -8437,7 +8437,7 @@ mdb_branch_size(MDB_env *env, MDB_val *key)
if (sz > env->me_nodemax) {
/* put on overflow page */
/* not implemented */
/* sz -= key->size - sizeof(
pgno_t
); */
/* sz -= key->size - sizeof(
MDB_ovpage
); */
}
return sz + sizeof(indx_t);
...
...
@@ -8511,7 +8511,7 @@ mdb_node_add(MDB_cursor *mc, indx_t indx,
/* Put data on overflow page. */
DPRINTF(("data size is %"Z"u, node would be %"Z"u, put data on overflow page",
data->mv_size, node_size+data->mv_size));
node_size = EVEN(node_size + sizeof(
pgno_t
));
node_size = EVEN(node_size + sizeof(
MDB_ovpage
));
if ((ssize_t)node_size > room)
goto full;
if ((rc = mdb_page_new(mc, P_OVERFLOW, ovpages, &ofp)))
...
...
@@ -8561,7 +8561,10 @@ update:
else
memcpy(ndata, data->mv_data, data->mv_size);
} else {
MDB_ovpage ovp = {ofp->mp_pgno, mc->mc_txn->mt_txnid, ofp->mp_pages};
MDB_ovpage ovp;
ovp.op_pgno = ofp->mp_pgno;
ovp.op_txnid = mc->mc_txn->mt_txnid;
ovp.op_pages = ofp->mp_pages;
memcpy(ndata, &ovp, sizeof(MDB_ovpage));
ndata = METADATA(ofp);
if (F_ISSET(flags, MDB_RESERVE))
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment