From d7030832e1aecbb04affe52453fa32ea19ed7ded Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Thu, 1 Jun 2017 23:09:36 -0400 Subject: [PATCH v1] Fix infloop in uncomment-region-default (Bug#27112) When `comment-continue' has only blank lines, `comment-padright' produces a regexp that matches the empty string, so `uncomment-region-default' will loop infinitely. * lisp/newcomment.el (comment-padright): Check for non-padding characters in STR. --- lisp/newcomment.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/newcomment.el b/lisp/newcomment.el index 4b261c34c6..118549f421 100644 --- a/lisp/newcomment.el +++ b/lisp/newcomment.el @@ -815,7 +815,7 @@ (defun comment-padright (str &optional n) If N is `re', a regexp is returned instead, that would match the string for any N." (setq n (or n 0)) - (when (and (stringp str) (not (string= "" str))) + (when (and (stringp str) (string-match "\\S-" str)) ;; Separate the actual string from any leading/trailing padding (string-match "\\`\\s-*\\(.*?\\)\\s-*\\'" str) (let ((s (match-string 1 str)) ;actual string -- 2.11.1