From b5eb33bb69c9d5331b6f6c1cc922976c36c1d299 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Fri, 3 Apr 2009 12:50:17 +0000 Subject: Improve ssh_socket_free(). git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@381 7dcaeef0-15fb-0310-b436-a5af3365683c --- libssh/socket.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'libssh/socket.c') diff --git a/libssh/socket.c b/libssh/socket.c index 0fe4ad5..d587f49 100644 --- a/libssh/socket.c +++ b/libssh/socket.c @@ -120,10 +120,13 @@ struct socket *ssh_socket_new(SSH_SESSION *session) { * \brief Deletes a socket object */ void ssh_socket_free(struct socket *s){ - ssh_socket_close(s); - buffer_free(s->in_buffer); - buffer_free(s->out_buffer); - free(s); + if (s == NULL) { + return; + } + ssh_socket_close(s); + buffer_free(s->in_buffer); + buffer_free(s->out_buffer); + SAFE_FREE(s); } #ifndef _WIN32 -- cgit