outfile parsing.

This commit is contained in:
Kelvin Sherlock 2012-04-28 00:35:51 -04:00
parent 2903af5f60
commit 62754f7431

View File

@ -268,6 +268,7 @@ int do_gopher(const char *url, URLComponents *components)
host = URLComponentGetCMalloc(url, components, URLComponentHost); host = URLComponentGetCMalloc(url, components, URLComponentHost);
path = URLComponentGetCMalloc(url, components, URLComponentPath); path = URLComponentGetCMalloc(url, components, URLComponentPath);
if (!host) if (!host)
{ {
fprintf(stderr, "URL `%s': no host.", url); fprintf(stderr, "URL `%s': no host.", url);
@ -294,27 +295,28 @@ int do_gopher(const char *url, URLComponents *components)
if (flags._O) if (flags._O)
{ {
if (!path) if (path)
{ {
filename = strrchr(path + 2, '/');
if (filename) // *filename == '/'
{
filename++;
}
else
{
filename = path + 2;
}
}
if (!filename || !filename[0])
{
// path/ ?
fprintf(stderr, "-O flag cannot be used with this URL.\n"); fprintf(stderr, "-O flag cannot be used with this URL.\n");
free(host);
free(path);
return -1; return -1;
} }
filename = strrchr(path + 2, '/');
if (filename) // *filename == '/'
{
filename++;
if (!filename[0])
{
// path/ ?
fprintf(stderr, "-O flag cannot be used with this URL.\n");
return -1;
}
}
else
{
filename = path + 2;
}
} }
if (filename) if (filename)