]> sjero.net Git - wget/commitdiff
stsc: -i URL improvements.
authorMicah Cowan <micah@cowan.name>
Tue, 22 Jul 2008 20:33:42 +0000 (13:33 -0700)
committerMicah Cowan <micah@cowan.name>
Tue, 22 Jul 2008 20:33:42 +0000 (13:33 -0700)
doc/ChangeLog
doc/wget.texi
src/ChangeLog
src/init.c
src/retr.c

index 94d724438506e74994eaeb67b83bd008e9361466..4f68780e3c11bd755d0611221811388a85117fc4 100644 (file)
@@ -1,3 +1,10 @@
+2008-07-17  Steven Schubiger  <stsc@members.fsf.org>
+
+       * wget.texi (Logging and Input File Options): Document
+       for --input-file and according remote input file URLs, the
+       implicit enforcement of treating a document as HTML and
+       the possible baseref assumption.
+
 2008-06-29  Micah Cowan  <micah@cowan.name>
 
        * wget.texi <Contributors>: Added Joao Ferreira, Mike Frysinger,
index 50ee459e95c33fc3709566167d6ad7b04c9dc159..6f88e19a93d4ed5d37a04c5b496dbae33bbf6bae 100644 (file)
@@ -497,6 +497,11 @@ relative links, which you can solve either by adding @code{<base
 href="@var{url}">} to the documents or by specifying
 @samp{--base=@var{url}} on the command line.
 
+If the @var{file} is an external one, the document will be automatically
+treated as @samp{html} if the Content-Type matches @samp{text/html}.
+Furthermore, the @var{file}'s location will be implicitly used as base
+href if none was specified.
+
 @cindex force html
 @item -F
 @itemx --force-html
index e551f1c9f176313a2c024fe971ded5402c282252..3e08d0d86722e12b67c0f9209331c53d335f86cc 100644 (file)
@@ -1,3 +1,12 @@
+2008-07-17  Steven Schubiger  <stsc@members.fsf.org>
+
+       * retr.c (retrieve_from_file): When given an URL as input file,
+       use it as baseref if none was specified and treat the input file
+       as HTML if its content type is text/html.
+
+       * init.c (cleanup): Free the memory associated with the base
+       option (when DEBUG_MALLOC is defined).
+
 2008-06-28  Steven Schubiger  <stsc@members.fsf.org>
 
        * retr.c (retrieve_from_file): Allow for reading the links from
index a634fa79612612c83bca66120e155ab88b811f91..d4fc10e3b0f54a62930dec33f0fa3191ea2dc78d 100644 (file)
@@ -1548,6 +1548,8 @@ cleanup (void)
   xfree_null (opt.cookies_output);
   xfree_null (opt.user);
   xfree_null (opt.passwd);
+  xfree_null (opt.base_href);
+  
 #endif /* DEBUG_MALLOC */
 }
 \f
index 58e00d2fe74102909f78cfdaa57ae5cc7caa304e..0fc468377ab0d4f91abe8af6980882bea1505baa 100644 (file)
@@ -830,10 +830,18 @@ retrieve_from_file (const char *file, bool html, int *count)
   
   if (url_has_scheme (url))
     {
+      int dt;
       uerr_t status;
-      status = retrieve_url (url, &input_file, NULL, NULL, NULL, false);
+
+      if (!opt.base_href)
+        opt.base_href = xstrdup (url);
+
+      status = retrieve_url (url, &input_file, NULL, NULL, &dt, false);
       if (status != RETROK)
         return status;
+
+      if (dt & TEXTHTML)
+        html = true;
     }
   else
     input_file = (char *) file;