From 3cbcfa2decdbe2b223f7f878b03a5f33a41a22f5 Mon Sep 17 00:00:00 2001 From: Martin Storsjö Date: Fri, 1 Jun 2012 16:24:47 +0300 Subject: http: Clear the old URLContext pointer when closed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes issues with opening http urls that have authentication or redirects, introduced in commit e999b641. Signed-off-by: Martin Storsjö --- libavformat/http.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'libavformat/http.c') diff --git a/libavformat/http.c b/libavformat/http.c index 22600b4e4a..61266dfb01 100644 --- a/libavformat/http.c +++ b/libavformat/http.c @@ -161,6 +161,7 @@ static int http_open_cnx(URLContext *h) if ((cur_auth_type == HTTP_AUTH_NONE || s->auth_state.stale) && s->auth_state.auth_type != HTTP_AUTH_NONE && attempts < 4) { ffurl_close(hd); + s->hd = hd = NULL; goto redo; } else goto fail; @@ -169,6 +170,7 @@ static int http_open_cnx(URLContext *h) if ((cur_proxy_auth_type == HTTP_AUTH_NONE || s->proxy_auth_state.stale) && s->proxy_auth_state.auth_type != HTTP_AUTH_NONE && attempts < 4) { ffurl_close(hd); + s->hd = hd = NULL; goto redo; } else goto fail; @@ -177,6 +179,7 @@ static int http_open_cnx(URLContext *h) && location_changed == 1) { /* url moved, get next */ ffurl_close(hd); + s->hd = hd = NULL; if (redirects++ >= MAX_REDIRECTS) return AVERROR(EIO); /* Restart the authentication process with the new target, which -- cgit v1.2.3