This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-bcel.git

commit 2cbfe92a9e7bc8544768dd83f0783a86a85589af
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Mon Apr 1 09:15:23 2024 -0400

    Avoid possible NullPointerException in
    ArrayElementValueGen.ArrayElementValueGen(int, ElementValue[],
    ConstantPoolGen)
---
 src/changes/changes.xml                                         | 1 +
 src/main/java/org/apache/bcel/generic/ArrayElementValueGen.java | 7 +++----
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 35ab9865..27d4ca7b 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -63,6 +63,7 @@ The <action> type attribute can be add,update,fix,remove.
       <action                  type="update" dev="ggregory" due-to="Gary 
Gregory">Avoid possible NullPointerException in 
org.apache.bcel.classfile.DescendingVisitor.accept(E[]).</action>
       <action                  type="update" dev="ggregory" due-to="Gary 
Gregory">Avoid possible NullPointerException in 
AnnotationEntryGen.getAnnotationAttributes(ConstantPoolGen, 
AnnotationEntryGen[]).</action>
       <action                  type="update" dev="ggregory" due-to="Gary 
Gregory">Avoid possible NullPointerException in 
AnnotationEntryGen.copyValues(ElementValuePair[], ConstantPoolGen, 
boolean).</action>
+      <action                  type="update" dev="ggregory" due-to="Gary 
Gregory">Avoid possible NullPointerException in 
ArrayElementValueGen.ArrayElementValueGen(int, ElementValue[], 
ConstantPoolGen).</action>
       <!-- UPDATE -->
       <action                  type="update" dev="ggregory" 
due-to="Dependabot">Bump org.apache.commons:commons-parent from 66 to 67 
#283.</action>
       <action                  type="update" dev="ggregory" 
due-to="Dependabot">Bump org.jetbrains.kotlin:kotlin-stdlib from 1.9.22 to 
1.9.23 #284.</action>
diff --git a/src/main/java/org/apache/bcel/generic/ArrayElementValueGen.java 
b/src/main/java/org/apache/bcel/generic/ArrayElementValueGen.java
index 48aa4bcd..21442263 100644
--- a/src/main/java/org/apache/bcel/generic/ArrayElementValueGen.java
+++ b/src/main/java/org/apache/bcel/generic/ArrayElementValueGen.java
@@ -20,9 +20,11 @@ import java.io.DataOutputStream;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import org.apache.bcel.classfile.ArrayElementValue;
 import org.apache.bcel.classfile.ElementValue;
+import org.apache.commons.lang3.stream.Streams;
 
 /**
  * @since 6.0
@@ -55,10 +57,7 @@ public class ArrayElementValueGen extends ElementValueGen {
         if (type != ARRAY) {
             throw new IllegalArgumentException("Only element values of type 
array can be built with this ctor - type specified: " + type);
         }
-        this.evalues = new ArrayList<>();
-        for (final ElementValue elementValue : elementValues) {
-            evalues.add(ElementValueGen.copy(elementValue, cpool, true));
-        }
+        this.evalues = Streams.of(elementValues).map(e -> 
ElementValueGen.copy(e, cpool, true)).collect(Collectors.toList());
     }
 
     public void addElement(final ElementValueGen gen) {

Reply via email to