7809d0
*** btree/bt_split.c.orig	Sat Feb  8 10:14:10 1997
7809d0
--- btree/bt_split.c	Sat Feb  8 10:14:51 1997
7809d0
***************
7809d0
*** 673,679 ****
7809d0
  		 * where we decide to try and copy too much onto the left page.
7809d0
  		 * Make sure that doesn't happen.
7809d0
  		 */
7809d0
! 		if (skip <= off && used + nbytes >= full || nxt == top - 1) {
7809d0
  			--off;
7809d0
  			break;
7809d0
  		}
7809d0
--- 673,680 ----
7809d0
  		 * where we decide to try and copy too much onto the left page.
7809d0
  		 * Make sure that doesn't happen.
7809d0
  		 */
7809d0
! 		if (skip <= off &&
7809d0
! 		    used + nbytes + sizeof(indx_t) >= full || nxt == top - 1) {
7809d0
  			--off;
7809d0
  			break;
7809d0
  		}
7809d0
***************
7809d0
*** 686,692 ****
7809d0
  			memmove((char *)l + l->upper, src, nbytes);
7809d0
  		}
7809d0
  
7809d0
! 		used += nbytes;
7809d0
  		if (used >= half) {
7809d0
  			if (!isbigkey || bigkeycnt == 3)
7809d0
  				break;
7809d0
--- 687,693 ----
7809d0
  			memmove((char *)l + l->upper, src, nbytes);
7809d0
  		}
7809d0
  
7809d0
! 		used += nbytes + sizeof(indx_t);
7809d0
  		if (used >= half) {
7809d0
  			if (!isbigkey || bigkeycnt == 3)
7809d0
  				break;