You know, I looked into sources, and…
One does not simply remove an entity from a list while iterating over the same list.
You can’t just do remove_field(x, y, fd_…) in the “for(std::map<field_id, field_entry*>::iterator field_list_it…”-loop.
It is folly.