diff --git a/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/repository/AbstractHgHandler.java b/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/repository/AbstractHgHandler.java index 1e3a9702ae..fed3690674 100644 --- a/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/repository/AbstractHgHandler.java +++ b/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/repository/AbstractHgHandler.java @@ -450,21 +450,7 @@ public class AbstractHgHandler } } - String pythonPath = Util.nonNull(config.getPythonPath()); - - if (Util.isNotEmpty(pythonPath)) - { - pythonPath = pythonPath.concat(":"); - } - - //J- - pythonPath = pythonPath.concat( - HgPythonScript.getScriptDirectory( - SCMContext.getContext() - ).getAbsolutePath() - ); - //J+ - env.put(ENV_PYTHONPATH, pythonPath); + env.put(ENV_PYTHONPATH, HgUtil.getPythonPath(config)); env.put(ENV_REPOSITORY_PATH, directory.getAbsolutePath()); env.putAll(extraEnv); 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 a41b990192..0665234ada 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 @@ -228,19 +228,8 @@ public class HgCGIServlet extends HttpServlet { String name = repository.getName(); File directory = handler.getDirectory(repository); - String pythonPath = HgPythonScript.getScriptDirectory( - SCMContext.getContext()).getAbsolutePath(); - HgConfig config = handler.getConfig(); - - if (config != null) - { - if (Util.isNotEmpty(config.getPythonPath())) - { - pythonPath = - pythonPath.concat(File.pathSeparator).concat(config.getPythonPath()); - } - } - + String pythonPath = HgUtil.getPythonPath(handler.getConfig()); + CGIExecutor executor = cgiExecutorFactory.createExecutor(configuration, getServletContext(), request, response); diff --git a/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgUtil.java b/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgUtil.java index 93b4f902de..eebda80e53 100644 --- a/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgUtil.java +++ b/scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/web/HgUtil.java @@ -35,6 +35,10 @@ package sonia.scm.web; //~--- non-JDK imports -------------------------------------------------------- +import java.io.File; +import sonia.scm.SCMContext; +import sonia.scm.repository.HgConfig; +import sonia.scm.repository.HgPythonScript; import sonia.scm.util.Util; /** @@ -49,6 +53,39 @@ public class HgUtil //~--- get methods ---------------------------------------------------------- + /** + * Method description + * + * + * @param config + * + * @return + */ + public static String getPythonPath(HgConfig config) + { + String pythonPath = Util.EMPTY_STRING; + + if ( config != null ) + { + pythonPath = Util.nonNull(config.getPythonPath()); + } + + if (Util.isNotEmpty(pythonPath)) + { + pythonPath = pythonPath.concat(File.pathSeparator); + } + + //J- + pythonPath = pythonPath.concat( + HgPythonScript.getScriptDirectory( + SCMContext.getContext() + ).getAbsolutePath() + ); + //J+ + + return pythonPath; + } + /** * Method description *