From 8cf28d68f511395cc34ec0e3badf0ffe03539b44 Mon Sep 17 00:00:00 2001 From: Matt Davis Date: Sun, 8 Nov 2026 19:25:26 -0500 Subject: [PATCH 1/2] Potential fix for code scanning alert no. 355: Redundant null check due to previous dereference Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> --- src/core/observation_retention.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/core/observation_retention.c b/src/core/observation_retention.c index 3c86bc39e..394061cae 100644 --- a/src/core/observation_retention.c +++ b/src/core/observation_retention.c @@ -124,8 +124,7 @@ static int remove_asset_file(const char *root, const char *stored, int *deleted) if (!stored || !*stored) return 0; char path[OBS_PATH_SIZE]; if (resolve_asset_path(root, stored, path, sizeof(path)) != 0) { - if (stored && *stored) - log_warn("Observation asset path is outside the evidence tree; not deleting"); + log_warn("Observation asset path is outside the evidence tree; not deleting"); /* A corrupt path is never a file this subsystem may remove. */ return 0; } From 0a02deecbc99e6d236427648c4f11928a2e8442e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 9 Nov 2026 00:34:09 +0000 Subject: [PATCH 2/2] lightnvr-rs: regenerate from C Generated by tools/rust-transpile/generate.py for 3f473bf. --- rust/MANIFEST.json | 4 ++-- .../src__core__observation_retention.rs | 16 +++++++--------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/rust/MANIFEST.json b/rust/MANIFEST.json index f360cd994..85a1d3e00 100644 --- a/rust/MANIFEST.json +++ b/rust/MANIFEST.json @@ -171,9 +171,9 @@ }, { "c": "src/core/observation_retention.c", - "c_sha256": "3fedd57071758c46bce550dffd1e51ecc4699fd0e677422510c7dc879bd55c9a", + "c_sha256": "e3bc51243a40f846d04b17122fc2a54e40b2d3c30e02b2f2c0a32157cbe42345", "rust": "generated/src__core__observation_retention.rs", - "rust_sha256": "82b1b6793249c1e34090a3f4ac79946a40528d13deb6a6f003fa84cdc363511c", + "rust_sha256": "d016fffa43a8b9e332dce57e020f68aa32269268c0500c2d9c7189e04c27a460", "adapted": false }, { diff --git a/rust/generated/src__core__observation_retention.rs b/rust/generated/src__core__observation_retention.rs index 46a3cfde4..15e3d2379 100644 --- a/rust/generated/src__core__observation_retention.rs +++ b/rust/generated/src__core__observation_retention.rs @@ -903,15 +903,13 @@ unsafe extern "C" fn remove_asset_file( ::core::mem::size_of::<[::core::ffi::c_char; 1024]>(), ) != 0 as ::core::ffi::c_int { - if !stored.is_null() && *stored as ::core::ffi::c_int != 0 { - _log_message_ctx( - log_level_t::LOG_LEVEL_WARN, - LOG_COMPONENT, - _log_stream_name, - b"Observation asset path is outside the evidence tree; not deleting\0".as_ptr() - as *const ::core::ffi::c_char, - ); - } + _log_message_ctx( + log_level_t::LOG_LEVEL_WARN, + LOG_COMPONENT, + _log_stream_name, + b"Observation asset path is outside the evidence tree; not deleting\0".as_ptr() + as *const ::core::ffi::c_char, + ); return 0 as ::core::ffi::c_int; } return remove_file(&raw mut path as *mut ::core::ffi::c_char, deleted);