| 178 | } |
| 179 | |
| 180 | void cbm_progress_sink_init(FILE *out) { |
| 181 | progress_sink_mutex_ensure(); |
| 182 | cbm_mutex_lock(&s_sink_mutex); |
| 183 | s_out = out ? out : stderr; |
| 184 | atomic_store(&s_needs_newline, 0); |
| 185 | s_gbuf_nodes = NOT_SET; |
| 186 | s_gbuf_edges = NOT_SET; |
| 187 | cbm_log_set_sink(cbm_progress_sink_fn); |
| 188 | cbm_mutex_unlock(&s_sink_mutex); |
| 189 | } |
| 190 | |
| 191 | void cbm_progress_sink_fini(void) { |
| 192 | progress_sink_mutex_ensure(); |
no test coverage detected