diff --git a/instrumentation/java-streams/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/java/inputstream/InputStreamUtils.java b/instrumentation/java-streams/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/java/inputstream/InputStreamUtils.java index db37914fc..35a33d124 100644 --- a/instrumentation/java-streams/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/java/inputstream/InputStreamUtils.java +++ b/instrumentation/java-streams/src/main/java/io/opentelemetry/javaagent/instrumentation/hypertrace/java/inputstream/InputStreamUtils.java @@ -147,11 +147,13 @@ public static void available(InputStream inputStream, int available) { } SpanAndBuffer spanAndBuffer = GlobalObjectRegistry.inputStreamToSpanAndBufferMap.get(inputStream); - InputStreamUtils.addBody( - spanAndBuffer.span, - spanAndBuffer.attributeKey, - spanAndBuffer.byteArrayBuffer, - spanAndBuffer.charset); - GlobalObjectRegistry.inputStreamToSpanAndBufferMap.remove(inputStream); + if (spanAndBuffer != null) { + InputStreamUtils.addBody( + spanAndBuffer.span, + spanAndBuffer.attributeKey, + spanAndBuffer.byteArrayBuffer, + spanAndBuffer.charset); + GlobalObjectRegistry.inputStreamToSpanAndBufferMap.remove(inputStream); + } } }