From e548ed043fd1e80a77ba3cfbbc77219dac6987f8 Mon Sep 17 00:00:00 2001 From: Michael Woolweaver Date: Mon, 31 Mar 2025 22:18:32 -0500 Subject: [PATCH] ensure gravity_Cleanup() checks the correct directory for list data also glob with * to ensure .etag & .sha1 are removed as well should fix #6075 Co-authored-by: yubiuser Signed-off-by: Michael Woolweaver --- gravity.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gravity.sh b/gravity.sh index 493f2b15..151801ed 100755 --- a/gravity.sh +++ b/gravity.sh @@ -572,7 +572,7 @@ gravity_DownloadBlocklists() { echo "" done - gravity_Blackbody=true + DownloadBlocklists_done=true } compareLists() { @@ -932,13 +932,13 @@ gravity_Cleanup() { # invalid_domains location rm "${GRAVITY_TMPDIR}"/*.ph-non-domains 2>/dev/null - # Ensure this function only runs when gravity_SetDownloadOptions() has completed - if [[ "${gravity_Blackbody:-}" == true ]]; then - # Remove any unused .domains files - for file in "${piholeDir}"/*."${domainsExtension}"; do - # If list is not in active array, then remove it + # Ensure this function only runs when gravity_DownloadBlocklists() has completed + if [[ "${DownloadBlocklists_done:-}" == true ]]; then + # Remove any unused .domains/.etag/.sha files + for file in "${listsCacheDir}"/*."${domainsExtension}"; do + # If list is not in active array, then remove it and all associated files if [[ ! "${activeDomains[*]}" == *"${file}"* ]]; then - rm -f "${file}" 2>/dev/null || + rm -f "${file}"* 2>/dev/null || echo -e " ${CROSS} Failed to remove ${file##*/}" fi done