Commit fcba1d2c authored by Willem Thiart's avatar Willem Thiart
Browse files

Add assert when removing node that doesn't exist

parent 8f57dc94
...@@ -792,19 +792,24 @@ void raft_remove_node(raft_server_t* me_, raft_node_t* node) ...@@ -792,19 +792,24 @@ void raft_remove_node(raft_server_t* me_, raft_node_t* node)
{ {
raft_server_private_t* me = (raft_server_private_t*)me_; raft_server_private_t* me = (raft_server_private_t*)me_;
raft_node_t* new_array, *new_node; raft_node_t* new_array, *new_nodes;
new_array = (raft_node_t*)calloc((me->num_nodes - 1), sizeof(raft_node_t*)); new_array = (raft_node_t*)calloc((me->num_nodes - 1), sizeof(raft_node_t*));
new_node = new_array; new_nodes = new_array;
int i; int i, found = 0;
for (i = 0; i<me->num_nodes; i++) for (i = 0; i<me->num_nodes; i++)
{ {
if (me->nodes[i] == node) if (me->nodes[i] == node)
{
found = 1;
continue; continue;
*new_node = me->nodes[i]; }
new_node++; *new_nodes = me->nodes[i];
new_nodes++;
} }
assert(found);
me->num_nodes--; me->num_nodes--;
free(me->nodes); free(me->nodes);
me->nodes = new_array; me->nodes = new_array;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment