Mercurial > emacs
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) |
