outfile parsing.

This commit is contained in:
Kelvin Sherlock 2012-04-28 00:35:51 -04:00
parent 2903af5f60
commit 62754f7431
1 changed files with 19 additions and 17 deletions

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);
@ -293,28 +294,29 @@ int do_gopher(const char *url, URLComponents *components)
} }
if (flags._O) if (flags._O)
{ {
if (!path) if (path)
{ {
fprintf(stderr, "-O flag cannot be used with this URL.\n"); filename = strrchr(path + 2, '/');
return -1; if (filename) // *filename == '/'
}
filename = strrchr(path + 2, '/');
if (filename) // *filename == '/'
{
filename++;
if (!filename[0])
{ {
// path/ ? filename++;
fprintf(stderr, "-O flag cannot be used with this URL.\n"); }
return -1; else
{
filename = path + 2;
} }
} }
else
if (!filename || !filename[0])
{ {
filename = path + 2; // path/ ?
} fprintf(stderr, "-O flag cannot be used with this URL.\n");
free(host);
free(path);
return -1;
}
} }
if (filename) if (filename)