projects
/
platform
/
upstream
/
lmdb.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
28b8aae
)
Fix 6e05ca17e988754ae90fde1921765ba130bb90b2
author
Howard Chu
<highlandsun@gmail.com>
Mon, 3 Oct 2011 02:52:12 +0000
(19:52 -0700)
committer
Howard Chu
<highlandsun@gmail.com>
Mon, 3 Oct 2011 02:52:12 +0000
(19:52 -0700)
Missed a MDB_RESERVE case
libraries/libmdb/mdb.c
patch
|
blob
|
history
diff --git
a/libraries/libmdb/mdb.c
b/libraries/libmdb/mdb.c
index
b3f4f0d
..
0ac61a3
100644
(file)
--- a/
libraries/libmdb/mdb.c
+++ b/
libraries/libmdb/mdb.c
@@
-4062,7
+4062,10
@@
current:
/* same size, just replace it */
if (!F_ISSET(leaf->mn_flags, F_BIGDATA) &&
NODEDSZ(leaf) == data->mv_size) {
- memcpy(NODEDATA(leaf), data->mv_data, data->mv_size);
+ if (F_ISSET(flags, MDB_RESERVE))
+ data->mv_data = NODEDATA(leaf);
+ else
+ memcpy(NODEDATA(leaf), data->mv_data, data->mv_size);
goto done;
}
mdb_node_del(mc->mc_pg[mc->mc_top], mc->mc_ki[mc->mc_top], 0);