GNU bug report logs -
#25735
26.0.50; url-retrieve errors are peculiar
Previous Next
Reported by: Richard Copley <rcopley <at> gmail.com>
Date: Tue, 14 Feb 2017 21:23:01 UTC
Severity: minor
Tags: fixed
Found in version 26.0.50
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Richard Copley <rcopley <at> gmail.com> writes:
> Within the docstring for url-retrieve, it says: "[...] The
> error can be signaled with (signal ERROR-SYMBOL DATA) [...]",
> but in current master (grep for ":error" in "lisp/url/*.el") the actual
> usage is that ERROR-SYMBOL is `error' and DATA is a list that starts
> with a symbol, for example (connection-failed "failed with code 10061"
> :host "localhost" :service 80). The docstring hints at something
> like this:
>
> (url-retrieve (format "http://localhost/non-existent-resource")
> (lambda (status &rest args)
> (let ((error-info (plist-get status :error)))
> (when error-info
> (signal (car error-info) (cdr error-info))))
> ;;...
> ))
I tried finding that doc string, but it doesn't seem to exist any more?
Was that in the `url-retrieve' doc string?
---
grep --color -nH --null -e "car error-info" `find . -type f`
Grep finished with no matches found at Wed May 15 08:01:26
---
> which ends up calling this:
>
> (signal 'error
> '(connection-failed "failed with code 10061"
> :host "localhost"
> :service 80))
>
> which ends up printing these two lines (including the newline
> embedded in a string) to the echo area:
>
> error in process sentinel: peculiar error: "failed with code 10061
> ", :host, "localhost", :service, 80
Yeah, that's not the right way to call `error'...
> Unfortunately the error code itself, `connection-failed', is dropped.
> (See print_error_message in "print.c"; if ERROR-SYMBOL is `error' then
> the car of DATA, say ERRMSG, is printed if it is a string; if ERRMSG
> is not a string then "peculiar error" is printed instead of ERRMSG.)
>
> Please also consider augmenting the docstring with an example of using
> the error data. It's a drag for the user to have to work that out
> before they are in a position to call url-retrieve!
Yup. But I don't know why that example is gone -- perhaps somebody else
remembers?
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
This bug report was last modified 6 years and 65 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.