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/plugins/profiler/ProfileViewer.java |   14 +++++---------
 1 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfileViewer.java b/opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfileViewer.java
index 30d8597..41c8575 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfileViewer.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfileViewer.java
@@ -13,6 +13,7 @@
  *
  * Copyright 2006-2008 Sun Microsystems, Inc.
  * Portions Copyright 2012-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
  */
 package org.opends.server.plugins.profiler;
 
@@ -214,11 +215,10 @@
    */
   public void processDataFile(String filename) throws IOException
   {
-    // Try to open the file for reading.
-    ASN1Reader reader = ASN1.getReader(new FileInputStream(filename));
-
-
-    try
+    // Both resources are declared here so that the file stream is closed as well if the reader
+    // cannot be created around it.
+    try (FileInputStream fileStream = new FileInputStream(filename);
+         ASN1Reader reader = ASN1.getReader(fileStream))
     {
       // The first element in the file must be a sequence with the header
       // information.
@@ -273,10 +273,6 @@
         existingFrame.recurseSubFrames(stack, pos-1, count, stacksByMethod);
       }
     }
-    finally
-    {
-      close(reader);
-    }
   }
 
 

--
Gitblit v1.10.0