[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#53680: Endless loop in peculiar case of string-match and string-matc
From: |
Andreas Schwab |
Subject: |
bug#53680: Endless loop in peculiar case of string-match and string-match-p 27.02 and 28.0.50 |
Date: |
Tue, 01 Feb 2022 12:15:43 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.91 (gnu/linux) |
On Feb 01 2022, Lars Ingebrigtsen wrote:
> I guess the · are supposed to be spaces, so it's:
>
> (string-match
> "[\r\t ]*implements[\r\t ]+\\([\r\t ]*[\\a-zA-Z_0-9_]+,?\\)+[\r\t ]*{$"
> "ariable implements \\Magento\\Framework\\Event\\OberserverInterface\r{\r
> public function __construct()\r ")
>
> And I can reproduce this on master, too. Is it a problem with excessive
> backtracking, perhaps?
It sure is. The nesting of the + operator without proper anchoring
makes the search space explode.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
"And now for something completely different."