GNU bug report logs - #20128
24.4; Bad regex in composition-function-table hangs Emacs

Previous Next

Package: emacs;

Reported by: Richard Wordingham <richard.wordingham <at> ntlworld.com>

Date: Tue, 17 Mar 2015 19:46:01 UTC

Severity: minor

Tags: wontfix

Found in version 24.4

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 20128 in the body.
You can then email your comments to 20128 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#20128; Package emacs. (Tue, 17 Mar 2015 19:46:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Richard Wordingham <richard.wordingham <at> ntlworld.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 17 Mar 2015 19:46:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Richard Wordingham <richard.wordingham <at> ntlworld.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.4; Bad regex in composition-function-table hangs Emacs
Date: Tue, 17 Mar 2015 19:45:04 +0000
Loading an Emacs lisp file (e.g. by load-file in .emacs) containing the
commands:

(defvar tai-tham-composable-pattern
  (let ((table
	 '(
	   ("C" . "[\u1A20-\u1A54") ; Missing ']'!
	   ("M" . "[\u1A55-\u1A5E\u1A61-\u1A7C\u1A7F]"); Mark
	   ("H" . "\u1A60") ; sakot
	   ("N" . "\u1A58"))) ; mai kang lai
	(regexp "C\\(M|HC\\)*\\(NC\\(M|HC\\)*\\)*N?"))
    (let ((case-fold-search nil))
      (dolist (elt table)
	(setq regexp (replace-regexp-in-string (car elt) (cdr elt)
					       regexp t t))))
    regexp))

(let ((elt (list (vector tai-tham-composable-pattern 0
'font-shape-gstring)
                 (vector "." 0 'font-shape-gstring) )))
  (set-char-table-range composition-function-table '(#x1A20 . #x1AAD)
elt))

causes Emacs to hang when a character in the range U+1A20 to U+1AAD
needs to be rendered.  Now, the value of tai-tham-composable-pattern is
an unbalanced regex, so that may be the cause of the problem.

The problem also occurs in Emacs 23.3.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#20128; Package emacs. (Fri, 02 Aug 2019 12:37:01 GMT) Full text and rfc822 format available.

Message #8 received at 20128 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Richard Wordingham <richard.wordingham <at> ntlworld.com>
Cc: 20128 <at> debbugs.gnu.org
Subject: Re: bug#20128: 24.4; Bad regex in composition-function-table hangs
 Emacs
Date: Fri, 02 Aug 2019 14:35:55 +0200
Richard Wordingham <richard.wordingham <at> ntlworld.com> writes:

> Loading an Emacs lisp file (e.g. by load-file in .emacs) containing the
> commands:
>
> (defvar tai-tham-composable-pattern
>   (let ((table
> 	 '(
> 	   ("C" . "[\u1A20-\u1A54") ; Missing ']'!
> 	   ("M" . "[\u1A55-\u1A5E\u1A61-\u1A7C\u1A7F]"); Mark
> 	   ("H" . "\u1A60") ; sakot
> 	   ("N" . "\u1A58"))) ; mai kang lai
> 	(regexp "C\\(M|HC\\)*\\(NC\\(M|HC\\)*\\)*N?"))
>     (let ((case-fold-search nil))
>       (dolist (elt table)
> 	(setq regexp (replace-regexp-in-string (car elt) (cdr elt)
> 					       regexp t t))))
>     regexp))
>
> (let ((elt (list (vector tai-tham-composable-pattern 0
> 'font-shape-gstring)
>                  (vector "." 0 'font-shape-gstring) )))
>   (set-char-table-range composition-function-table '(#x1A20 . #x1AAD)
> elt))
>
> causes Emacs to hang when a character in the range U+1A20 to U+1AAD
> needs to be rendered.  Now, the value of tai-tham-composable-pattern is
> an unbalanced regex, so that may be the cause of the problem.

(I'm going through old bug reports that unfortunately have not received
any responses yet.)

I don't think you can reasonably expect Emacs to work properly when you
have put invalid regexps into a function like that, so I'm closing this
bug as a "wontfix".

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) wontfix. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Fri, 02 Aug 2019 12:37:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 20128 <at> debbugs.gnu.org and Richard Wordingham <richard.wordingham <at> ntlworld.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Fri, 02 Aug 2019 12:37:03 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 31 Aug 2019 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 295 days ago.

Previous Next


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