diff options
author | Andreas Schneider <mail@cynapses.org> | 2009-04-23 15:10:59 +0000 |
---|---|---|
committer | Andreas Schneider <mail@cynapses.org> | 2009-04-23 15:10:59 +0000 |
commit | 5a84af65fab65fcef1de813ef4f17c13693b45af (patch) | |
tree | b92e186a0d3b202120d4cfaed5d64032b24bf364 /libssh/sftp.c | |
parent | 5d689c2d297e9c3a78b6eb1948f7b3080bb9cd3b (diff) | |
download | libssh-5a84af65fab65fcef1de813ef4f17c13693b45af.tar.gz libssh-5a84af65fab65fcef1de813ef4f17c13693b45af.tar.xz libssh-5a84af65fab65fcef1de813ef4f17c13693b45af.zip |
Improve sftp_close().
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@599 7dcaeef0-15fb-0310-b436-a5af3365683c
Diffstat (limited to 'libssh/sftp.c')
-rw-r--r-- | libssh/sftp.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/libssh/sftp.c b/libssh/sftp.c index fbe21eed..1885b3b1 100644 --- a/libssh/sftp.c +++ b/libssh/sftp.c @@ -1317,18 +1317,18 @@ int sftp_file_close(SFTP_FILE *file) { /* Close an open file handle. */ int sftp_close(SFTP_FILE *file){ - int err=SSH_NO_ERROR; - if(file->name) - free(file->name); - if(file->handle){ - err=sftp_handle_close(file->sftp,file->handle); - free(file->handle); - } - /* FIXME: check server response and implement errno */ - free(file); - return err; -} + int err = SSH_NO_ERROR; + SAFE_FREE(file->name); + if (file->handle){ + err = sftp_handle_close(file->sftp,file->handle); + string_free(file->handle); + } + /* FIXME: check server response and implement errno */ + SAFE_FREE(file); + + return err; +} int sftp_dir_close(SFTP_DIR *dir) { return sftp_closedir(dir); |