diff options
| author | Eli Zaretskii | 2006-12-08 18:05:12 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 2006-12-08 18:05:12 +0000 |
| commit | 1dd46c28628ccb093b972bfba50ed16f5c8deedb (patch) | |
| tree | 170f8d014867ae83cb0df7429f211231dd7ab7ca /lisp | |
| parent | 8adbd6c21497dc6e8e6816714c8cbc50ef1e4d93 (diff) | |
| download | emacs-1dd46c28628ccb093b972bfba50ed16f5c8deedb.tar.gz emacs-1dd46c28628ccb093b972bfba50ed16f5c8deedb.zip | |
(insert-file-1): Compare file size to large-file-warning-threshold and request
confirmation when warranted.
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/files.el | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lisp/files.el b/lisp/files.el index 396e4c28b36..186dd8f3a0d 100644 --- a/lisp/files.el +++ b/lisp/files.el | |||
| @@ -1695,6 +1695,16 @@ This function ensures that none of these modifications will take place." | |||
| 1695 | (if (file-directory-p filename) | 1695 | (if (file-directory-p filename) |
| 1696 | (signal 'file-error (list "Opening input file" "file is a directory" | 1696 | (signal 'file-error (list "Opening input file" "file is a directory" |
| 1697 | filename))) | 1697 | filename))) |
| 1698 | ;; Check whether the file is uncommonly large (see find-file-noselect): | ||
| 1699 | (let (size) | ||
| 1700 | (when (and large-file-warning-threshold | ||
| 1701 | (setq size (nth 7 (file-attributes filename))) | ||
| 1702 | (> size large-file-warning-threshold) | ||
| 1703 | (not (y-or-n-p | ||
| 1704 | (format "File %s is large (%dMB), really insert? " | ||
| 1705 | (file-name-nondirectory filename) | ||
| 1706 | (/ size 1048576))))) | ||
| 1707 | (error "Aborted"))) | ||
| 1698 | (let* ((buffer (find-buffer-visiting (abbreviate-file-name (file-truename filename)) | 1708 | (let* ((buffer (find-buffer-visiting (abbreviate-file-name (file-truename filename)) |
| 1699 | #'buffer-modified-p)) | 1709 | #'buffer-modified-p)) |
| 1700 | (tem (funcall insert-func filename))) | 1710 | (tem (funcall insert-func filename))) |