From 016a9636408d8c8de17972ffa828e85524f14216 Mon Sep 17 00:00:00 2001 From: Niki <48361584+bnikster@users.noreply.github.com> Date: Thu, 15 Jul 2021 19:27:23 +0200 Subject: [PATCH] fixed potential NullPointerException if AMQP.Properties::getHeaders returns null (#3588) --- .../rabbitmq/TextMapExtractAdapter.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/instrumentation/rabbitmq-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/TextMapExtractAdapter.java b/instrumentation/rabbitmq-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/TextMapExtractAdapter.java index 75f0f90bc7..9288cf48d2 100644 --- a/instrumentation/rabbitmq-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/TextMapExtractAdapter.java +++ b/instrumentation/rabbitmq-2.7/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/TextMapExtractAdapter.java @@ -6,6 +6,7 @@ package io.opentelemetry.javaagent.instrumentation.rabbitmq; import io.opentelemetry.context.propagation.TextMapGetter; +import java.util.Collections; import java.util.Map; public class TextMapExtractAdapter implements TextMapGetter> { @@ -14,12 +15,16 @@ public class TextMapExtractAdapter implements TextMapGetter> @Override public Iterable keys(Map carrier) { - return carrier.keySet(); + return carrier != null ? carrier.keySet() : Collections.emptyList(); } @Override public String get(Map carrier, String key) { - Object obj = carrier.get(key); - return obj == null ? null : obj.toString(); + if (carrier != null) { + Object obj = carrier.get(key); + return obj == null ? null : obj.toString(); + } else { + return null; + } } }