diff --git a/src/core/lib/channel/http_client_filter.c b/src/core/lib/channel/http_client_filter.c
index 347fc5c2082d85fc190a4dd7dc6d79edf6745e61..caab03d577479414c99bea9cef185b30413d2bfc 100644
--- a/src/core/lib/channel/http_client_filter.c
+++ b/src/core/lib/channel/http_client_filter.c
@@ -329,7 +329,7 @@ static grpc_error *hc_mutate_op(grpc_exec_ctx *exec_ctx,
         size_t path_length = strlen(t) + 1;
         *(t + path_length) = '\0';
         path_with_query_slice =
-            grpc_slice_sub_no_ref(path_with_query_slice, 0, path_length);
+            grpc_slice_sub(path_with_query_slice, 0, path_length);
 
         /* substitute previous path with the new path+query */
         grpc_mdelem mdelem_path_and_query = grpc_mdelem_from_slices(