GNU bug report logs - #17066
a DFA state which is built previously may be re-built in non-UTF8 locales

Previous Next

Package: grep;

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

Date: Sat, 22 Mar 2014 07:00:02 UTC

Severity: normal

Tags: patch

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#17066: closed (Re: bug#17066: a DFA state which is built
 previously may be re-built in non-UTF8 locales)
Date: Wed, 02 Apr 2014 05:26:04 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#17066: a DFA state which is built previously may be re-built in non-UTF8 locales

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 17066 <at> debbugs.gnu.org.

-- 
17066: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17066
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: Paolo Bonzini <bonzini <at> gnu.org>, Norihiro Tanaka <noritnk <at> kcn.ne.jp>, 
 17066-done <at> debbugs.gnu.org
Subject: Re: bug#17066: a DFA state which is built previously may be re-built
 in non-UTF8 locales
Date: Tue, 01 Apr 2014 22:25:40 -0700
Paolo Bonzini wrote:
> Thanks, I'll apply this patch.

Thanks, closing this bug report as done.

[Message part 3 (message/rfc822, inline)]
From: Norihiro Tanaka <noritnk <at> kcn.ne.jp>
To: submit <at> debbugs.gnu.org
Subject: a DFA state which is built previously may be re-built in non-UTF8
 locales
Date: Sat, 22 Mar 2014 15:59:11 +0900
[Message part 4 (text/plain, inline)]
Package: grep

When don't pass backref parameter to dfaexec(), a DFA state which is built
previously may be re-built.

In non-UTF8 locales, when reach a state which mbps aren't empty, exit
main loop and call build_state() in dfa.c, even if the state has been
already built.

That will cause increase of processing time, and waste of a lot of
memories.

Fortunately, grep program doesn't pass the code in dfa.c unless
mblen_buf overflows, since backref parameter is specified when dfaexec()
is called with large buffer.

Norihiro
[patch.txt (text/plain, attachment)]

This bug report was last modified 11 years and 48 days ago.

Previous Next


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