mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-05-31 03:51:14 -03:00
functions -q: Return false without an argument
This erroneously listed functions and returned true.
This commit is contained in:
@@ -337,6 +337,11 @@ int builtin_functions(parser_t &parser, io_streams_t &streams, wchar_t **argv) {
|
||||
return STATUS_CMD_OK;
|
||||
}
|
||||
|
||||
// If we query with no argument, just return false.
|
||||
if (opts.query && argc == optind) {
|
||||
return STATUS_CMD_ERROR;
|
||||
}
|
||||
|
||||
if (opts.list || argc == optind) {
|
||||
wcstring_list_t names = function_get_names(opts.show_hidden);
|
||||
std::sort(names.begin(), names.end());
|
||||
|
||||
@@ -29,3 +29,6 @@ fish: function: The name 'test' is reserved,
|
||||
and can not be used as a function name
|
||||
function test; echo banana; end
|
||||
^
|
||||
|
||||
####################
|
||||
# Checking `functions -q` without arguments
|
||||
|
||||
@@ -58,4 +58,7 @@ test "$name3[2..-1]" = "$name3a[2..-1]"; and echo "3 = 3a"
|
||||
|
||||
logmsg Checking reserved names
|
||||
function test; echo banana; end
|
||||
|
||||
logmsg Checking `functions -q` without arguments
|
||||
functions -q; or echo "False"
|
||||
exit 0
|
||||
|
||||
@@ -71,3 +71,7 @@ function name3a --argument arg1 arg2
|
||||
|
||||
####################
|
||||
# Checking reserved names
|
||||
|
||||
####################
|
||||
# Checking `functions -q` without arguments
|
||||
False
|
||||
|
||||
Reference in New Issue
Block a user