Fix some memory leaks.

This commit is contained in:
Hiroshi Inoue 2001-03-14 09:10:04 +00:00
parent ebffbb42ac
commit 08bf4d68de
2 changed files with 8 additions and 0 deletions

View File

@ -425,6 +425,7 @@ char rv = 1;
if (conns[lf] && conns[lf]->henv == self) if (conns[lf] && conns[lf]->henv == self)
rv = rv && CC_Destructor(conns[lf]); rv = rv && CC_Destructor(conns[lf]);
} }
free(self);
mylog("exit EN_Destructor: rv = %d\n", rv); mylog("exit EN_Destructor: rv = %d\n", rv);
return rv; return rv;

View File

@ -58,11 +58,18 @@ SocketClass *rv;
rv->buffer_in = (unsigned char *) malloc(globals.socket_buffersize); rv->buffer_in = (unsigned char *) malloc(globals.socket_buffersize);
if ( ! rv->buffer_in) if ( ! rv->buffer_in)
{
free(rv);
return NULL; return NULL;
}
rv->buffer_out = (unsigned char *) malloc(globals.socket_buffersize); rv->buffer_out = (unsigned char *) malloc(globals.socket_buffersize);
if ( ! rv->buffer_out) if ( ! rv->buffer_out)
{
free(rv->buffer_in);
free(rv);
return NULL; return NULL;
}
rv->errormsg = NULL; rv->errormsg = NULL;
rv->errornumber = 0; rv->errornumber = 0;