[
https://issues.apache.org/jira/browse/CAMEL-21972?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-21972.
---------------------------------
Assignee: Thomas Cunningham
Resolution: Fixed
> ComponentArtifactHelper.java add try with resources
> ---------------------------------------------------
>
> Key: CAMEL-21972
> URL: https://issues.apache.org/jira/browse/CAMEL-21972
> Project: Camel
> Issue Type: Task
> Components: camel-catalog
> Reporter: Thomas Cunningham
> Assignee: Thomas Cunningham
> Priority: Minor
> Fix For: 4.12.0
>
>
> Coverity lists a number of errors in streams not being closed. Add try
> with resources, add test.
>
> Error: RESOURCE_LEAK (CWE-404): [#def1] [important]
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:39:13:
> alloc_fn: A new resource is returned from allocation method
> "getResourceAsStream".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:39:13:
> var_assign: Assigning: "is" = resource returned from
> "classLoader.getResourceAsStream("META-INF/services/org/apache/camel/component.properties")".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:41:17:
> noescape: Resource "is" is not closed or saved in "load".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:43:9:
> leaked_resource: Variable "is" going out of scope leaks the resource it
> refers to.
> # 41| answer.load(is);
> # 42| }
> # 43|-> } catch (Exception e) {
> # 44| logger.warn("Error loading
> META-INF/services/org/apache/camel/component.properties file due {}",
> e.getMessage(), e);
> # 45| }
> --------------------------------------------------------------------------------
> Errore #3:
> Error: RESOURCE_LEAK (CWE-404): [#def2] [important]
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:51:13:
> alloc_fn: A new resource is returned from allocation method
> "getResourceAsStream".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:51:13:
> var_assign: Assigning: "is" = resource returned from
> "classLoader.getResourceAsStream("META-INF/services/org/apache/camel/component/"
> + scheme)".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:54:17:
> noescape: Resource "is" is not closed or saved in "load".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:55:17:
> leaked_resource: Variable "is" going out of scope leaks the resource it
> refers to.
> # 53| Properties props = new Properties();
> # 54| props.load(is);
> # 55|-> return (String) props.get("class");
> # 56| }
> # 57| } catch (Exception e) {
> --------------------------------------------------------------------------------
> Errore #4:
> Error: RESOURCE_LEAK (CWE-404): [#def3] [important]
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:78:17:
> alloc_fn: A new resource is returned from allocation method
> "getResourceAsStream".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:78:17:
> var_assign: Assigning: "is" = resource returned from
> "classLoader.getResourceAsStream(path)".
> catalog/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/ComponentArtifactHelper.java:82:13:
> leaked_resource: Variable "is" going out of scope leaks the resource it
> refers to.
> # 80| answer = loadText(is);
> # 81| }
> # 82|-> } catch (Exception e) {
> # 83| logger.warn("Error loading {} file due {}", path,
> e.getMessage(), e);
> # 84| }
--
This message was sent by Atlassian Jira
(v8.20.10#820010)