From: Noam Postavsky Date: Fri, 2 Jun 2017 03:09:36 +0000 (-0400) Subject: Fix infloop in uncomment-region-default (Bug#27112) X-Git-Tag: emacs-26.0.90~520^2~11^2~11 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=2a9d7394e36524c84fcbd61e4058b9fb89e3cc2b;p=emacs.git Fix infloop in uncomment-region-default (Bug#27112) When `comment-continue' has only blanks, `comment-padright' produces a regexp that matches the empty string, so `uncomment-region-default' will loop infinitely. * lisp/newcomment.el (comment-padright): Only return a regexp if STR has nonblank characters. --- diff --git a/lisp/newcomment.el b/lisp/newcomment.el index 4b261c34c65..118549f421c 100644 --- a/lisp/newcomment.el +++ b/lisp/newcomment.el @@ -815,7 +815,7 @@ N defaults to 0. 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