From 0885d16ac22a0ecd2267bf3c8818a3a8a5a9dadb Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Fri, 31 Jul 2026 07:48:54 +0000
Subject: [PATCH] Fix CodeQL warning-severity alerts: missed wakeups, resource leaks, escaping threads (#790)
---
opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeUtils.java | 22 ++++++++++++++++++----
1 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeUtils.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeUtils.java
index 8d96700..214f6b1 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeUtils.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeUtils.java
@@ -12,6 +12,7 @@
* information: "Portions Copyright [year] [name of copyright owner]".
*
* Portions Copyright 2013-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
*/
package org.opends.server.tools.upgrade;
@@ -54,6 +55,7 @@
import org.forgerock.opendj.ldif.LDIFEntryReader;
import org.forgerock.opendj.ldif.LDIFEntryWriter;
import org.forgerock.util.Reject;
+import org.forgerock.util.Utils;
import org.opends.server.core.DirectoryServer;
import org.opends.server.util.ChangeOperationType;
import org.opends.server.util.SchemaUtils;
@@ -304,8 +306,18 @@
{
final Schema schema = getUpgradeSchema();
final File configFile = new File(configDirectory, CURRENT_CONFIG_FILE_NAME);
- final LDIFEntryReader entryReader = new LDIFEntryReader(new FileInputStream(configFile)).setSchema(schema);
- return LDIF.search(entryReader, searchRequest, schema);
+ final FileInputStream configStream = new FileInputStream(configFile);
+ try
+ {
+ // Ownership of the stream passes to the returned reader, which the caller must close.
+ final LDIFEntryReader entryReader = new LDIFEntryReader(configStream).setSchema(schema);
+ return LDIF.search(entryReader, searchRequest, schema);
+ }
+ catch (RuntimeException e)
+ {
+ Utils.closeSilently(configStream);
+ throw e;
+ }
}
/**
@@ -333,8 +345,10 @@
int changeCount = 0;
final Schema schema = getUpgradeSchema();
- try (LDIFEntryReader entryReader = new LDIFEntryReader(new FileInputStream(configFile)).setSchema(schema);
- LDIFEntryWriter writer = new LDIFEntryWriter(new FileOutputStream(copyConfig)))
+ try (FileInputStream configStream = new FileInputStream(configFile);
+ LDIFEntryReader entryReader = new LDIFEntryReader(configStream).setSchema(schema);
+ FileOutputStream copyStream = new FileOutputStream(copyConfig);
+ LDIFEntryWriter writer = new LDIFEntryWriter(copyStream))
{
writer.setWrapColumn(80);
--
Gitblit v1.10.0