diff --git a/src/core/lib/slice/slice.cc b/src/core/lib/slice/slice.cc
index 0dacbfef3e..0743a1b003 100644
--- a/src/core/lib/slice/slice.cc
+++ b/src/core/lib/slice/slice.cc
@@ -234,6 +234,7 @@ grpc_slice grpc_slice_from_moved_buffer(grpc_core::UniquePtr<char> p,
                                         size_t len) {
   uint8_t* ptr = reinterpret_cast<uint8_t*>(p.get());
   grpc_slice slice;
+  memset(&slice, 0, sizeof(grpc_slice));
   if (len <= sizeof(slice.data.inlined.bytes)) {
     slice.refcount = nullptr;
     slice.data.inlined.length = len;
@@ -253,7 +254,7 @@ grpc_slice grpc_slice_from_moved_string(grpc_core::UniquePtr<char> p) {
 }
 
 grpc_slice grpc_slice_from_cpp_string(std::string str) {
-  grpc_slice slice;
+  grpc_slice slice = { 0 };
   if (str.size() <= sizeof(slice.data.inlined.bytes)) {
     slice.refcount = nullptr;
     slice.data.inlined.length = str.size();
diff --git a/src/core/lib/surface/server.cc b/src/core/lib/surface/server.cc
index c94551545d..3fd9797316 100644
--- a/src/core/lib/surface/server.cc
+++ b/src/core/lib/surface/server.cc
@@ -878,7 +878,7 @@ grpc_call_error Server::QueueRequestedCall(size_t cq_idx, RequestedCall* rc) {
              GRPC_ERROR_CREATE_FROM_STATIC_STRING("Server Shutdown"));
     return GRPC_CALL_OK;
   }
-  RequestMatcherInterface* rm;
+  RequestMatcherInterface* rm = nullptr;
   switch (rc->type) {
     case RequestedCall::Type::BATCH_CALL:
       rm = unregistered_request_matcher_.get();