comparison lisp/progmodes/executable.el @ 31281:87580ecaceee

(executable-make-buffer-file-executable-if-script-p): Check that buffer contains at least 2 characters.
author Gerd Moellmann <gerd@gnu.org>
date Tue, 29 Aug 2000 19:27:02 +0000
parents 2485d23636b2
children b174db545cfd
comparison
equal deleted inserted replaced
31280:55ce1d116cc7 31281:87580ecaceee
269 ;;;###autoload 269 ;;;###autoload
270 (defun executable-make-buffer-file-executable-if-script-p () 270 (defun executable-make-buffer-file-executable-if-script-p ()
271 "Make file executable according to umask if not already executable. 271 "Make file executable according to umask if not already executable.
272 If file already has any execute bits set at all, do not change existing 272 If file already has any execute bits set at all, do not change existing
273 file modes." 273 file modes."
274 (and (save-restriction 274 (and (>= (buffer-size) 2)
275 (save-restriction
275 (widen) 276 (widen)
276 (string= "#!" (buffer-substring 1 3))) 277 (string= "#!" (buffer-substring 1 3)))
277 (let* ((current-mode (file-modes (buffer-file-name))) 278 (let* ((current-mode (file-modes (buffer-file-name)))
278 (add-mode (logand ?\111 (default-file-modes)))) 279 (add-mode (logand ?\111 (default-file-modes))))
279 (or (/= (logand ?\111 current-mode) 0) 280 (or (/= (logand ?\111 current-mode) 0)