summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavformat/libssh.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/libavformat/libssh.c b/libavformat/libssh.c
index 87a2a7f9df..3ec60cb8f4 100644
--- a/libavformat/libssh.c
+++ b/libavformat/libssh.c
@@ -167,13 +167,18 @@ static av_cold void libssh_stat_file(LIBSSHContext *libssh)
static av_cold int libssh_close(URLContext *h)
{
LIBSSHContext *libssh = h->priv_data;
- if (libssh->file)
+ if (libssh->file) {
sftp_close(libssh->file);
- if (libssh->sftp)
+ libssh->file = NULL;
+ }
+ if (libssh->sftp) {
sftp_free(libssh->sftp);
+ libssh->sftp = NULL;
+ }
if (libssh->session) {
ssh_disconnect(libssh->session);
ssh_free(libssh->session);
+ libssh->session = NULL;
}
return 0;
}