summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-01-13 00:26:43 +0000
committerMaxime Coste <mawww@kakoune.org>2017-01-13 00:26:43 +0000
commitffc362cf9e6448fd1d4b925e82aa26c5a47369ec (patch)
tree86ccf70173f2bf74e92e0e441805f696ad6e09c1 /src
parent4916ea17661492da1af08eebb7fabd662c7e8390 (diff)
Propagate ShellContext custom env-vars through custom commands
Fixes #1131
Diffstat (limited to 'src')
-rw-r--r--src/commands.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/commands.cc b/src/commands.cc
index 629bb093..e68e4cc5 100644
--- a/src/commands.cc
+++ b/src/commands.cc
@@ -882,15 +882,16 @@ void define_command(const ParametersParser& parser, Context& context, const Shel
min = max = (size_t)str_to_int(counts);
desc = ParameterDesc{ {}, ParameterDesc::Flags::SwitchesAsPositional, min, max };
- cmd = [=](const ParametersParser& parser, Context& context, const ShellContext&) {
- CommandManager::instance().execute(commands, context, { params_to_shell(parser) });
+ cmd = [=](const ParametersParser& parser, Context& context, const ShellContext& sc) {
+ CommandManager::instance().execute(commands, context,
+ { params_to_shell(parser), sc.env_vars });
};
}
else
{
desc = ParameterDesc{ {}, ParameterDesc::Flags::SwitchesAsPositional, 0, 0 };
- cmd = [=](const ParametersParser& parser, Context& context, const ShellContext&) {
- CommandManager::instance().execute(commands, context);
+ cmd = [=](const ParametersParser& parser, Context& context, const ShellContext& sc) {
+ CommandManager::instance().execute(commands, context, { {}, sc.env_vars });
};
}