Subject: Re: bug#6717: tramp-dissect-file-name: Not a Tramp file name

From: Michael Albinus <[email-masked]>
Date: Sun, 25 Jul 2010 16:26:14 +0200

Thanks for the backtrace. The problem is the following line:

  file-name-directory("/index.php?title=%E7%89%B9%E6%AE%8A:%E6%9C%80%E8%BF%91%E6%9B%B4%E6%94%B9&feed=rss")

It checks the local file name part of your URL. Unfortunately, due to
the leading "/" and the ":", it looks like a Tramp file name from
syntactical point of view, but it isn't.

I have committed the following patch towards the Emacs-23 branch (which
will be synchronized with the trunk next days):

--8<---------------cut here---------------start------------->8---
*** /usr/local/src/emacs-23/lisp/url/url-http.el.~99941~	2010-07-25 16:24:26.568050862 +0200
--- /usr/local/src/emacs-23/lisp/url/url-http.el	2010-07-25 13:33:32.008050291 +0200
***************
*** 435,441 ****
  	(delete-process url-http-process)))))
    (let ((buffer (current-buffer))
  	(class nil)
! 	(success nil))
      (setq class (/ url-http-response-status 100))
      (url-http-debug "Parsed HTTP headers: class=%d status=%d" class url-http-response-status)
      (url-http-handle-cookies)
--- 435,444 ----
  	(delete-process url-http-process)))))
    (let ((buffer (current-buffer))
  	(class nil)
! 	(success nil)
! 	;; The filename part of a URL could be in remote file syntax,
! 	;; see Bug#6717 for an example.  We disable Tramp, therefore.
! 	(tramp-mode nil))
      (setq class (/ url-http-response-status 100))
      (url-http-debug "Parsed HTTP headers: class=%d status=%d" class url-http-response-status)
      (url-http-handle-cookies)
--8<---------------cut here---------------end--------------->8---

Best regards, Michael.