dont create vrconfig.yml folder (#1229)

This commit is contained in:
Uriel
2024-11-06 12:12:21 +01:00
committed by GitHub
2 changed files with 28 additions and 2 deletions

View File

@@ -65,6 +65,10 @@ work. If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
</provides>
<releases>
<release version="0.13.1" date="2024-11-05"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.1</url></release>
<release version="0.13.1~rc.3" type="development" date="2024-10-31"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.1-rc.3</url></release>
<release version="0.13.1~rc.2" type="development" date="2024-10-26"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.1-rc.2</url></release>
<release version="0.13.1~rc.1" type="development" date="2024-10-16"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.1-rc.1</url></release>
<release version="0.13.0" date="2024-09-20"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.0</url></release>
<release version="0.13.0~rc.4" type="development" date="2024-09-13"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.0-rc.4</url></release>
<release version="0.13.0~rc.3" type="development" date="2024-08-14"><url>https://github.com/SlimeVR/SlimeVR-Server/releases/tag/v0.13.0-rc.3</url></release>

View File

@@ -16,6 +16,8 @@ import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.*;
import java.util.Comparator;
import java.util.stream.Stream;
public class ConfigManager {
@@ -115,8 +117,28 @@ public class ConfigManager {
// Serialize config
try {
var file = cfgFile.toFile();
if (!file.getAbsoluteFile().getParentFile().exists() && !file.mkdirs()) {
// delete accidental folder caused by PR
// https://github.com/SlimeVR/SlimeVR-Server/pull/1176
var cfgFileMaybeFolder = cfgFile.toFile();
if (cfgFileMaybeFolder.isDirectory()) {
try (Stream<Path> pathStream = Files.walk(cfgFile)) {
var list = pathStream.sorted(Comparator.reverseOrder()).toList();
for (var path : list) {
Files.delete(path);
}
} catch (IOException e) {
LogManager
.severe(
"Unable to delete folder that has same name as the config file on path \""
+ cfgFile
+ "\""
);
return;
}
}
var cfgFolder = cfgFile.toAbsolutePath().getParent().toFile();
if (!cfgFolder.exists() && !cfgFolder.mkdirs()) {
LogManager
.severe("Unable to create folders for config on path \"" + cfgFile + "\"");
return;