fix bsolute_file_name for directories (obs from Paulo Moura).
This commit is contained in:
parent
4707c4c10c
commit
68f49e9bdd
@ -4469,7 +4469,9 @@ Defines extensions. Current mapping: @code{txt} implies @code{['']},
|
|||||||
@code{['.so', '']}, @code{qlf} implies @code{['.qlf', '']} and
|
@code{['.so', '']}, @code{qlf} implies @code{['.qlf', '']} and
|
||||||
@code{directory} implies @code{['']}. The file-type @code{source}
|
@code{directory} implies @code{['']}. The file-type @code{source}
|
||||||
is an alias for @code{prolog} for compatibility to SICStus Prolog.
|
is an alias for @code{prolog} for compatibility to SICStus Prolog.
|
||||||
See also @code{prolog_file_type/2}.
|
See also @code{prolog_file_type/2}. Notice also that this predicate only
|
||||||
|
returns non-directories, unless the option @code{file_type(directory)} is
|
||||||
|
specified, or unless @code{access(none)}.
|
||||||
|
|
||||||
@item file_errors(@code{fail}/@code{error})
|
@item file_errors(@code{fail}/@code{error})
|
||||||
If @code{error} (default), throw and @code{existence_error} exception
|
If @code{error} (default), throw and @code{existence_error} exception
|
||||||
|
@ -834,12 +834,22 @@ absolute_file_name(File,Opts,TrueFileName) :-
|
|||||||
'$get_abs_file'(File,opts(_,D0,_,_,_,_,_),AbsFile) :-
|
'$get_abs_file'(File,opts(_,D0,_,_,_,_,_),AbsFile) :-
|
||||||
operating_system_support:true_file_name(File,D0,AbsFile).
|
operating_system_support:true_file_name(File,D0,AbsFile).
|
||||||
|
|
||||||
'$search_in_path'(File,opts(Extensions,_,_,Access,_,_,_),F) :-
|
'$search_in_path'(File,opts(Extensions,_,Type,Access,_,_,_),F) :-
|
||||||
'$add_extensions'(Extensions,File,F),
|
'$add_extensions'(Extensions, File, F0),
|
||||||
access_file(F,Access).
|
'$check_file'(F0, Type, Access, F).
|
||||||
'$search_in_path'(File,opts(_,_,Type,Access,_,_,_),F) :-
|
'$search_in_path'(File,opts(_,_,Type,Access,_,_,_),F) :-
|
||||||
'$add_type_extensions'(Type,File,F),
|
'$add_type_extensions'(Type, File, F0),
|
||||||
access_file(F,Access).
|
'$check_file'(F0, Type, Access, F).
|
||||||
|
|
||||||
|
'$check_file'(F, Type, none, F) :- !.
|
||||||
|
'$check_file'(F0, Type, Access, F0) :-
|
||||||
|
access_file(F0, Access),
|
||||||
|
(Type == directory
|
||||||
|
->
|
||||||
|
exists_directory(F0)
|
||||||
|
;
|
||||||
|
true
|
||||||
|
).
|
||||||
|
|
||||||
'$add_extensions'([Ext|_],File,F) :-
|
'$add_extensions'([Ext|_],File,F) :-
|
||||||
'$mk_sure_true_ext'(Ext,NExt),
|
'$mk_sure_true_ext'(Ext,NExt),
|
||||||
|
Reference in New Issue
Block a user