Ok. Thanks.

In the meanwhile, waiting for v. 3.44, is there any way to let my
program work on that url?
It runs on more than 20 different computers in different part of the
world, so it is hard to patch all of them.

If the new release will come very soon, I could wait for it.



On 28 Dec 2004 05:55:22 -0800, Gisle Aas <[EMAIL PROTECTED]> wrote:
> The Saltydog <[EMAIL PROTECTED]> writes:
> 
> > I am experiencing a "strange" behaviour on linhtml-parser-perl v.3.43
> >
> > The "strange" behaviour is ONLY on
> > this web page:
> >
> > http://communicator.virgilio.it
> 
> HTML::Parser got confused about how quoted strings nest when parsing
> one of the script tags.  This made it assume large parts of the
> document to be the script element.
> 
> This buggy behaviour was introduced in v3.40 (v3.39_91).  The
> following patch fixes this problem and will be present in v3.44 when
> ready.  I expect that to happen soonish.
> 
> Regards,
> Gisle
> 
> Index: hparser.c
> ===================================================================
> RCS file: /cvsroot/libwww-perl/html-parser/hparser.c,v
> retrieving revision 2.118
> retrieving revision 2.119
> diff -u -p -u -r2.118 -r2.119
> --- hparser.c   2 Dec 2004 11:52:32 -0000       2.118
> +++ hparser.c   28 Dec 2004 13:47:44 -0000      2.119
> @@ -1,4 +1,4 @@
> -/* $Id: hparser.c,v 2.118 2004/12/02 11:52:32 gisle Exp $
> +/* $Id: hparser.c,v 2.119 2004/12/28 13:47:44 gisle Exp $
>   *
>   * Copyright 1999-2004, Gisle Aas
>   * Copyright 1999-2000, Michael A. Chase
> @@ -1522,7 +1522,7 @@ parse_buf(pTHX_ PSTATE* p_state, char *b
>                             inside_quote = 0;
>                         else if (*s == '\r' || *s == '\n')
>                             inside_quote = 0;
> -                       else if (*s == '"' || *s == '\'')
> +                       else if (!inside_quote && (*s == '"' || *s == '\''))
>                             inside_quote = *s;
>                     }
>                 }
> 
>

Reply via email to