From a779d861a665e3e8ec981111161fa8fa738113a1 Mon Sep 17 00:00:00 2001 From: shuki Date: Thu, 5 Mar 2026 00:14:33 +0200 Subject: [PATCH] Fix CSRF upgrade path: remove stale file before creating directory Old versions stored CSRF/flash as plain files at the directory path. New code expects directories. _ensure_dir now removes conflicting plain files left by older versions. Co-Authored-By: Claude Opus 4.6 --- whm/gniza-whm/lib/GnizaWHM/UI.pm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/whm/gniza-whm/lib/GnizaWHM/UI.pm b/whm/gniza-whm/lib/GnizaWHM/UI.pm index 72ffe1f..bd4d6dc 100644 --- a/whm/gniza-whm/lib/GnizaWHM/UI.pm +++ b/whm/gniza-whm/lib/GnizaWHM/UI.pm @@ -125,6 +125,8 @@ sub render_flash { sub _ensure_dir { my ($dir) = @_; + # Remove stale plain file left by older versions (upgrade path) + unlink $dir if -e $dir && ! -d $dir; unless (-d $dir) { mkdir $dir, 0700; }