From 6f13a93be9b0446cd90d04551b21b6898f24b366 Mon Sep 17 00:00:00 2001 From: Sara Golemon Date: Fri, 24 Dec 2004 03:49:25 +0000 Subject: [PATCH] Fix crash in sftp_close_handle. Don't free dir handle data when it's not a dir handle! --- README | 5 +++++ src/sftp.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README b/README index b4816f6..fd3a74c 100644 --- a/README +++ b/README @@ -1,6 +1,11 @@ libssh2 - SSH2 library ====================== +Version 0.4 +----------- + + Fixed crash when trying to free sftp_dirhandle data from a filehandle struct. + Version 0.3 ----------- diff --git a/src/sftp.c b/src/sftp.c index 3e99cb3..ecbf87d 100644 --- a/src/sftp.c +++ b/src/sftp.c @@ -950,7 +950,8 @@ LIBSSH2_API int libssh2_sftp_close_handle(LIBSSH2_SFTP_HANDLE *handle) handle->next->prev = NULL; } - if (handle->u.dir.names_left) { + if ((handle->handle_type == LIBSSH2_SFTP_HANDLE_DIR) && + handle->u.dir.names_left) { LIBSSH2_FREE(session, handle->u.dir.names_packet); }