diff --git a/share/functions/__fish_data_list_files.fish b/share/functions/__fish_data_list_files.fish index 37e2190d0..5ed293de8 100644 --- a/share/functions/__fish_data_list_files.fish +++ b/share/functions/__fish_data_list_files.fish @@ -9,7 +9,7 @@ function __fish_data_list_files set dir $__fish_data_dir end set -l files $dir/** - string replace -- $dir/ '' $files + string replace -- $__fish_data_dir/ '' $files else status list-files $dir end diff --git a/share/functions/__fish_data_with_file.fish b/share/functions/__fish_data_with_file.fish index 5f35bd25b..11feb8c68 100644 --- a/share/functions/__fish_data_with_file.fish +++ b/share/functions/__fish_data_with_file.fish @@ -3,7 +3,11 @@ function __fish_data_with_file set -l path $argv[1] set -l cmd $argv[2..] if set -q __fish_data_dir[1] - $cmd $__fish_data_dir/$path + if not string match -rq -- ^/ $path + echo >&2 "error: $(status function) requires absolute paths on non-embedded builds" + return 1 + end + $cmd $path else status get-file $path | $cmd end