]> sjero.net Git - wget/blobdiff - src/html-url.c
[mq]: cfg-mk
[wget] / src / html-url.c
index 68a8bc3c7a132d8f56b540dff72235f39845a9b0..f938c80c2b81685c8ef2cac374d3c61cfae53c41 100644 (file)
@@ -1,6 +1,6 @@
 /* Collect URLs from HTML source.
    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-   2007, 2008 Free Software Foundation, Inc.
+   2007, 2008, 2009 Free Software Foundation, Inc.
 
 This file is part of GNU Wget.
 
@@ -590,15 +590,25 @@ tag_handle_meta (int tagid, struct taginfo *tag, struct map_context *ctx)
         {
           while (*content)
             {
-              /* Find the next occurrence of ',' or the end of
-                 the string.  */
-              char *end = strchr (content, ',');
-              if (end)
-                ++end;
-              else
-                end = content + strlen (content);
+              char *end;
+              /* Skip any initial whitespace. */
+              content += strspn (content, " \f\n\r\t\v");
+              /* Find the next occurrence of ',' or whitespace,
+               * or the end of the string.  */
+              end = content + strcspn (content, ", \f\n\r\t\v");
               if (!strncasecmp (content, "nofollow", end - content))
                 ctx->nofollow = true;
+              /* Skip past the next comma, if any. */
+              if (*end == ',')
+                ++end;
+              else
+                {
+                  end = strchr (end, ',');
+                  if (end)
+                    ++end;
+                  else
+                    end = content + strlen (content);
+                }
               content = end;
             }
         }
@@ -615,7 +625,7 @@ collect_tags_mapper (struct taginfo *tag, void *arg)
 
   /* Find the tag in our table of tags.  This must not fail because
      map_html_tags only returns tags found in interesting_tags.
-     
+
      I've changed this for now, I'm passing NULL as interesting_tags
      to map_html_tags.  This way we can check all tags for a style
      attribute.