mirror of
https://github.com/fish-shell/fish-shell.git
synced 2025-02-21 03:53:53 +08:00

This fixes the following deadlock. The C++ functions path_get_config and path_get_data lazily determine paths and then cache those in a C++ static variable. The path determination requires inspecting the environment stack. If these functions are first called while the environment stack is locked (in this case, when fetching the $history variable) we can get a deadlock. The fix is to call them eagerly during env_init. This can be removed once the corresponding C++ functions are removed. This issue caused fish_config to fail to report colors and themes. Add a test.