Use the absolute path when comparing to the absolute path of the
previously entered dirs.
local prev_file prev_dir
for prev_file in ${_autoenv_stack_entered}; do
prev_dir=${prev_file:A:h}
- if ! [[ ${PWD}/ == ${prev_dir}/* ]]; then
+ if ! [[ ${PWD:A}/ == ${prev_dir}/* ]]; then
local env_file_leave=$prev_dir/$AUTOENV_FILE_LEAVE
if _autoenv_check_authorized_env_file $env_file_leave; then
_autoenv_source $env_file_leave leave $prev_dir
$ cd sub/sub2
ENTERED: PWD:sub from:cwd.t to:sub2
+
+Check that symlinked dirs get handled correctly.
+
+ $ cd ../..
+ LEFT: PWD:sub from:sub2 to:cwd.t
+ $ ln -s sub sub_linked
+ $ cd sub_linked
+ ENTERED: PWD:sub from:cwd.t to:sub_linked
+ $ cd sub2
+ ENTERED: PWD:sub from:sub_linked to:sub2
+ $ cd .