GNU bug report logs - #18738
Reference of a uninitialized variable in grep -P

Previous Next

Package: grep;

Reported by: Norihiro Tanaka <noritnk <at> kcn.ne.jp>

Date: Wed, 15 Oct 2014 16:38:01 UTC

Severity: normal

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Norihiro Tanaka <noritnk <at> kcn.ne.jp>
Subject: bug#18738: closed (Re: bug#18738: Reference of a uninitialized
 variable in grep -P)
Date: Wed, 15 Oct 2014 18:53:03 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#18738: Reference of a uninitialized variable in grep -P

which was filed against the grep package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 18738 <at> debbugs.gnu.org.

-- 
18738: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18738
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Paul Eggert <eggert <at> cs.ucla.edu>
To: Norihiro Tanaka <noritnk <at> kcn.ne.jp>, 18738-done <at> debbugs.gnu.org
Subject: Re: bug#18738: Reference of a uninitialized variable in grep -P
Date: Wed, 15 Oct 2014 11:51:57 -0700
[Message part 3 (text/plain, inline)]
Thanks for reporting that.  It's a bug in one of the optimizations I 
recently added to work around the libpcre slownesses with UTF-8.  It's 
also a bug in our test cases, which should have caught the bug.  I fixed 
it with the attached patch.
[0001-grep-fix-off-by-one-bug-in-P-optimization.patch (text/x-patch, attachment)]
[Message part 5 (message/rfc822, inline)]
From: Norihiro Tanaka <noritnk <at> kcn.ne.jp>
To: bug-grep <at> gnu.org
Subject: Reference of a uninitialized variable in grep -P
Date: Thu, 16 Oct 2014 00:57:07 +0900
A variable validated_boundary is used in grep -P.  However, it isn't
initialized correctly.  I found that it causes reference of the
uninitialized variable and wrong result.

  $ echo . | env LC_ALL=C src/grep -P .
  $ echo . | env LC_ALL=en_US.utf8 src/grep -P .

We expect that they return each one line, but return each no line.  Their
test cases are also used to judge whether pcre option is enabled in tests.
So all tests with pcre option will be skipped by the bug.

Sorry, I have no idea to fix the bug.  BTW, the bug isn't reproduced in
grep-2.20 or prior.




This bug report was last modified 10 years and 227 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.