]> sjero.net Git - wget/commitdiff
[svn] When downloading recursively, don't ignore rejection of HTML
authorhniksic <devnull@localhost>
Mon, 15 Apr 2002 21:57:10 +0000 (14:57 -0700)
committerhniksic <devnull@localhost>
Mon, 15 Apr 2002 21:57:10 +0000 (14:57 -0700)
documents that are themselves leaves of recursion.

src/ChangeLog
src/recur.c

index a17ffe8eda7dbeac533552a9e06a710612e54052..d9dd76bd6c552556163a372d560fd5e06533debe 100644 (file)
@@ -1,3 +1,8 @@
+2002-04-15  Hrvoje Niksic  <hniksic@arsdigita.com>
+
+       * recur.c (download_child_p): Don't ignore rejection of HTML
+       documents that are themselves leaves of recursion.
+
 2002-04-15  Ian Abbott  <abbotti@mev.co.uk>
 
        Makefile.in: Updated several dependencies for object files to take
@@ -16,6 +21,7 @@
        * utils.c: Don't define `SETJMP()', `run_with_timeout_env' or
        `abort_run_with_timeout()' when `USE_SIGNAL_TIMEOUT' is undefined.
 
+>>>>>>> 1.395
 2002-04-15  Hrvoje Niksic  <hniksic@arsdigita.com>
 
        * host.c (getaddrinfo_with_timeout): New function.
index 1d6a6988934886f4753c46e2bdc1f9f5cfe1a5b9..da27741517bc0bc6dc2a41ed67baeb9099ae78b4 100644 (file)
@@ -511,23 +511,13 @@ download_child_p (const struct urlpos *upos, struct url *parent, int depth,
   /* 6. */
   {
     /* Check for acceptance/rejection rules.  We ignore these rules
-       for HTML documents because they might lead to other files which
-       need to be downloaded.  Of course, we don't know which
-       documents are HTML before downloading them, so we guess.
-
-       A file is subject to acceptance/rejection rules if:
-
-       * u->file is not "" (i.e. it is not a directory)
-       and either:
-         + there is no file suffix,
-        + or there is a suffix, but is not "html" or "htm" or similar,
-        + both:
-          - recursion is not infinite,
-          - and we are at its very end. */
-
+       for directories (no file name to match) and for HTML documents,
+       which might lead to other files that do need to be downloaded.
+       That is, unless we've exhausted the recursion depth anyway.  */
     if (u->file[0] != '\0'
-       && (!has_html_suffix_p (url)
-           || (opt.reclevel != INFINITE_RECURSION && depth >= opt.reclevel)))
+       && !(has_html_suffix_p (u->file)
+            && depth < opt.reclevel - 1
+            && depth != INFINITE_RECURSION))
       {
        if (!acceptable (u->file))
          {