Subject: bug#30243: 26.0.91; Infinite recursion in `make-auto-save-file-name' for quoted filenames

From: Noam Postavsky <[email-masked]>
Date: Wed, 24 Jan 2018 18:04:38 -0500

Philipp Stephani <[email-masked]> writes:

> Since this commit was a bug fix for a related issue with quoted file
> names, reverting it is probably not the best way forward. We should
> push a fix and make a new pretest.

The following seems to fix it.  We should review other file handler
operations of course, but can we really expect to learn anything from
another pretest?

--- i/lisp/files.el
+++ w/lisp/files.el
@@ -7004,6 +7004,11 @@ file-name-non-special
 	        (expand-file-name
 		 (unhandled-file-name-directory default-directory)))
 	     default-directory))
+         (buffer-file-name
+          (if (and (memq operation '(make-auto-save-file-name))
+                   (string-match "\\`/:" buffer-file-name))
+              (substring buffer-file-name (match-end 0))
+            buffer-file-name))
 	 ;; Get a list of the indices of the args which are file names.
 	 (file-arg-indices
 	  (cdr (or (assq operation