a035295783
Fix #1: Duplicate trap handlers with missing flock unlock (CRITICAL) Problem: Line 32 set trap with flock unlock, line 373 overwrote it Result: Flock never unlocked, lock file stays locked Fix: Consolidated into single trap with flock unlock Impact: Prevents future invocations from being blocked Fix #2: User extraction cache being bypassed (10 locations) Problem: get_user_from_path_cached() existed but 10 places called extract_user_from_path() directly, bypassing cache Result: For 200 sites, user extraction done 200+ times without cache Fix: Replaced all 10 direct calls with cached version Locations: Lines 1308, 1364, 1687, 1836, 2051, 2180, 2369, 2537, 2700 Impact: Eliminates redundant stat calls for user extraction Fix #3: Removed duplicate first trap Problem: Line 32 had first trap that was immediately overwritten Fix: Removed with note that single trap at line 373 handles both Impact: Cleaner code, prevents confusion