* lisp/progmodes/etags.el (etags-file-of-tag, etags-tags-table-files)
[bpt/emacs.git] / lisp / progmodes / etags.el
index da073ce..a330007 100644 (file)
@@ -1260,11 +1260,11 @@ buffer-local values of tags table format variables."
 (defun etags-file-of-tag (&optional relative) ; Doc string?
   (save-excursion
     (re-search-backward "\f\n\\([^\n]+\\),[0-9]*\n")
-    (let ((str (buffer-substring (match-beginning 1) (match-end 1))))
+    (let ((str (convert-standard-filename
+                (buffer-substring (match-beginning 1) (match-end 1)))))
       (if relative
          str
-       (expand-file-name str
-                         (file-truename default-directory))))))
+       (expand-file-name str (file-truename default-directory))))))
 
 
 (defun etags-tags-completion-table () ; Doc string?
@@ -1545,7 +1545,9 @@ hits the start of file."
       (end-of-line)
       (skip-chars-backward "^," beg)
       (or (looking-at "include$")
-         (setq files (cons (buffer-substring beg (1- (point))) files))))
+         (push (convert-standard-filename
+                 (buffer-substring beg (1- (point))))
+                files)))
     (nreverse files)))
 
 (defun etags-tags-included-tables () ; Doc string?
@@ -1556,10 +1558,11 @@ hits the start of file."
       (setq beg (point))
       (end-of-line)
       (skip-chars-backward "^," beg)
-      (if (looking-at "include$")
-         ;; Expand in the default-directory of the tags table buffer.
-         (setq files (cons (expand-file-name (buffer-substring beg (1- (point))))
-                           files))))
+      (when (looking-at "include$")
+        ;; Expand in the default-directory of the tags table buffer.
+        (push (expand-file-name (convert-standard-filename
+                                 (buffer-substring beg (1- (point)))))
+              files)))
     (nreverse files)))
 \f
 ;; Empty tags file support.