--- Begin Message ---
Subject: |
24.5; "M-x browse-url-emacs" on a 404 page |
Date: |
Sun, 13 Dec 2015 13:39:13 +0300 |
Hello, I've noticed an unhandled error when I tried the following:
1. emacs -Q
2. M-x browse-url-emacs RET http://hydra.gnu.org/build/12345
And the error is:
find-file-noselect-1: Wrong type argument: arrayp, nil
As (file-truename buffer-file-name) fails when buffer-file-name is nil.
It would be good to have a more "friendly" error, like the one that
(url-insert-file-contents "http://hydra.gnu.org/build/12345") produces.
Thanks.
--
Alex
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#22160: 24.5; "M-x browse-url-emacs" on a 404 page |
Date: |
Sat, 19 Dec 2015 12:01:43 +0200 |
> From: Alex Kost <address@hidden>
> Date: Sun, 13 Dec 2015 13:39:13 +0300
>
> Hello, I've noticed an unhandled error when I tried the following:
>
> 1. emacs -Q
> 2. M-x browse-url-emacs RET http://hydra.gnu.org/build/12345
>
> And the error is:
>
> find-file-noselect-1: Wrong type argument: arrayp, nil
>
> As (file-truename buffer-file-name) fails when buffer-file-name is nil.
>
> It would be good to have a more "friendly" error, like the one that
> (url-insert-file-contents "http://hydra.gnu.org/build/12345") produces.
browse-url-emacs is not supposed to display error messages for URLs
that don't exist or cannot be accessed. That function is a fancy way
of visiting a "file buffer" with the HTML source of the URL, so it
should react like "C-x C-f" when the file does not exist. "C-x C-f"
says "New file" and shows an empty buffer; browse-url-emacs's
equivalent is IMO a buffer with the error returned by the server, in
this case the standard 404 response.
So this is what I did in commit bcf4913 on the emacs-25 branch. The
previous code in url-insert-file-contents signaled an error when it
received one of the 4xx responses, disregarding the VISIT argument,
which was a mistake (introduced when we fixed bug#16733, where VISIT
is nil). Now it follows more closely the behavior of
insert-file-contents in that case.
Thanks.
--- End Message ---