summaryrefslogtreecommitdiff
path: root/src/command_manager.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2015-12-02 01:08:41 +0000
committerMaxime Coste <frrrwww@gmail.com>2015-12-02 01:08:41 +0000
commit2a8a329b8340a9a877542f2b6ee9cbf3528d9ae5 (patch)
treecf5a69d0f57d5b5f1c586f34ff132dac839f52f1 /src/command_manager.cc
parenta02ad38fb428849545f5ea5746dd58ce55d63476 (diff)
Remove support for %arg{#}, can be added back if we got a use case
It is very unlikely we need %arg{#} without needing a %sh anyway.
Diffstat (limited to 'src/command_manager.cc')
-rw-r--r--src/command_manager.cc11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc
index cd711c87..d5ccdeb7 100644
--- a/src/command_manager.cc
+++ b/src/command_manager.cc
@@ -348,17 +348,14 @@ String expand_token(const Token& token, const Context& context,
}
case Token::Type::ArgExpand:
{
- if (content == "#")
- return to_string(shell_context.params.size());
- else if (content == "@")
- return join(shell_context.params, ' ');
+ auto& params = shell_context.params;
+ if (content == '@')
+ return join(params, ' ');
const int arg = str_to_int(content)-1;
if (arg < 0)
throw runtime_error("invalid argument index");
- if (arg < shell_context.params.size())
- return shell_context.params[arg];
- return {};
+ return arg < params.size() ? params[arg] : String{};
}
case Token::Type::RawEval:
return expand(content, context, shell_context);