vlc | branch: master | Thomas Guillem <[email protected]> | Wed Mar 30 09:44:44 2016 +0200| [86502818041d7b07985ef59e79d862a075443758] | committer: Rémi Denis-Courmont
http: don't try to re-open connection if it previously failed Signed-off-by: Rémi Denis-Courmont <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=86502818041d7b07985ef59e79d862a075443758 --- modules/access/http/file.c | 7 +++++++ modules/access/http/live.c | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/modules/access/http/file.c b/modules/access/http/file.c index 5695c7f..542e6a3 100644 --- a/modules/access/http/file.c +++ b/modules/access/http/file.c @@ -44,6 +44,7 @@ struct vlc_http_file struct vlc_http_resource resource; struct vlc_http_msg *resp; uintmax_t offset; + bool failed; }; static int vlc_http_file_req(struct vlc_http_msg *req, @@ -132,6 +133,7 @@ struct vlc_http_file *vlc_http_file_create(struct vlc_http_mgr *mgr, file->resp = NULL; file->offset = 0; + file->failed = false; return file; } @@ -139,9 +141,14 @@ int vlc_http_file_get_status(struct vlc_http_file *file) { if (file->resp == NULL) { + if (file->failed) + return -1; file->resp = vlc_http_file_open(file, file->offset); if (file->resp == NULL) + { + file->failed = true; return -1; + } } return vlc_http_msg_get_status(file->resp); } diff --git a/modules/access/http/live.c b/modules/access/http/live.c index a1f44cd..8a620e8 100644 --- a/modules/access/http/live.c +++ b/modules/access/http/live.c @@ -35,6 +35,7 @@ struct vlc_http_live { struct vlc_http_resource resource; struct vlc_http_msg *resp; + bool failed; }; static int vlc_http_live_req(struct vlc_http_msg *req, @@ -74,6 +75,7 @@ struct vlc_http_live *vlc_http_live_create(struct vlc_http_mgr *mgr, } live->resp = NULL; + live->failed = false; return live; } @@ -81,9 +83,14 @@ int vlc_http_live_get_status(struct vlc_http_live *live) { if (live->resp == NULL) { + if (live->failed) + return -1; live->resp = vlc_http_live_open(live); if (live->resp == NULL) + { + live->failed = true; return -1; + } } return vlc_http_msg_get_status(live->resp); } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
