diff --git a/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgCGIServlet.java b/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgCGIServlet.java index ac6884dfaa..0ec9a9d23a 100644 --- a/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgCGIServlet.java +++ b/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgCGIServlet.java @@ -271,6 +271,8 @@ public class HgCGIServlet extends HttpServlet CGIExecutor executor = cgiExecutorFactory.createExecutor(configuration, getServletContext(), request, response); + // issue #155 + executor.setPassShellEnvironment(true); executor.setExceptionHandler(exceptionHandler); executor.setStatusCodeHandler(exceptionHandler); executor.setContentLengthWorkaround(true); diff --git a/scm-webapp/src/main/java/sonia/scm/web/cgi/DefaultCGIExecutor.java b/scm-webapp/src/main/java/sonia/scm/web/cgi/DefaultCGIExecutor.java index 03c20574cd..031075f069 100644 --- a/scm-webapp/src/main/java/sonia/scm/web/cgi/DefaultCGIExecutor.java +++ b/scm-webapp/src/main/java/sonia/scm/web/cgi/DefaultCGIExecutor.java @@ -130,6 +130,11 @@ public class DefaultCGIExecutor extends AbstractCGIExecutor File command = new File(cmd); EnvList env = new EnvList(environment); + if (passShellEnvironment) + { + apendOsEnvironment(env); + } + // workaround for mercurial 2.1 if (isContentLengthWorkaround()) { @@ -296,11 +301,6 @@ public class DefaultCGIExecutor extends AbstractCGIExecutor int len = request.getContentLength(); EnvList env = new EnvList(); - if (passShellEnvironment) - { - apendOsEnvironment(env); - } - env.set(ENV_AUTH_TYPE, request.getAuthType()); /**