Try to fix url_split() so that the ?foobar part is in the path and only the path.

Originally committed as revision 11347 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Michael Niedermayer 2007-12-29 16:13:03 +00:00
parent 18be65dd79
commit 7ef55085f0
1 changed files with 6 additions and 6 deletions

View File

@ -2941,7 +2941,7 @@ void url_split(char *proto, int proto_size,
char *path, int path_size, char *path, int path_size,
const char *url) const char *url)
{ {
const char *p, *ls, *at, *col, *brk, *q; const char *p, *ls, *at, *col, *brk;
if (port_ptr) *port_ptr = -1; if (port_ptr) *port_ptr = -1;
if (proto_size > 0) proto[0] = 0; if (proto_size > 0) proto[0] = 0;
@ -2962,12 +2962,12 @@ void url_split(char *proto, int proto_size,
} }
/* separate path from hostname */ /* separate path from hostname */
if ((ls = strchr(p, '/'))) { ls = strchr(p, '/');
if ((q = strchr(ls, '?'))) if(!ls)
av_strlcpy(path, ls, FFMIN(path_size, q - ls + 1)); ls = strchr(p, '?');
else if(ls)
av_strlcpy(path, ls, path_size); av_strlcpy(path, ls, path_size);
} else if (!(ls = strchr(p, '?'))) else
ls = &p[strlen(p)]; // XXX ls = &p[strlen(p)]; // XXX
/* the rest is hostname, use that to parse auth/port */ /* the rest is hostname, use that to parse auth/port */