| 177 | } |
| 178 | |
| 179 | static _Noreturn void host_cleanup_force_terminate(const char *component) { |
| 180 | /* Early startup failures can precede the ordinary operation-log setup. |
| 181 | * Make one best-effort attempt to establish that same owner-only durable |
| 182 | * sink before the process-level escape releases every native claim. */ |
| 183 | if (!g_host_log_file) { |
| 184 | char conflict_log[HOST_PATH_CAP]; |
| 185 | cbm_ui_log_init(); |
| 186 | (void)host_log_open(conflict_log); |
| 187 | } |
| 188 | host_force_terminate(component); |
| 189 | } |
| 190 | |
| 191 | static void host_cleanup_release_until_complete(cbm_daemon_host_cleanup_release_for_test_fn release, |
| 192 | void *context, const char *component) { |
no test coverage detected