James Moger
2014-06-27 3983a120127805bff913f0dea3455b080a6de831
Fix project model creation bug with forced lowercase names
1 files modified
15 ■■■■ changed files
src/main/java/com/gitblit/manager/ProjectManager.java 15 ●●●● patch | view | raw | blame | history
src/main/java/com/gitblit/manager/ProjectManager.java
@@ -178,19 +178,20 @@
        map.put("", configs.get(""));
        for (RepositoryModel model : repositoryManager.getRepositoryModels(user)) {
            String rootPath = StringUtils.getRootPath(model.name).toLowerCase();
            if (!map.containsKey(rootPath)) {
            String projectPath = StringUtils.getRootPath(model.name);
            String projectKey = projectPath.toLowerCase();
            if (!map.containsKey(projectKey)) {
                ProjectModel project;
                if (configs.containsKey(rootPath)) {
                if (configs.containsKey(projectKey)) {
                    // clone the project model because it's repository list will
                    // be tailored for the requesting user
                    project = DeepCopier.copy(configs.get(rootPath));
                    project = DeepCopier.copy(configs.get(projectKey));
                } else {
                    project = new ProjectModel(rootPath);
                    project = new ProjectModel(projectPath);
                }
                map.put(rootPath, project);
                map.put(projectKey, project);
            }
            map.get(rootPath).addRepository(model);
            map.get(projectKey).addRepository(model);
        }
        // sort projects, root project first