diff options
author | Marton Balint <cus@passwd.hu> | 2019-05-05 20:40:06 +0200 |
---|---|---|
committer | Marton Balint <cus@passwd.hu> | 2019-05-18 17:07:21 +0200 |
commit | c61d16cf3b815388c076c2a35b5c91e84b45d7be (patch) | |
tree | ea9b04188a0deaffc3bb3a4c5e22b90fedce4a98 | |
parent | 96c79d4e1fd87dbedfd70ed876ee257ddda2ba90 (diff) | |
download | ffmpeg-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.c | 5 |
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) |