Subject: bug#16558: 24.3.50; w32-shell-execute does not open url behind proxy

From: Eli Zaretskii <[email-masked]>
Date: Mon, 27 Jan 2014 19:11:28 +0200

> Date: Mon, 27 Jan 2014 18:07:37 +0100
> From: "Stefan-W. Hahn" <[email-masked]>
> Cc: [email-masked]
> 
> > > To solve this for me I set:
> > > 
> > >   (put 'file-exists-p 'url-file-handlers 'ignore)
> > > 
> > > I'm not sure if this is the right solution in all cases.
> > 
> > Would it help in your case to disable file handlers when calling
> > Ffile_exists_p?
> 
> I'm not sure what you mean. I tried:
> 
> (defun my-browse-url (url)
>  (let ((file-name-handler-alist nil))
>    (w32-shell-execute nil url)))
> 
> this works for my case where I can change the code around the calls to
> w32-shell-execute or browse-url.
> 
> But what to do with calls to this in other code?
> 
> Or do you mean to change file-name-handler-alist and to remove
> the "https?":
> 
>  ("\\`\\(https?\\|ftp\\|file\\|nfs\\)://" . url-file-handler)

I meant to disable file handlers inside w32-shell-execute, on the C
level, so that the call to Ffile_exists_p fails for URLs.  Would that
make your use case work again?