From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Thierry Volpiatto Newsgroups: gmane.emacs.bugs Subject: bug#25391: 24.5; ffap-guesser "stack overflow in regexp matcher" error may crash emacs. Date: Sun, 08 Jan 2017 18:28:40 +0100 Message-ID: <8760lp8nqv.fsf@gmail.com> References: <87vatqc8j1.fsf@gmail.com> <87y3yl1tdp.fsf@users.sourceforge.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1483896685 5389 195.159.176.226 (8 Jan 2017 17:31:25 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 8 Jan 2017 17:31:25 +0000 (UTC) User-Agent: mu4e 0.9.19; emacs 26.0.50.2 Cc: 25391@debbugs.gnu.org To: npostavs@users.sourceforge.net Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Jan 08 18:31:19 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cQHJN-0000T3-LV for geb-bug-gnu-emacs@m.gmane.org; Sun, 08 Jan 2017 18:31:17 +0100 Original-Received: from localhost ([::1]:34203 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cQHJS-0004jp-06 for geb-bug-gnu-emacs@m.gmane.org; Sun, 08 Jan 2017 12:31:22 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35165) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cQHHG-0003NO-5r for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2017 12:29:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cQHHC-0003QV-Tq for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2017 12:29:06 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:59887) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cQHHC-0003QF-Os for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2017 12:29:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1cQHHC-0000su-Dd for bug-gnu-emacs@gnu.org; Sun, 08 Jan 2017 12:29:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 08 Jan 2017 17:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25391 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 25391-submit@debbugs.gnu.org id=B25391.14838965333385 (code B ref 25391); Sun, 08 Jan 2017 17:29:02 +0000 Original-Received: (at 25391) by debbugs.gnu.org; 8 Jan 2017 17:28:53 +0000 Original-Received: from localhost ([127.0.0.1]:47053 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cQHH3-0000sW-Fy for submit@debbugs.gnu.org; Sun, 08 Jan 2017 12:28:53 -0500 Original-Received: from mail-wm0-f42.google.com ([74.125.82.42]:37030) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cQHH1-0000sK-Q8 for 25391@debbugs.gnu.org; Sun, 08 Jan 2017 12:28:52 -0500 Original-Received: by mail-wm0-f42.google.com with SMTP id c206so3574799wme.0 for <25391@debbugs.gnu.org>; Sun, 08 Jan 2017 09:28:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version; bh=uRSTDxj3DTxdeB/VAU1YXvVSE31Dj3fgs10jh4/S5mg=; b=e9DZKc4HyjMBMJS4gUZ75Z6l548SfxVYFIP2ikDN3fK3187bKnCDMyIe28hfvaFDEK kzq5aHjAKkvX4hiL1PZANB5cD5DIgCoY9pAKyeAlcHISWnx+5aVr6+qmbuAG8i7N29nO HnhKwi3pJcZIffsZUNjbGuGnhHt4GauCu/YO/lf6hrHmFeq1OlX1KPsdViqSBTu++3Bv LjeBXWpq2LkCAO6Q2Mx2KWBHf5NrrO+GaoDj7ySP/ld5nxjt4Yckkcx67l9ADrvhJjTc ite51kl35zsPowrHujZ8MH/Ldkk2Pwv2bzOePuIZCm9pLnDbbsRV+86o1MyW87WzCC/A Nndw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=uRSTDxj3DTxdeB/VAU1YXvVSE31Dj3fgs10jh4/S5mg=; b=TrTDnc0wyJ8l5q5gHMlOApZ2wPPseAhGezgFZaUWtJrhxoYherWmEfmK+fSp3zUJx8 iqwcjOjHm+pywA84SI8djsphAXMApKJWC9sMDnIKJhLgVh2EHqCMS/nAWcGxLp6irMO7 jqPeAxxD/pJsB0Nn9rfN9isKn29sdmHU+Q9dwfKgfCjcM1TaWnrFUCUkD3edAq9cuCXm UK/ucnhwlJMMclfZf17mZ31WR2jJl728NKoMjKlWH7DdvG9mPhGCcD3NrJFPy9V2KBgA 8wO/uJsLpLpIhoBMD/sAFKVdrXLk0eOkut1z43UdRuaxhOejZzYLaxjd4dk1QVwx9F0H TJZw== X-Gm-Message-State: AIkVDXItGv2Wx035tMKlouqjfA6XXvpNedC1AJBJ/PN1jGWvSbmQVktR/XAMZ4Hz1PAOMA== X-Received: by 10.223.171.195 with SMTP id s61mr10551068wrc.23.1483896526046; Sun, 08 Jan 2017 09:28:46 -0800 (PST) Original-Received: from dell-14z ([37.161.106.149]) by smtp.gmail.com with ESMTPSA id i10sm119842567wjd.15.2017.01.08.09.28.44 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Sun, 08 Jan 2017 09:28:45 -0800 (PST) In-reply-to: <87y3yl1tdp.fsf@users.sourceforge.net> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:127909 Archived-At: npostavs@users.sourceforge.net writes: > Thierry Volpiatto writes: > >> Reproduce from emacs -Q: >> >> 1) require ffap. >> 2) Open a file of about 560k containing only one line, e.g >> "~/emacs.d/elpa/archives/archive-contents" >> 3) M-: (ffap-guesser) >> >> Debugger entered--Lisp error: (error "Variable binding depth exceeds max-specpdl-size") >> looking-at("^.*\\<\\(Type\\|Name\\|Path\\|Host\\|Port\\) *= *\\(.*\\) *$") > [...] >> >> This is reproductible from emacs-26 as well. > > The max-specpdl-size error looks like #24751 (I was planning to push the > patch for that today), but as far as I know, that's only in emacs-26. > emacs-25 and earlier correctly throw "stack overflow in regexp matcher". > Unless you have REL_ALLOC enabled (which is the default for GNU/Linux > distributions with the latest glibc), in which case any buffer search > may crash emacs instead. That's #24358, occurs in 25.1 (and probably > earlier), but it's already fixed in the emacs-25 branch. Also fixable > by configuring with REL_ALLOC=no. Good to know thanks. However, this handle the problem with "Stack overflow in regexp matcher" generally, but perhaps regexps such as `ffap-gopher-regexp` could be avoided when possible in emacs source code. IIUC regexps like "^.*\\(this\\|that etc...\\)" create an incredible number of travels between bol and eol (which may sometimes be eob) and lead to a stack overflow inevitably on long lines (perhaps not so long in this case). Thanks. -- Thierry