summaryrefslogtreecommitdiff
path: root/src/command_manager.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2015-12-02 01:01:48 +0000
committerMaxime Coste <frrrwww@gmail.com>2015-12-02 01:01:48 +0000
commita02ad38fb428849545f5ea5746dd58ce55d63476 (patch)
tree3a6ba0b1d1d9116c1cb170b15c43e73d30de758d /src/command_manager.cc
parent63d9218fbe35cc3c0a3e8237bc6ed6d707a31488 (diff)
Forward each params in %arg{@} separately
Diffstat (limited to 'src/command_manager.cc')
-rw-r--r--src/command_manager.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc
index ad7359b5..cd711c87 100644
--- a/src/command_manager.cc
+++ b/src/command_manager.cc
@@ -479,6 +479,9 @@ void CommandManager::execute(StringView command_line,
it -= shell_tokens.size() + 1;
}
+ else if (it->type() == Token::Type::ArgExpand and it->content() == '@')
+ std::copy(shell_context.params.begin(), shell_context.params.end(),
+ std::back_inserter(params));
else
params.push_back(expand_token(*it, context, shell_context));
}