summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/lispref/processes.texi3
-rw-r--r--lisp/erc/erc.el4
-rw-r--r--lisp/mail/rmailsum.el5
-rw-r--r--src/process.c5
4 files changed, 13 insertions, 4 deletions
diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi
index 0f713bcae20..535cebed7a8 100644
--- a/doc/lispref/processes.texi
+++ b/doc/lispref/processes.texi
@@ -3111,7 +3111,8 @@ signaled. Call @code{puny-encode-domain} on @var{name}
first if you wish to lookup internationalized hostnames.
If successful it returns a list of Lisp representations of network
-addresses, otherwise it returns @code{nil}.
+addresses, otherwise it returns @code{nil}. In the latter case, it
+also displays the error message hopefully explaining what went wrong.
By default both IPv4 and IPv6 lookups are attempted. The optional
argument @var{family} controls this behavior, specifying the symbol
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 73ca53f5d8c..1044acff8d5 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -2861,7 +2861,9 @@ need this when pasting multiple lines of text."
(if (string-match "^\\s-*$" line)
nil
(string-match "^ ?\\(.*\\)" line)
- (erc-process-input-line (match-string 1 line) nil t)))
+ (let ((msg (match-string 1 line)))
+ (erc-display-msg msg)
+ (erc-process-input-line msg nil t))))
(put 'erc-cmd-SAY 'do-not-parse-args t)
(defun erc-cmd-SET (line)
diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el
index f09cd0e0abb..60b67edf85a 100644
--- a/lisp/mail/rmailsum.el
+++ b/lisp/mail/rmailsum.el
@@ -786,6 +786,11 @@ the message being processed."
;; To: =?UTF-8?Q?=C5=A0t=C4=9Bp=C3=A1n_?= =?UTF-8?Q?N=C4=9Bmec?=
;; <stepnem@gmail.com>
(setq from (rfc2047-decode-string from))
+ ;; We cannot tolerate any leftover newlines in From,
+ ;; as that disrupts the rmail-summary display.
+ ;; Newlines can be left in From if it was malformed,
+ ;; e.g. had unbalanced quotes.
+ (setq from (replace-regexp-in-string "\n+" " " from))
(setq len (length from))
(setq mch (string-match "[@%]" from))
(format "%25s"
diff --git a/src/process.c b/src/process.c
index 31591416898..eaa7fa14651 100644
--- a/src/process.c
+++ b/src/process.c
@@ -4587,12 +4587,13 @@ network_lookup_address_info_1 (Lisp_Object host, const char *service,
DEFUN ("network-lookup-address-info", Fnetwork_lookup_address_info,
Snetwork_lookup_address_info, 1, 2, 0,
- doc: /* Look up ip address info of NAME.
+ doc: /* Look up Internet Protocol (IP) address info of NAME.
Optional parameter FAMILY controls whether to look up IPv4 or IPv6
addresses. The default of nil means both, symbol `ipv4' means IPv4
only, symbol `ipv6' means IPv6 only. Returns a list of addresses, or
nil if none were found. Each address is a vector of integers, as per
-the description of ADDRESS in `make-network-process'. */)
+the description of ADDRESS in `make-network-process'. In case of
+error displays the error message. */)
(Lisp_Object name, Lisp_Object family)
{
Lisp_Object addresses = Qnil;