diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/tool_operate.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/tool_operate.c b/src/tool_operate.c index c9dda40b2..669d2dd46 100644 --- a/src/tool_operate.c +++ b/src/tool_operate.c @@ -129,6 +129,10 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[]) struct OutStruct heads; +#ifdef HAVE_LIBMETALINK + struct metalinkfile *mlfile_last; +#endif /* HAVE_LIBMETALINK */ + CURL *curl = NULL; char *httpgetfields = NULL; @@ -389,8 +393,7 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[]) } #ifdef HAVE_LIBMETALINK - config->metalinkfile_last = config->metalinkfile_list; - config->metalink_last = config->metalink_list; + mlfile_last = config->metalinkfile_list; #endif /* HAVE_LIBMETALINK */ /* @@ -416,9 +419,9 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[]) if(urlnode->flags & GETOUT_METALINK) { metalink = 1; - mlfile = config->metalinkfile_last; + mlfile = mlfile_last; + mlfile_last = mlfile_last->next; mlres = mlfile->file->resources; - config->metalinkfile_last = config->metalinkfile_last->next; } else { metalink = 0; @@ -1556,6 +1559,17 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[]) } } #endif + +#ifdef HAVE_LIBMETALINK + if(!metalink && res == CURLE_OK && outs.filename) { + char *content_type; + curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &content_type); + if(content_type != NULL) { + printf("file=%s, content-type=%s\n", outs.filename, content_type); + } + } +#endif /* HAVE_LIBMETALINK */ + /* No more business with this output struct */ if(outs.alloc_filename) Curl_safefree(outs.filename); |