[dovecot-cvs] dovecot/src/lib mempool-alloconly.c,1.20,1.21

cras at procontrol.fi cras at procontrol.fi
Fri Apr 11 02:37:03 EEST 2003


Update of /home/cvs/dovecot/src/lib
In directory danu:/tmp/cvs-serv17846/lib

Modified Files:
	mempool-alloconly.c 
Log Message:
p_clear() left only the smallest block, not the largest block



Index: mempool-alloconly.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib/mempool-alloconly.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- mempool-alloconly.c	8 Feb 2003 18:58:49 -0000	1.20
+++ mempool-alloconly.c	10 Apr 2003 22:37:01 -0000	1.21
@@ -240,10 +240,10 @@
 	struct alloconly_pool *apool = (struct alloconly_pool *) pool;
 	struct pool_block *block;
 
-	/* destroy all blocks but the last, which is the largest */
+	/* destroy all blocks but the first, which is the largest */
 	while (apool->block->prev != NULL) {
-		block = apool->block;
-		apool->block = block->prev;
+		block = apool->block->prev;
+		apool->block->prev = block->prev;
 
 #ifdef DEBUG
 		memset(block, 0xde, SIZEOF_POOLBLOCK + block->size);
@@ -251,7 +251,7 @@
 		free(block);
 	}
 
-	/* clear the last block */
+	/* clear the block */
 	memset(POOL_BLOCK_DATA(apool->block), 0,
 	       apool->block->size - apool->block->left);
 	apool->block->left = apool->block->size;




More information about the dovecot-cvs mailing list