aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2019-05-05 20:40:06 +0200
committerMarton Balint <cus@passwd.hu>2019-05-18 17:07:21 +0200
commitc61d16cf3b815388c076c2a35b5c91e84b45d7be (patch)
treeea9b04188a0deaffc3bb3a4c5e22b90fedce4a98
parent96c79d4e1fd87dbedfd70ed876ee257ddda2ba90 (diff)
downloadffmpeg-c61d16cf3b815388c076c2a35b5c91e84b45d7be.tar.gz
Revert "lavf/utils: Allow url credentials to contain a slash."
This reverts commit dd06f022b07438d650c82255dff16908ba04244a. Fixes ticket #7871 and reopens ticket #7816. The introduced regression caused URL's with @ in them to be parsed incorrectly which is a bigger issue then not being able to specify the slash character as a password. I think there are better ways to fix the original issue, like being able to specify HTTP username and password as a protocol option, or adding a protocol option to percent-decode the URL first. Signed-off-by: Marton Balint <cus@passwd.hu>
-rw-r--r--libavformat/utils.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index a63d71b0f4..6ef94239a4 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -4730,7 +4730,7 @@ void av_url_split(char *proto, int proto_size,
char *hostname, int hostname_size,
int *port_ptr, char *path, int path_size, const char *url)
{
- const char *p, *ls, *ls2, *ls3, *at, *at2, *col, *brk;
+ const char *p, *ls, *ls2, *at, *at2, *col, *brk;
if (port_ptr)
*port_ptr = -1;
@@ -4760,9 +4760,6 @@ void av_url_split(char *proto, int proto_size,
/* separate path from hostname */
ls = strchr(p, '/');
ls2 = strchr(p, '?');
- ls3 = strchr(p, '@');
- if (ls3 && ls3 > ls && (!ls2 || ls2 > ls3))
- ls = strchr(ls3, '/');
if (!ls)
ls = ls2;
else if (ls && ls2)