diff --git a/reactor-core/src/main/java/reactor/core/publisher/SignalLogger.java b/reactor-core/src/main/java/reactor/core/publisher/SignalLogger.java index 739b0a59c6..2bb083476e 100644 --- a/reactor-core/src/main/java/reactor/core/publisher/SignalLogger.java +++ b/reactor-core/src/main/java/reactor/core/publisher/SignalLogger.java @@ -238,11 +238,17 @@ else if (s instanceof Fuseable.QueueSubscription) { if (name == null) { name = clazz.getName(); } - name = name.replaceFirst(clazz.getPackage() - .getName() + ".", ""); - asString.append(name); - return asString.toString(); + String packageNameWithDot = clazz.getPackage().getName() + '.'; + int indexOfPackageName = name.indexOf(packageNameWithDot); + int indexAfterPackage = indexOfPackageName + packageNameWithDot.length(); + if (indexOfPackageName != -1 && name.length() > indexAfterPackage) { + asString.append(name, indexAfterPackage, name.length()); + } else { + asString.append(name); + } + + return asString.toString(); } @Override