| 319 | } |
| 320 | |
| 321 | static void remove_node(struct gossmap *map, struct gossmap_node *node) |
| 322 | { |
| 323 | u32 nodeidx = gossmap_node_idx(map, node); |
| 324 | if (!nodeidx_htable_del(map->nodes, node2ptrint(node))) |
| 325 | abort(); |
| 326 | |
| 327 | /* If we had a node_announcement, it's now dead. */ |
| 328 | if (gossmap_node_announced(node)) { |
| 329 | map->num_live--; |
| 330 | map->num_dead++; |
| 331 | } |
| 332 | |
| 333 | node->nann_off = map->freed_nodes; |
| 334 | free(node->chan_idxs); |
| 335 | node->chan_idxs = NULL; |
| 336 | node->num_chans = 0; |
| 337 | map->freed_nodes = nodeidx; |
| 338 | } |
| 339 | |
| 340 | static void node_add_channel(struct gossmap_node *node, u32 chanidx) |
| 341 | { |
no test coverage detected