summaryrefslogtreecommitdiff
path: root/src/command_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/command_manager.cc')
-rw-r--r--src/command_manager.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/command_manager.cc b/src/command_manager.cc
index b8784093..266b832d 100644
--- a/src/command_manager.cc
+++ b/src/command_manager.cc
@@ -382,10 +382,10 @@ void expand_token(Token&& token, const Context& context, const ShellContext& she
return set_target(params);
}
- const int arg = str_to_int(content)-1;
- if (arg < 0)
+ const int arg = str_to_int(content);
+ if (arg < 1)
throw runtime_error("invalid argument index");
- return set_target(arg < params.size() ? params[arg] : String{});
+ return set_target(arg <= params.size() ? params[arg-1] : String{});
}
case Token::Type::FileExpand:
return set_target(read_file(content));