Repository: groovy
Updated Branches:
  refs/heads/GROOVY_2_5_X be241758d -> 20c351f6a


grammar correction


Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/20c351f6
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/20c351f6
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/20c351f6

Branch: refs/heads/GROOVY_2_5_X
Commit: 20c351f6ad83de6403c9266665ce20827c594818
Parents: be24175
Author: Paul King <[email protected]>
Authored: Sun Aug 19 19:50:38 2018 +1000
Committer: Paul King <[email protected]>
Committed: Sun Aug 19 19:51:29 2018 +1000

----------------------------------------------------------------------
 .../org/codehaus/groovy/ast/decompiled/Annotations.java | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/groovy/blob/20c351f6/src/main/java/org/codehaus/groovy/ast/decompiled/Annotations.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/codehaus/groovy/ast/decompiled/Annotations.java 
b/src/main/java/org/codehaus/groovy/ast/decompiled/Annotations.java
index 2974d00..297dbb0 100644
--- a/src/main/java/org/codehaus/groovy/ast/decompiled/Annotations.java
+++ b/src/main/java/org/codehaus/groovy/ast/decompiled/Annotations.java
@@ -48,14 +48,22 @@ class Annotations {
 
         AnnotationNode node = new DecompiledAnnotationNode(classNode);
         for (Map.Entry<String, Object> entry : annotation.members.entrySet()) {
-            node.addMember(entry.getKey(), 
annotationValueToExpression(entry.getValue(), resolver));
+            addMemberIfFound(resolver, node, entry);
         }
         return node;
     }
 
+    private static void addMemberIfFound(AsmReferenceResolver resolver, 
AnnotationNode node, Map.Entry<String, Object> entry) {
+        Expression value = annotationValueToExpression(entry.getValue(), 
resolver);
+        if (value != null) {
+            node.addMember(entry.getKey(), value);
+        }
+    }
+
     private static Expression annotationValueToExpression(Object value, 
AsmReferenceResolver resolver) {
         if (value instanceof TypeWrapper) {
-            return new 
ClassExpression(resolver.resolveType(Type.getType(((TypeWrapper) value).desc)));
+            ClassNode type = 
resolver.resolveClassNullable(Type.getType(((TypeWrapper) 
value).desc).getClassName());
+            return type != null ? new ClassExpression(type) : null;
         }
 
         if (value instanceof EnumConstantWrapper) {

Reply via email to