Re: [pcre-dev] PCRE: Access Violation with studied pattern

Top Page
Delete this message
Author: Philip Hazel
Date:  
To: Ralf Junker
CC: pcre-dev@exim.org
Subject: Re: [pcre-dev] PCRE: Access Violation with studied pattern
On Fri, 4 Jun 2010, Ralf Junker wrote:

> The attached pcretest input causes PCRE to abort with an access violation at
> pcre_exec.c, line 4828.


It does not abort for me (Gentoo Linux).

> The error happens only if PCRE_UTF8 is defined and if the pattern is studied.
> If the subject is any shorter than given, there is no error. However, it may
> be longer.


> I would appreciate if a fix would make it into 8.10 final.


I would if I could make it fail!

> I just found the time to test PCRE 8.10 RC 1. Unfortunately, it also
> shows the access violation, at the same place in pcre_exec.c, now line
> 5217.


That is very odd indeed. The studying shows that, in order to match,
there must be a whitespace character or an "x" in the input at the start
of the match, and neither are present in your data line. Therefore,
pcre_exec() shouldn't even start to try, and should never get anywhere
near line 5217. I have just traced the execution on my box, and indeed
it never tries to run the match.

So...the question is, why are you seeing something different? We should
try to solve this problem before I release 8.10.

Philip

--
Philip Hazel