commit 175f0af979bfdb6dfde1535dd7de6a452cf98e32 from: Alexander Barton date: Mon Jan 05 11:58:37 2009 UTC Clean up channel allocation table on shutdown/restart. Silly bug: the condition of a while() loop in the Channel_Exit() function used the wrong variable and therefore got never executed ... This bug is in the code since the beginning (see commit bb19cfda in 2002); shame on me! commit - 40a0e9abbe8cfd959dd920f2af32976f1eda1a6a commit + 175f0af979bfdb6dfde1535dd7de6a452cf98e32 blob - ba5e72516fb0f4e41cc46837e2a54a87d61836d9 blob + 9a59712ade71a4f986aec3a2d8cdd2cabba67c44 --- src/ngircd/channel.c +++ src/ngircd/channel.c @@ -1,6 +1,6 @@ /* * ngIRCd -- The Next Generation IRC Daemon - * Copyright (c)2001-2008 by Alexander Barton (alex@barton.de) + * Copyright (c)2001-2009 Alexander Barton (alex@barton.de) * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -174,10 +174,9 @@ Channel_Exit( void ) /* Free Channel allocation table */ cl2chan = My_Cl2Chan; - while( c ) - { + while (cl2chan) { cl2chan_next = cl2chan->next; - free( cl2chan ); + free(cl2chan); cl2chan = cl2chan_next; } } /* Channel_Exit */