diff options
author | Victor J. Orlikowski <vjo@duke.edu> | 2019-02-10 11:13:57 -0500 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2019-02-15 10:13:00 +0200 |
commit | f721084f788dbbbf114c47f87af7d5771b5fb769 (patch) | |
tree | 45191183e74683ecba8df735eec88929b976c88e /lisp/erc/erc-dcc.el | |
parent | 3cba92d42ecf2156296b5f05c07a3d1ded78218e (diff) | |
download | emacs-f721084f788dbbbf114c47f87af7d5771b5fb769.tar.gz |
Avoid errors in erc-dcc.el when erc-dcc-verbose is non-nil
* lisp/erc/erc-dcc.el (erc-dcc-get-filter): Don't assume STR
is always a string. Use 'buffer-name' to get the DCC file
name, as buffer-file-name is not set in the process buffer.
Copyright-paperwork-exempt: yes
Diffstat (limited to 'lisp/erc/erc-dcc.el')
-rw-r--r-- | lisp/erc/erc-dcc.el | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/erc/erc-dcc.el b/lisp/erc/erc-dcc.el index c530b26c05f..2b41c8c705b 100644 --- a/lisp/erc/erc-dcc.el +++ b/lisp/erc/erc-dcc.el @@ -989,17 +989,20 @@ rather than every 1024 byte block, but nobody seems to care." (let ((inhibit-read-only t) received-bytes) (goto-char (point-max)) - (insert (string-make-unibyte str)) + (if str + (insert (string-make-unibyte str))) (when (> (point-max) erc-dcc-receive-cache) (erc-dcc-append-contents (current-buffer) erc-dcc-file-name)) - (setq received-bytes (+ (buffer-size) erc-dcc-byte-count)) + (setq received-bytes (buffer-size)) + (if erc-dcc-byte-count + (setq received-bytes (+ received-bytes erc-dcc-byte-count))) (and erc-dcc-verbose (erc-display-message nil 'notice erc-server-process 'dcc-get-bytes-received - ?f (file-name-nondirectory buffer-file-name) + ?f (file-name-nondirectory (buffer-name)) ?b (number-to-string received-bytes))) (cond ((and (> (plist-get erc-dcc-entry-data :size) 0) @@ -1007,7 +1010,7 @@ rather than every 1024 byte block, but nobody seems to care." (erc-display-message nil '(notice error) 'active 'dcc-get-file-too-long - ?f (file-name-nondirectory buffer-file-name)) + ?f (file-name-nondirectory (buffer-name))) (delete-process proc)) (t (process-send-string |