]> git.eshelyaron.com Git - emacs.git/commitdiff
(compilation-find-file): Add a big comment.
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 8 May 2007 16:02:14 +0000 (16:02 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Tue, 8 May 2007 16:02:14 +0000 (16:02 +0000)
lisp/progmodes/compile.el

index ce933cb13d592175140560e1b57ff597961731d5..9266315d98fe71f8503b42c1ab3e44fb7de2d1f7 100644 (file)
@@ -1863,7 +1863,24 @@ Pop up the buffer containing MARKER and scroll to MARKER if we ask the user."
           (let* ((name (read-file-name
                         (format "Find this %s in (default %s): "
                                 compilation-error filename)
-                        spec-dir filename t nil))
+                        spec-dir filename t nil
+                        ;; The predicate below is fine when called from
+                        ;; minibuffer-complete-and-exit, but it's too
+                        ;; restrictive otherwise, since it also prevents the
+                        ;; user from completing "fo" to "foo/" when she
+                        ;; wants to enter "foo/bar".
+                        ;; 
+                        ;; Try to make sure the user can only select
+                        ;; a valid answer.  This predicate may be ignored,
+                        ;; tho, so we still have to double-check afterwards.
+                        ;; TODO: We should probably fix read-file-name so
+                        ;; that it never ignores this predicate, even when
+                        ;; using popup dialog boxes.
+                        ;; (lambda (name)
+                        ;;   (if (file-directory-p name)
+                        ;;       (setq name (expand-file-name filename name)))
+                        ;;   (file-exists-p name))
+                        ))
                  (origname name))
             (cond
              ((not (file-exists-p name))