| 4596 | static const char WIN_LIFETIME_LOCK_NAME[] = "cbm-lifetime.lock"; |
| 4597 | |
| 4598 | static void win_private_lock_release_complete(cbm_private_file_lock_t **lock_io) { |
| 4599 | uint64_t deadline = ipc_deadline_after(CBM_DAEMON_IPC_COORDINATION_CLEANUP_MS); |
| 4600 | while (lock_io && *lock_io) { |
| 4601 | (void)cbm_private_file_lock_release(lock_io); |
| 4602 | if (!*lock_io) { |
| 4603 | return; |
| 4604 | } |
| 4605 | if (ipc_now_ms() >= deadline) { |
| 4606 | ipc_coordination_cleanup_fail_stop("private_lock_cleanup"); |
| 4607 | } |
| 4608 | Sleep(1); |
| 4609 | } |
| 4610 | } |
| 4611 | |
| 4612 | static win_generation_address_t *win_endpoint_generation_snapshot( |
| 4613 | const cbm_daemon_ipc_endpoint_t *endpoint) { |
no test coverage detected