Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | cache_dir | |||
character(len=*), | intent(in) | :: | project_name |
function is_locked(cache_dir, project_name) result(locked) character(len=*), intent(in) :: cache_dir, project_name logical :: locked character(len=512) :: lock_file lock_file = get_lock_file_path(cache_dir, project_name) ! Use system utilities for cross-platform lock detection ! This uses a platform-agnostic file check instead of shell commands locked = sys_file_exists(lock_file) ! Only check for stale locks when explicitly requested, not during normal checks ! This prevents race conditions where a fresh lock is incorrectly considered stale end function is_locked