From 7982d51fecd39ca608601bffad923b06c4a8b85d Mon Sep 17 00:00:00 2001 From: beeget Date: Thu, 14 May 2026 20:31:08 +0200 Subject: [PATCH] fix: release fd slot on failed file open --- src/rars/util/SystemIO.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/rars/util/SystemIO.java b/src/rars/util/SystemIO.java index 3b9b4126..90793863 100644 --- a/src/rars/util/SystemIO.java +++ b/src/rars/util/SystemIO.java @@ -392,6 +392,7 @@ public static int openFile(String filename, int flags) { FileIOData.setStreamInUse(fdToUse, inputStream); // Save stream for later use } catch (FileNotFoundException e) { fileErrorString = "File " + filename + " not found, open for input."; + FileIOData.close(fdToUse); retValue = -1; } } else if ((flags & O_WRONLY) != 0) // Open for writing only @@ -402,6 +403,7 @@ public static int openFile(String filename, int flags) { FileIOData.setStreamInUse(fdToUse, outputStream); // Save stream for later use } catch (FileNotFoundException e) { fileErrorString = "File " + filename + " not found, open for output."; + FileIOData.close(fdToUse); retValue = -1; } }