odk/source/com/sun/star/lib/loader/WinRegKey.java |   16 +++++++++++++++-
 tools/source/fsys/urlobj.cxx                      |    4 +++-
 2 files changed, 18 insertions(+), 2 deletions(-)

New commits:
commit 1b3d662f291d10e42232f9f842affe5ad35035f0
Author:     Caolán McNamara <[email protected]>
AuthorDate: Thu Aug 18 12:15:29 2022 +0100
Commit:     Caolán McNamara <[email protected]>
CommitDate: Thu Aug 18 16:05:39 2022 +0200

    cid#1500387 alternative silence Resource leak
    
    This reverts commit d40bfecddcac38006ee989d8072fb2b453cf6b9f for
    a different approach
    
    Change-Id: I8e058efbff214456b91346ce16e7eba7a89a8a53
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138480
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx
index b7d3c241ef38..764bb28ef623 100644
--- a/tools/source/fsys/urlobj.cxx
+++ b/tools/source/fsys/urlobj.cxx
@@ -616,8 +616,10 @@ std::unique_ptr<SvMemoryStream> memoryStream(
         new char[length]);
     memcpy(b.get(), data, length);
     std::unique_ptr<SvMemoryStream> s(
-        new SvMemoryStream(b.release(), length, StreamMode::READ));
+        new SvMemoryStream(b.get(), length, StreamMode::READ));
     s->ObjectOwnsMemory(true);
+    // coverity[leaked_storage : FALSE] - belongs to SvMemoryStream s at this 
point
+    b.release();
     return s;
 }
 
commit 6105706deb71aa134f2f754aed6f50daf3b8d620
Author:     Caolán McNamara <[email protected]>
AuthorDate: Thu Aug 18 12:14:36 2022 +0100
Commit:     Caolán McNamara <[email protected]>
CommitDate: Thu Aug 18 16:05:26 2022 +0200

    cid#1500586 Resource leak
    
    Change-Id: I32d837af7574f6eb4ac7db4759139d0b78f63e75
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138479
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/odk/source/com/sun/star/lib/loader/WinRegKey.java 
b/odk/source/com/sun/star/lib/loader/WinRegKey.java
index 3276458fc6f6..597b506d9ca2 100644
--- a/odk/source/com/sun/star/lib/loader/WinRegKey.java
+++ b/odk/source/com/sun/star/lib/loader/WinRegKey.java
@@ -20,6 +20,7 @@
 package com.sun.star.lib.loader;
 
 import java.io.BufferedReader;
+import java.io.IOException;
 import java.io.InputStreamReader;
 import java.nio.charset.Charset;
 import java.util.regex.Matcher;
@@ -40,13 +41,23 @@ final class WinRegKey {
         m_keyName = keyName;
     }
 
+    private static void close(BufferedReader c) {
+        if (c == null) return;
+        try {
+            c.close();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+    }
+
     /**
      * Reads the default string value.
      */
     public String getStringValue() throws WinRegKeyException {
+        BufferedReader r = null;
         try {
             Process p = Runtime.getRuntime().exec(new String[]{"reg", "QUERY", 
m_keyName});
-            BufferedReader r = new BufferedReader(
+            r = new BufferedReader(
                 new InputStreamReader(p.getInputStream(), 
Charset.defaultCharset()));
             String v = null;
             Pattern pt = 
Pattern.compile("\\s+\\(Default\\)\\s+REG_SZ\\s+(.+)");
@@ -77,6 +88,9 @@ final class WinRegKey {
         } catch (Exception e) {
             throw new WinRegKeyException(e);
         }
+        finally {
+            close(r);
+        }
     }
 }
 

Reply via email to