aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/files.el21
1 files changed, 11 insertions, 10 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 64ba881b71a..6a207dbec7b 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -798,16 +798,17 @@ If `enable-local-variables' is nil, this function does not check for a
798 (setq mode (buffer-substring beg (point)))))) 798 (setq mode (buffer-substring beg (point))))))
799 (setq mode (buffer-substring beg end))))) 799 (setq mode (buffer-substring beg end)))))
800 (setq mode (intern (concat (downcase mode) "-mode"))) 800 (setq mode (intern (concat (downcase mode) "-mode")))
801 (let ((alist auto-mode-alist) 801 (if buffer-file-name
802 (name buffer-file-name)) 802 (let ((alist auto-mode-alist)
803 (let ((case-fold-search (eq system-type 'vax-vms))) 803 (name buffer-file-name))
804 ;; Remove backup-suffixes from file name. 804 (let ((case-fold-search (eq system-type 'vax-vms)))
805 (setq name (file-name-sans-versions name)) 805 ;; Remove backup-suffixes from file name.
806 ;; Find first matching alist entry. 806 (setq name (file-name-sans-versions name))
807 (while (and (not mode) alist) 807 ;; Find first matching alist entry.
808 (if (string-match (car (car alist)) name) 808 (while (and (not mode) alist)
809 (setq mode (cdr (car alist)))) 809 (if (string-match (car (car alist)) name)
810 (setq alist (cdr alist))))))) 810 (setq mode (cdr (car alist))))
811 (setq alist (cdr alist))))))))
811 (if mode (funcall mode)))) 812 (if mode (funcall mode))))
812 813
813(defun hack-local-variables-prop-line () 814(defun hack-local-variables-prop-line ()