This is an automated email from the ASF dual-hosted git repository.
andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git
The following commit(s) were added to refs/heads/main by this push:
new b7d9ad6aaa GH-3475: Fix NPE in Quad.isConcrete() when graph is null.
b7d9ad6aaa is described below
commit b7d9ad6aaae66888da6025c29f9262e3dbf739f0
Author: Claus Stadler <[email protected]>
AuthorDate: Sun Sep 28 20:28:39 2025 +0200
GH-3475: Fix NPE in Quad.isConcrete() when graph is null.
---
jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java | 2 +-
jena-arq/src/test/java/org/apache/jena/util/TestNodeUtils.java | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
b/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
index b3c8be8802..a04f2ed78c 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
@@ -97,7 +97,7 @@ public class Quad implements Serializable
}
public boolean isConcrete() {
- return subject.isConcrete() && predicate.isConcrete() &&
object.isConcrete() && graph.isConcrete();
+ return subject.isConcrete() && predicate.isConcrete() &&
object.isConcrete() && (graph == null || graph.isConcrete());
}
/**
diff --git a/jena-arq/src/test/java/org/apache/jena/util/TestNodeUtils.java
b/jena-arq/src/test/java/org/apache/jena/util/TestNodeUtils.java
index 828637949d..661905cbde 100644
--- a/jena-arq/src/test/java/org/apache/jena/util/TestNodeUtils.java
+++ b/jena-arq/src/test/java/org/apache/jena/util/TestNodeUtils.java
@@ -19,6 +19,7 @@
package org.apache.jena.util;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.Test;
@@ -66,6 +67,8 @@ public class TestNodeUtils {
assertEquals(expected, NodeUtils.isValidAsRDF(s, p, o));
}
+ @Test public void concrete_triple_in_quad() { assertTrue(Quad.create(null,
s, p, o).isConcrete()); }
+
@Test public void valid_quad_01() { testValidityQuad(true, "(:g :s :p
:o)"); }
@Test public void valid_quad_02() { testValidityQuad(true, Quad.create(g,
s, p, o)); }