[Bug]: FFF segfaults when launching neovim from a deleted directory.
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 52/100
Research direction
Reproduce the listed mkdir, cd, and rmdir sequence before launching Neovim. Start with the fff_search::file_picker filesystem walk and background_watcher initialization shown in the log; done means FFF launches without a segfault when its working directory has been deleted.
Written by the indexing model from the issue text.
Description
Which fff frontend?
Neovim plugin (fff.nvim)
has logs
2026-06-27T10:19:04.124407Z INFO ThreadId(02) fff_search::log: FFF tracing initialized: /home/karim/.local/state/nvim/logs/fff+1782555544+34397.log (pid=34397, retain_runs=20)
2026-06-27T10:19:04.124456Z INFO ThreadId(02) open_env{db_path="/home/karim/.cache/nvim/fff_nvim"}: fff_search::dbs::lmdb: new
2026-06-27T10:19:04.124642Z INFO ThreadId(02) open_env{db_path="/home/karim/.cache/nvim/fff_nvim"}: fff_search::dbs::lmdb: close time.busy=176µs time.idle=8.59µs
2026-06-27T10:19:04.124767Z INFO ThreadId(02) fff_nvim: Frecency database initialized at /home/karim/.cache/nvim/fff_nvim
2026-06-27T10:19:04.124777Z INFO ThreadId(02) open_env{db_path="/home/karim/.local/share/nvim/fff_queries"}: fff_search::dbs::lmdb: new
2026-06-27T10:19:04.124929Z INFO ThreadId(02) open_env{db_path="/home/karim/.local/share/nvim/fff_queries"}: fff_search::dbs::lmdb: close time.busy=147µs time.idle=4.06µs
2026-06-27T10:19:04.125054Z INFO ThreadId(02) fff_nvim: Query tracker database initialized at /home/karim/.local/share/nvim/fff_queries
2026-06-27T10:19:04.125108Z INFO ThreadId(02) fff.trace{trace_id="9b62b9d694f8de20" label="picker"}: fff_search::log: new
2026-06-27T10:19:04.125114Z INFO ThreadId(02) fff_search::file_picker: Spawning background threads: base_path=/home/karim, warmup=true, content_indexing=true, mode=Neovim
2026-06-27T10:19:04.126254Z WARN fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}: fff_search::file_picker: No git repository found for path: /home/karim
2026-06-27T10:19:04.126288Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem: fff_search::file_picker: new
2026-06-27T10:19:04.126293Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem: fff_search::file_picker: SCAN: Starting filesystem walk and git status (async)
2026-06-27T10:19:04.128031Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem:walker_run: fff_search::file_picker: new
2026-06-27T10:19:04.378043Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem:walker_run: fff_search::file_picker: close time.busy=250ms time.idle=15.4µs
2026-06-27T10:19:04.378067Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem: fff_search::file_picker: SCAN: File walking completed in 250.042382ms for 39198 files
2026-06-27T10:19:04.432300Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem: fff_search::file_picker: SCAN: Walk completed in 306.003354ms (39198 files, 3693 dirs, chunked_store=0.77MB, files_vec=3.59MB, dirs=0.34MB, FileItem=96B)
2026-06-27T10:19:04.432336Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:walk_filesystem: fff_search::file_picker: close time.busy=306ms time.idle=5.89µs
2026-06-27T10:19:04.432351Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:run_post_scan{warmup=true indexing=true}: fff_search::scan: new
2026-06-27T10:19:05.766708Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}:run_post_scan{warmup=true indexing=true}: fff_search::scan: close time.busy=1.33s time.idle=4.99µs
2026-06-27T10:19:05.766748Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}: fff_search::background_watcher: Initializing background watcher for path: /home/karim, mode: Neovim
2026-06-27T10:19:05.891164Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}: fff_search::background_watcher: File watcher initialized for 4085 directories (NonRecursive) under /home/karim (aborted_early=false)
2026-06-27T10:19:05.891185Z INFO fff-scan fff.trace{trace_id="9b62b9d694f8de20" label="picker"}: fff_search::background_watcher: Background file watcher initialized successfully
Description
It's not a big issue to begin with. However, I'll report it nonetheless.
steps:
mkdir testcd testrmdir test(in another terminal.)- Launch nvim, FFF will segfault.
Small side note:
The log path is ~/.local/state/nvim/logs not ~/.local/state/nvim/log
Thanks for the plugin!
- Dominant language
- Rust
- Stars
- 11.1k
- Forks
- 467
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 23
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from dmtrKovalenko/fff
-
triaged
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
dmtrKovalenko/fff#842 · 2 comments ·
Maintainers usually reply within 1 day
-
triaged
Difficulty 4/5 3-5 days Newbie friendliness 22/100
dmtrKovalenko/fff#942 · 4 comments ·
Maintainers usually reply within 1 day
-
[Bug]: Changing the indexed root intermittently hangs the new scan forever (nvim, change_indexing_directory)Possibly taken @gustav-fff claimed this 1 day ago. Opentriaged
Difficulty 5/5 Over a week Newbie friendliness 12/100
dmtrKovalenko/fff#938 · 1 comment ·
Maintainers usually reply within 1 day
-
triaged
Difficulty 5/5 Over a week Newbie friendliness 18/100
dmtrKovalenko/fff#926 · 1 comment ·
Maintainers usually reply within 1 day
-
enhancement potentially-fixed triaged
Difficulty 3/5 1-2 days Newbie friendliness 40/100
dmtrKovalenko/fff#917 · 1 comment ·
Maintainers usually reply within 1 day
All issues in dmtrKovalenko/fff
Similar issues
-
test: sim_zero_omega_tests race on shared temp-file names, so two pairs of tests fail at randomOpen
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
pop-os/cosmic-comp#2956 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
area:release criticality:p3 documentation
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
registrystack/registry-stack#2085 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
libp2p/rust-libp2p#6694 ·
Maintainers usually reply within 1 day