diff --git a/src/core/lib/support/slice.c b/src/core/lib/support/slice.c
index f15a9a1e21aaf1021caa9fa4f6b3c4a1b4d8606d..2959a6716f0ade98752a708a4b552847abbaaa30 100644
--- a/src/core/lib/support/slice.c
+++ b/src/core/lib/support/slice.c
@@ -351,7 +351,7 @@ int gpr_slice_str_cmp(gpr_slice a, const char *b) {
 
 int gpr_slice_is_equivalent(gpr_slice a, gpr_slice b) {
   if (a.refcount == NULL || b.refcount == NULL) {
-    return gpr_slice_cmp(a, b);
+    return gpr_slice_cmp(a, b) == 0;
   }
   return a.data.refcounted.length == b.data.refcounted.length &&
          a.data.refcounted.bytes == b.data.refcounted.bytes;