X-Git-Url: http://sjero.net/git/?a=blobdiff_plain;f=src%2Fcss-url.c;h=f97690d6046c155c015b18254a2f690d4442a65e;hb=90896e3314dc1741fbfa9ac53631af43ca7b530e;hp=ab8d67612ca4e54ed6f90ac5e0cd427dedd275e4;hpb=e095cc064eb72ca0cee6d41622e39e7ea3f211a6;p=wget diff --git a/src/css-url.c b/src/css-url.c index ab8d6761..f97690d6 100644 --- a/src/css-url.c +++ b/src/css-url.c @@ -1,6 +1,6 @@ /* Collect URLs from CSS source. - Copyright (C) 1998, 2000, 2001, 2002, 2003, 2009, 2010 Free Software - Foundation, Inc. + Copyright (C) 1998, 2000, 2001, 2002, 2003, 2009, 2010, 2011 Free + Software Foundation, Inc. This file is part of GNU Wget. @@ -55,6 +55,7 @@ as that of the covered work. */ #include "convert.h" #include "html-url.h" #include "css-tokens.h" +#include "css-url.h" /* from lex.yy.c */ extern char *yytext; @@ -107,7 +108,7 @@ const char *token_names[] = { whitespace after the opening parenthesis and before the closing parenthesis. */ -char * +static char * get_uri_string (const char *at, int *pos, int *length) { char *uri; @@ -124,9 +125,11 @@ get_uri_string (const char *at, int *pos, int *length) /* skip leading space */ while (isspace (at[*pos])) { - (*pos)++; - (*length)--; + (*pos)++; + if (--(*length) == 0) + return NULL; } + /* skip trailing space */ while (isspace (at[*pos + *length - 1])) {