ensure_cache_dir Subroutine

public subroutine ensure_cache_dir(cache_dir, success)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: cache_dir
logical, intent(out) :: success

Source Code

    subroutine ensure_cache_dir(cache_dir, success)
        character(len=*), intent(in) :: cache_dir
        logical, intent(out) :: success

        ! Check if directory already exists
        if (exists(trim(cache_dir))) then
            success = .true.
            return
        end if

        ! Create directory using our safe mkdir
        call mkdir(trim(cache_dir))

        ! Check if directory was created successfully
        success = exists(trim(cache_dir))

    end subroutine ensure_cache_dir