-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hang when selecting files outside eproject directory #8
Comments
Thanks for the report. I'm guessing there might be some sort of loop The easiest thing to do is to just strace emacs when opening a file in strace -e trace=stat emacs --batch --eval "(progn (require 'eproject) It should be pretty obvious if it's in an infinite loop in that case. Incidentally, I never realized we were running eproject-maybe-turn-on --Jon
print just => another => perl => hacker => if |
This is the strace output when moving to a new project via tramp. In this case it looks like it's just run out of where to go and gets confused: stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3661, ...}) = 0 What happens when it gets to the top of the filesystem tree and no project matches? |
To answer your question, "nothing"; the search ends and the next matcher is applied. I can't reproduce this no matter how much I try. I'm relying on you for a patch. |
I've made it go away by changing the project description for my main workpace project from (generic-git) to (generic). I wonder if this is just an issue with accessing VC backed stuff over tramp? Next time I have some time to kill I'll restore the change and see if I can get it to replicate. |
Thanks! Hopefully someone else will see this problem, and then we'll
print just => another => perl => hacker => if |
I get a hang when I try and open files outside any existing eproject definitions. Typically this usually manifests when opening stuff via tramp but can be on local NFS systems. I can break out of the hang with Ctrl-G and the buffer is loaded but without any font locking on.
Using edebug I got to the this backtrace:
run-hooks(after-change-major-mode-hook)
run-mode-hooks(text-mode-hook)
text-mode()
normal-mode(t)
after-find-file(nil t)
find-file-noselect-1(#<buffer rnotes.tex<####>> "/eng/ajb/####/#####/doc/rnotes.tex" nil nil "/eng/ajb/#####/####/doc/rnotes.tex" (48634650 25))
find-file-noselect("/eng/ajb/########/#####/doc/rnotes.tex" nil nil nil)
find-file("/eng/ajb/######/#####/doc/rnotes.tex")
my-test()
Looking at after-change-major-mode-hook
(eproject--after-change-major-mode-hook global-font-lock-mode-enable-in-buffers)
I concluded eproject has gone off on a wild one somewhere. I see the maybe-turn-on logic has been refactored. Should I be tracking the virtual projects branch now?
The text was updated successfully, but these errors were encountered: