At 11:07 AM 11/9/00 -0800, Maxime Levesque wrote:
>
> It seems that jde's 'post-command-hook' is doing some problematic recursive
>call when used with EFS :
>
>(51) (error/warning) Error in `post-command-hook' (setting hook to nil):
>(error Lisp nesting exceeds `max-lisp-eval-depth')
>
The JDE's post command hook invokes jde-find-project-file.
(defun jde-find-project-file (dir)
"Finds the project file for the Java source file in the current
buffer. Returns nil if it cannot find a project file in the
source file directory or an ascendant directory."
(let ((file (find jde-project-file-name
(directory-files dir) :test 'string=)))
(if file
(concat dir file)
(if (not (jde-root-dir-p dir))
(jde-find-project-file (concat dir "../"))))))
This function recursively searches up the current directory tree until it
finds a prj.el file or the root of the directory as defined by:
(defun jde-root-dir-p (dir)
(let ((parent (concat dir "../")))
(cond ((eq system-type 'windows-nt)
(not (file-exists-p parent))
)
((eq system-type 'cygwin32)
(or (string= (file-truename dir) "/")
(not (file-exists-p (file-truename dir))))
)
(t
(and
(string= (file-truename dir) "/")
(string= (file-truename parent) "/"))))))
It's possible with efs that it never finds the root.
I believe others have encountered this problem before and that there is a
solution but I don't remember the solution. You could try searching the JDE
list archive.
- Paulk