From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jan Stranik via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#53333: Fix for crash in ebrowse Date: Mon, 17 Jan 2022 17:35:36 -0500 Message-ID: <87fspm0z47.fsf@stranik.org> Reply-To: Jan Stranik Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10006"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) To: 53333@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Jan 18 01:57:05 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1n9co5-0002OX-5k for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 18 Jan 2022 01:57:05 +0100 Original-Received: from localhost ([::1]:54274 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n9co3-0007M1-QS for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 17 Jan 2022 19:57:03 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:44812) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n9cnP-0007LD-TR for bug-gnu-emacs@gnu.org; Mon, 17 Jan 2022 19:56:24 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:55564) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1n9cn4-0000to-OL for bug-gnu-emacs@gnu.org; Mon, 17 Jan 2022 19:56:20 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1n9cn4-0003q9-Ib for bug-gnu-emacs@gnu.org; Mon, 17 Jan 2022 19:56:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jan Stranik Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 18 Jan 2022 00:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 53333 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.164246732414710 (code B ref -1); Tue, 18 Jan 2022 00:56:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 18 Jan 2022 00:55:24 +0000 Original-Received: from localhost ([127.0.0.1]:48467 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9cmO-0003p9-Bs for submit@debbugs.gnu.org; Mon, 17 Jan 2022 19:55:24 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:54384) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1n9abJ-0000T3-4E for submit@debbugs.gnu.org; Mon, 17 Jan 2022 17:35:46 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:52930) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n9abI-0005m5-Nu for bug-gnu-emacs@gnu.org; Mon, 17 Jan 2022 17:35:44 -0500 Original-Received: from stranik.org ([95.216.183.163]:57757) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n9abH-0007Gm-63 for bug-gnu-emacs@gnu.org; Mon, 17 Jan 2022 17:35:44 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=stranik.org ; s=2020nix; h=Subject:To:From; bh=Z8bBYTNy8gpaASmgNQn5Wvfg30laN2CchNfNVprHCd4=; b=FCdTtyd91pJbAzxxDdn1R5hBDA Chu5QROUPb+EsTrB5kMv+BF8yX7st0cvcc+cl7SyAtS4T9Yer69Cd7VUq7GQoNlMPG6Ew1p5UwmRF tSZoh7UzYNL5dM0d1nY4GxallWVcmrNwXwODFvFvoXPlXMwabOy2OzeUJRoA60tbz1FQ=; Original-Received: from ool-2f14040e.dyn.optonline.net ([47.20.4.14] helo=localhost) by stranik.org with esmtpsa (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1n9abB-00051k-Rp for bug-gnu-emacs@gnu.org; Mon, 17 Jan 2022 22:35:38 +0000 Received-SPF: pass client-ip=95.216.183.163; envelope-from=jan@stranik.org; helo=stranik.org X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Mon, 17 Jan 2022 19:55:18 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:224487 Archived-At: --=-=-= Content-Type: text/plain Hello -- attached is a patch to ebrowse. Noticed a one-off write error in case of identifiers that are too long and need escaping. The patch prevents the write to memory outside of allocated range which on my platform caused segfault. Best, --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=ebrowse-emacs-27.2-fix.diff Dont crash on C source code (one off error) The fix avoids one off error in case the last character in the buffer needs to be escaped but there is not enough space in buffer to perform the escape. The change just simiply ignores the character in such case. Author: Jan Stranik *** /var/home/janstranik/src/emacs-27.2/lib-src/ebrowse.c~ 2021-01-28 11:52:16.000000000 -0600 --- /var/home/janstranik/src/emacs-27.2/lib-src/ebrowse.c 2021-09-24 09:31:49.136287028 -0500 *************** *** 1924,1931 **** { *--s = *--t; ! if (*s == '"' || *s == '\\') ! *--s = '\\'; } *(matching_regexp_end_buf - 1) = '\0'; --- 1924,1937 ---- { *--s = *--t; ! if (*s == '"' || *s == '\\') { ! if (s > matching_regexp_buffer) ! *--s = '\\'; ! else { ! s++; ! break; ! } ! } } *(matching_regexp_end_buf - 1) = '\0'; --=-=-= Content-Type: text/plain -- Jan Stranik --=-=-=--