diff --git a/src/lib/icu/Compare.hxx b/src/lib/icu/Compare.hxx
index 5504b5d51..ee079a56f 100644
--- a/src/lib/icu/Compare.hxx
+++ b/src/lib/icu/Compare.hxx
@@ -38,12 +38,12 @@ public:
 
 	IcuCompare(const IcuCompare &src) noexcept
 		:needle(src
-			? AllocatedString<>::Duplicate(src.needle.c_str())
+			? src.needle.Clone()
 			: nullptr) {}
 
 	IcuCompare &operator=(const IcuCompare &src) noexcept {
 		needle = src
-			? AllocatedString<>::Duplicate(src.needle.c_str())
+			? src.needle.Clone()
 			: nullptr;
 		return *this;
 	}