]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/dbObjects/Domain.java
FIX: coverity resource leaks.
[gigi.git] / src / org / cacert / gigi / dbObjects / Domain.java
index c29d9b2ba00adbdede5721c04571f399bd5494c1..9df2e4822c7f33eae8cc8f1003011e8a44078c4e 100644 (file)
@@ -1,6 +1,7 @@
 package org.cacert.gigi.dbObjects;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.net.IDN;
 import java.util.Arrays;
 import java.util.Collections;
@@ -70,8 +71,8 @@ public class Domain implements IdCachable {
     private static final Set<String> IDNEnabledTLDs;
     static {
         Properties CPS = new Properties();
-        try {
-            CPS.load(Domain.class.getResourceAsStream("CPS.properties"));
+        try (InputStream resourceAsStream = Domain.class.getResourceAsStream("CPS.properties")) {
+            CPS.load(resourceAsStream);
             IDNEnabledTLDs = Collections.unmodifiableSet(new HashSet<>(Arrays.asList(CPS.getProperty("IDN-enabled").split(","))));
         } catch (IOException e) {
             throw new Error(e);
@@ -168,10 +169,10 @@ public class Domain implements IdCachable {
     }
 
     public void insert() throws GigiApiException {
-        if (id != 0) {
-            throw new GigiApiException("already inserted.");
-        }
         synchronized (Domain.class) {
+            if (id != 0) {
+                throw new GigiApiException("already inserted.");
+            }
             checkInsert(suffix);
             GigiPreparedStatement ps = DatabaseConnection.getInstance().prepare("INSERT INTO `domains` SET memid=?, domain=?");
             ps.setInt(1, owner.getId());