Skip to content

Fixed: CLIENT_s::UpdateCommRules still used an invalid iterator if it erased one, which could cause the server to crash.

Erasing a client's comm rule in CLIENT_s::UpdateCommRules like this:

if ( i->IsObsolete( ))
	commRules.erase( i );
else
	i++;

Means that the iterator i becomes invalid after erasing it, and remains that way. This line must be changed to i = commRules.erase( i ); to ensure that i is set to the next element in the list and remains valid.

Merge request reports