Description: The ibuffer directory filter is not buffer aware for buffers not visiting files. This bug seems to be introduced by commit 3ef18c7a213, which made the `default-directory` no longer run within `with-current-buffer`. Steps: 1. emacs -Q (29.0.50 master d04433b96215d7d3387573f19cc315de86f2341a) 2. M-x dired /home/myuser/foo 3. M-x compile ls -lha 4. M-x ibuffer 5. / F /home/myuser/foo Expected: filter is applied and two buffers are shown: `foo` and `*compilation*`. Actual: only buffer `foo` is shown. Patch: Below there is a proposed patch. I did a quick inspection and could not find similar regressions in other ibuffer filters.