| 201 | } |
| 202 | |
| 203 | static void main_project_lock_release_fully(cbm_project_lock_lease_t **lease) { |
| 204 | uint64_t deadline = main_deadline_after(MAIN_COORDINATION_CLEANUP_MS); |
| 205 | while (lease && *lease) { |
| 206 | (void)cbm_project_lock_lease_release(lease); |
| 207 | if (!*lease) { |
| 208 | return; |
| 209 | } |
| 210 | if (cbm_now_ms() >= deadline) { |
| 211 | main_coordination_cleanup_fail_stop("project_lock_cleanup"); |
| 212 | } |
| 213 | cbm_usleep(1000); |
| 214 | } |
| 215 | } |
| 216 | |
| 217 | /* Test-only ownership proof consumed by the POSIX worker-lease contract tests. |
| 218 | * The environment variable is otherwise inert, and only a supervised physical |
no test coverage detected