bt_split.c.patch   [plain text]


--- bt_split.c.orig	2009-11-06 12:39:34.000000000 -0800
+++ bt_split.c	2009-11-06 12:40:06.000000000 -0800
@@ -201,7 +201,7 @@ __bt_split(BTREE *t, PAGE *sp, const DBT
 			nbytes = NRINTERNAL;
 			break;
 		default:
-			abort();
+			LIBC_ABORT("illegal rchild->flags & P_TYPE (0x%x)", rchild->flags & P_TYPE);
 		}
 
 		/* Split the parent page if necessary or shift the indices. */
@@ -276,7 +276,7 @@ __bt_split(BTREE *t, PAGE *sp, const DBT
 			((RINTERNAL *)dest)->pgno = rchild->pgno;
 			break;
 		default:
-			abort();
+			LIBC_ABORT("illegal rchild->flags & P_TYPE (0x%x)", rchild->flags & P_TYPE);
 		}
 
 		/* Unpin the held pages. */
@@ -556,7 +556,7 @@ bt_broot(BTREE *t, PAGE *h, PAGE *l, PAG
 		((BINTERNAL *)dest)->pgno = r->pgno;
 		break;
 	default:
-		abort();
+		LIBC_ABORT("illegal h->flags & P_TYPE (0x%x)", h->flags & P_TYPE);
 	}
 
 	/* There are two keys on the page. */
@@ -635,7 +635,7 @@ bt_psplit(BTREE *t, PAGE *h, PAGE *l, PA
 				isbigkey = 0;
 				break;
 			default:
-				abort();
+				LIBC_ABORT("illegal h->flags & P_TYPE (0x%x)", h->flags & P_TYPE);
 			}
 
 		/*
@@ -728,7 +728,7 @@ bt_psplit(BTREE *t, PAGE *h, PAGE *l, PA
 			nbytes = NRLEAF(rl);
 			break;
 		default:
-			abort();
+			LIBC_ABORT("illegal h->flags & P_TYPE (0x%x)", h->flags & P_TYPE);
 		}
 		++nxt;
 		r->linp[off] = r->upper -= nbytes;