From 16ec6d07c58356d9b20652b5ae168ae9f0fd2eaa Mon Sep 17 00:00:00 2001 From: Florian Zschocke Date: Sun, 13 Mar 2022 17:48:19 +0100 Subject: fix: Fix StoredUserConfig handling null subsections Te `StoredUserConfig` did not handle sections without a subsection. When the subsection did not exist, i.e. was `null`, then the subsection name would be set to the string "null". This is not how the config file format works. It should create a `[SECTIONNAME]` entry instead. This fix handles a `null` subsection correctly, by handling it as a section without a subsection. --- src/main/java/com/gitblit/StoredUserConfig.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/gitblit/StoredUserConfig.java b/src/main/java/com/gitblit/StoredUserConfig.java index eae1d3cf..63e1015c 100644 --- a/src/main/java/com/gitblit/StoredUserConfig.java +++ b/src/main/java/com/gitblit/StoredUserConfig.java @@ -73,7 +73,12 @@ public class StoredUserConfig { } private static void writeSection(PrintWriter printWriter, String key, Section section) { - printWriter.printf("[%s \"%s\"]\n", section.getName(), section.getSubSection()); + if (section.getSubSection() == null) { + printWriter.printf("[%s]\n", section.getName()); + } + else { + printWriter.printf("[%s \"%s\"]\n", section.getName(), section.getSubSection()); + } for (Entry entry : section.getEntries().values()) { writeEntry(printWriter, entry.getKey(), entry.getValue()); } @@ -90,7 +95,7 @@ public class StoredUserConfig { } private static String generateKey(String key, String subKey) { - return "k:" + key + "s:" + subKey; + return "k:" + key + "s:" + (subKey == null ? "" : subKey); } private static class Section { -- cgit v1.2.3