Skip to content

Commit 8d1eebc

Browse files
committed
2.11.26 - Provisonal fixes for memory leaks suspected to contribute to the fps degrdation.
1 parent d8ba7dc commit 8d1eebc

File tree

4 files changed

+20
-14
lines changed

4 files changed

+20
-14
lines changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ plugins {
1111
}
1212

1313
group = "gg.generations"
14-
version = "2.11.25"
14+
version = "2.11.26"
1515

1616
java.toolchain.languageVersion.set(JavaLanguageVersion.of(17))
1717

src/library/java/gg/generations/rarecandy/pokeutils/PixelAsset.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,8 @@ public PixelAsset(SevenZFile is, @Nullable String debugName) {
280280
}
281281

282282
updateSettings();
283+
284+
is.close();
283285
} catch (IOException | NullPointerException e) {
284286
throw new RuntimeException("Failed to load " + debugName, e);
285287
}

src/library/java/gg/generations/rarecandy/renderer/loading/ModelLoader.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -599,6 +599,8 @@ public static AIScene read(PixelAsset asset) {
599599

600600
var scene = Assimp.aiImportFileEx(name, Assimp.aiProcess_Triangulate | Assimp.aiProcess_ImproveCacheLocality, fileIo);
601601

602+
fileIo.free();
603+
602604
if (scene == null) throw new RuntimeException(Assimp.aiGetErrorString());
603605

604606
return scene;

src/main/java/gg/generations/rarecandy/tools/gui/GuiHandler.java

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -113,28 +113,30 @@ public static Map<String, byte[]> move(Path path) throws IOException {
113113
FileUtils.deleteDirectory(TEMP.toFile());
114114
Files.createDirectories(TEMP);
115115

116-
var seven = PixelAsset.getSevenZipFile(path);
116+
try(var seven = PixelAsset.getSevenZipFile(path)) {
117117

118-
var files = new HashMap<String, byte[]>();
119118

120-
for (var entry : seven.getEntries()) {
121-
files.put(entry.getName(), seven.getInputStream(entry).readAllBytes());
122-
}
119+
var files = new HashMap<String, byte[]>();
120+
121+
for (var entry : seven.getEntries()) {
122+
files.put(entry.getName(), seven.getInputStream(entry).readAllBytes());
123+
}
123124

124125
// System.out.println(files.keySet());
125126

126-
for (var file : files.entrySet()) {
127-
if(file.getKey().isEmpty()) continue;
127+
for (var file : files.entrySet()) {
128+
if (file.getKey().isEmpty()) continue;
128129

129-
var filePath = TEMP.resolve(file.getKey());
130+
var filePath = TEMP.resolve(file.getKey());
130131
// System.out.println(filePath);
131132

132-
if(Files.isDirectory(filePath)) continue;
133-
Files.createFile(filePath);
134-
Files.write(filePath, file.getValue());
135-
}
133+
if (Files.isDirectory(filePath)) continue;
134+
Files.createFile(filePath);
135+
Files.write(filePath, file.getValue());
136+
}
136137

137-
return files;
138+
return files;
139+
}
138140
}
139141

140142
@Override

0 commit comments

Comments
 (0)