From c819d919634964665a4cd69e8a86698bd62aeae5 Mon Sep 17 00:00:00 2001 From: deanlee Date: Wed, 3 Dec 2025 16:17:03 +0800 Subject: [PATCH] zero-initialize fds and buffs before ipc_sendrecv --- msgq/visionipc/visionipc_client.cc | 4 ++-- msgq/visionipc/visionipc_server.cc | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/msgq/visionipc/visionipc_client.cc b/msgq/visionipc/visionipc_client.cc index 0773c6990..56d97707d 100644 --- a/msgq/visionipc/visionipc_client.cc +++ b/msgq/visionipc/visionipc_client.cc @@ -52,8 +52,8 @@ bool VisionIpcClient::connect(bool blocking){ assert(r == sizeof(type)); // Get FDs - int fds[VISIONIPC_MAX_FDS]; - VisionBuf bufs[VISIONIPC_MAX_FDS]; + int fds[VISIONIPC_MAX_FDS] = {}; + VisionBuf bufs[VISIONIPC_MAX_FDS] = {}; r = ipc_sendrecv_with_fds(false, socket_fd, &bufs, sizeof(bufs), fds, VISIONIPC_MAX_FDS, &num_buffers); if (r < 0) { // only expected error is server shutting down diff --git a/msgq/visionipc/visionipc_server.cc b/msgq/visionipc/visionipc_server.cc index 0b8579c87..688725f37 100644 --- a/msgq/visionipc/visionipc_server.cc +++ b/msgq/visionipc/visionipc_server.cc @@ -134,9 +134,9 @@ void VisionIpcServer::listener(){ continue; } - int fds[VISIONIPC_MAX_FDS]; + int fds[VISIONIPC_MAX_FDS] = {}; int num_fds = buffers[type].size(); - VisionBuf bufs[VISIONIPC_MAX_FDS]; + VisionBuf bufs[VISIONIPC_MAX_FDS] = {}; for (int i = 0; i < num_fds; i++){ fds[i] = buffers[type][i]->fd;