diff options
-rw-r--r-- | libssh/sftp.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libssh/sftp.c b/libssh/sftp.c index 0c8db3bd..54446eef 100644 --- a/libssh/sftp.c +++ b/libssh/sftp.c @@ -529,7 +529,12 @@ SFTP_DIR *sftp_opendir(SFTP_SESSION *sftp, const char *path){ } memset(dir,0,sizeof(*dir)); dir->sftp=sftp; - dir->name=strdup(path); + dir->name = strdup(path); + if (dir->name == NULL) { + SAFE_FREE(dir); + SAFE_FREE(file); + return NULL; + } dir->handle=file->handle; free(file); } |