aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/slice/slice.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/lib/slice/slice.c')
-rw-r--r--src/core/lib/slice/slice.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/lib/slice/slice.c b/src/core/lib/slice/slice.c
index d1f045bd6f..dc3e6fd93d 100644
--- a/src/core/lib/slice/slice.c
+++ b/src/core/lib/slice/slice.c
@@ -368,3 +368,11 @@ int grpc_slice_str_cmp(grpc_slice a, const char *b) {
if (d != 0) return d;
return memcmp(GRPC_SLICE_START_PTR(a), b, b_length);
}
+
+int grpc_slice_is_equivalent(grpc_slice a, grpc_slice b) {
+ if (a.refcount == NULL || b.refcount == NULL) {
+ return grpc_slice_cmp(a, b) == 0;
+ }
+ return a.data.refcounted.length == b.data.refcounted.length &&
+ a.data.refcounted.bytes == b.data.refcounted.bytes;
+}