# # # patch "usher.cc" # from [4ed30076af3edf03fd8c284c14f81780fca81e7a] # to [eb45e37e4b15b1bff6183ad7e1f584b5d70040ac] # ============================================================ --- usher.cc 4ed30076af3edf03fd8c284c14f81780fca81e7a +++ usher.cc eb45e37e4b15b1bff6183ad7e1f584b5d70040ac @@ -1,3 +1,4 @@ +// -*- mode: C++; c-file-style: "gnu"; indent-tabs-mode: nil -*- // Timothy Brownawell // GPL v2 // @@ -653,9 +654,14 @@ if (c != servers_by_host.end()) { list >::iterator>::iterator j; for (j = c->second->by_host.begin(); j != c->second->by_host.end(); ++j) - if ((*j)->first == *i) { - servers_by_host.erase(*j); - c->second->by_host.erase(j); + { + list >::iterator>::iterator j_saved + = j; + ++j; + if ((*j_saved)->first == *i) { + servers_by_host.erase(*j_saved); + c->second->by_host.erase(j_saved); + } } } c = servers_by_host.insert(make_pair(*i, me)).first;