mdb_cursor_prev,mdb_cursor_next: Fix return value.

Return mdb_node_read()'s return value if it fails, not 1.
(Can happen if mdb_page_get() fails and NDEBUG is #defined.)
vmware
Hallvard Furuseth 12 years ago
parent e4af9ee5da
commit 2dbb8bb833
  1. 4
      libraries/liblmdb/mdb.c

@ -4262,7 +4262,7 @@ mdb_cursor_next(MDB_cursor *mc, MDB_val *key, MDB_val *data, MDB_cursor_op op)
mdb_xcursor_init1(mc, leaf); mdb_xcursor_init1(mc, leaf);
} }
if (data) { if (data) {
if ((rc = mdb_node_read(mc->mc_txn, leaf, data) != MDB_SUCCESS)) if ((rc = mdb_node_read(mc->mc_txn, leaf, data)) != MDB_SUCCESS)
return rc; return rc;
if (F_ISSET(leaf->mn_flags, F_DUPDATA)) { if (F_ISSET(leaf->mn_flags, F_DUPDATA)) {
@ -4335,7 +4335,7 @@ mdb_cursor_prev(MDB_cursor *mc, MDB_val *key, MDB_val *data, MDB_cursor_op op)
mdb_xcursor_init1(mc, leaf); mdb_xcursor_init1(mc, leaf);
} }
if (data) { if (data) {
if ((rc = mdb_node_read(mc->mc_txn, leaf, data) != MDB_SUCCESS)) if ((rc = mdb_node_read(mc->mc_txn, leaf, data)) != MDB_SUCCESS)
return rc; return rc;
if (F_ISSET(leaf->mn_flags, F_DUPDATA)) { if (F_ISSET(leaf->mn_flags, F_DUPDATA)) {

Loading…
Cancel
Save