#include "hash.h"
#include "convert.h"
#include "ptimer.h"
-#include "iri.h"
#include "html-url.h"
/* Total size of downloaded files. Used to enforce quota. */
return URLERROR;
}
- printf ("[Retrieving %s with %s (UTF-8=%d)\n", url, iri->uri_encoding, iri->utf8_encode);
+ DEBUGP (("[IRI Retrieving %s with %s (UTF-8=%d)\n", quote (url),
+ iri->uri_encoding ? quote (iri->uri_encoding) : "None",
+ iri->utf8_encode));
if (!refurl)
refurl = opt.referer;
{
/* sXXXav : could a proxy include a path ??? */
struct iri *pi = iri_new ();
- set_uri_encoding (pi, opt.locale);
+ set_uri_encoding (pi, opt.locale, true);
pi->utf8_encode = false;
/* Parse the proxy URL. */
if (!(*dt & RETROKF) && iri->utf8_encode)
{
iri->utf8_encode = false;
- printf ("[Fallbacking to non-utf8 for `%s'\n", url);
+ DEBUGP (("[IRI Fallbacking to non-utf8 for %s\n", quote (url)));
goto second_try;
}
if (url_has_scheme (url))
{
+ int dt;
uerr_t status;
- status = retrieve_url (url, &input_file, NULL, NULL, NULL, false, iri);
+
+ if (!opt.base_href)
+ opt.base_href = xstrdup (url);
+
+ status = retrieve_url (url, &input_file, NULL, NULL, &dt, false, iri);
if (status != RETROK)
return status;
+
+ if (dt & TEXTHTML)
+ html = true;
}
else
input_file = (char *) file;
struct url *u;
struct iri *i = iri_new();
/* url was given in the command line, so use locale as encoding */
- set_uri_encoding (i, opt.locale);
+ set_uri_encoding (i, opt.locale, true);
u= url_parse (url, NULL, i);
if (!u)
return false;