Loading...
db/btree/FreeBSD/bt_seq.c.patch /dev/null Libc-594.9.4
--- /dev/null
+++ Libc/Libc-594.9.4/db/btree/FreeBSD/bt_seq.c.patch
@@ -0,0 +1,24 @@
+--- bt_seq.c.orig	2008-10-09 11:40:48.000000000 -0700
++++ bt_seq.c	2008-10-09 11:43:28.000000000 -0700
+@@ -387,18 +387,19 @@ __bt_first(t, key, erval, exactp)
+ 			 * occurs.
+ 			 */
+ 			if (ep->index == 0) {
++				PAGE *hprev;
+ 				if (h->prevpg == P_INVALID)
+ 					break;
+ 				if (h->pgno != save.page->pgno)
+ 					mpool_put(t->bt_mp, h, 0);
+-				if ((h = mpool_get(t->bt_mp,
++				if ((hprev = mpool_get(t->bt_mp,
+ 				    h->prevpg, 0)) == NULL) {
+ 					if (h->pgno == save.page->pgno)
+ 						mpool_put(t->bt_mp,
+ 						    save.page, 0);
+ 					return (RET_ERROR);
+ 				}
+-				ep->page = h;
++				ep->page = h = hprev;
+ 				ep->index = NEXTINDEX(h);
+ 			}
+ 			--ep->index;