-C Bump\sthe\sversion\snumber\sin\spreparation\sfor\sthe\snext\srelease.\s(CVS\s1038)
-D 2003-06-29T16:16:41
+C Fix\sa\sbad\smemory\sleak\sin\sthe\sin-memory\sdatabase\smodule.\s(CVS\s1039)
+D 2003-06-29T18:29:48
F Makefile.in 9ad23ed4ca97f9670c4496432e3fbd4b3760ebde
F Makefile.linux-gcc b86a99c493a5bfb402d1d9178dcdc4bd4b32f906
F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd
F src/auth.c c8f50d4507e37779d96ff3c55417bc2b612dfed6
F src/btree.c ba1cc0c71c3d2742b9a9047832335dc7d3656c45
F src/btree.h 9b7c09f1e64274d7bb74a57bbfc63778f67b1048
-F src/btree_rb.c a0dd64f840417b13637160599bd2740c8a340366
+F src/btree_rb.c f30f5cddc4375c05bf361116da1492d9601760ca
F src/build.c 936d10b33b326546280690bee7f20efaf19a6fe8
F src/copy.c 9e47975ea96751c658bcf1a0c4f0bb7c6ee61e73
F src/delete.c 0f81e6799c089487615d38e042a2de4d2d6192bc
F www/sqlite.tcl 3c83b08cf9f18aa2d69453ff441a36c40e431604
F www/tclsqlite.tcl 1db15abeb446aad0caf0b95b8b9579720e4ea331
F www/vdbe.tcl 9b9095d4495f37697fd1935d10e14c6015e80aa1
-P ab21de5fdd8e45be19411cdba647eada0bc9a9f1
-R 6283c1d7d53ae59cf5171d822dee880b
+P 0532e1a8f5a310bb19b55dc29aa5b1f1172a14da
+R 59392850afc02c8699556ed3526bfb9b
U drh
-Z 00a0c99b747a1e0c1094844a2f370c5b
+Z 1045de8580d7f6762e47e878f632486d
-0532e1a8f5a310bb19b55dc29aa5b1f1172a14da
\ No newline at end of file
+9cca95937837333c91f5dee8c48178cf7e06d59f
\ No newline at end of file
** May you share freely, never taking more than you give.
**
*************************************************************************
-** $Id: btree_rb.c,v 1.13 2003/06/10 02:46:15 drh Exp $
+** $Id: btree_rb.c,v 1.14 2003/06/29 18:29:48 drh Exp $
**
** This file implements an in-core database using Red-Black balanced
** binary trees.
return msg;
}
-/*
- * Close the supplied Rbtree. Delete everything associated with it.
- */
-static int memRbtreeClose(Rbtree* tree)
-{
- HashElem *p;
- while( (p=sqliteHashFirst(&tree->tblHash))!=0 ){
- tree->eTransState = TRANS_ROLLBACK;
- memRbtreeDropTable(tree, sqliteHashKeysize(p));
- }
- sqliteHashClear(&tree->tblHash);
- sqliteFree(tree);
- return SQLITE_OK;
-}
-
static int memRbtreeSetCacheSize(Rbtree* tree, int sz)
{
return SQLITE_OK;
return SQLITE_OK;
}
+/*
+ * Close the supplied Rbtree. Delete everything associated with it.
+ */
+static int memRbtreeClose(Rbtree* tree)
+{
+ HashElem *p;
+ memRbtreeCommit(tree);
+ while( (p=sqliteHashFirst(&tree->tblHash))!=0 ){
+ tree->eTransState = TRANS_ROLLBACK;
+ memRbtreeDropTable(tree, sqliteHashKeysize(p));
+ }
+ sqliteHashClear(&tree->tblHash);
+ sqliteFree(tree);
+ return SQLITE_OK;
+}
+
/*
* Execute and delete the supplied rollback-list on pRbtree.
*/