fix foreach_ident
This commit is contained in:
parent
f26979a69f
commit
4627321e23
|
@ -62,8 +62,12 @@ std::size_t internal_state::get_identnum() const {
|
||||||
void internal_state::foreach_ident(void (*f)(ident *, void *), void *data) {
|
void internal_state::foreach_ident(void (*f)(ident *, void *), void *data) {
|
||||||
auto nids = get_identnum();
|
auto nids = get_identnum();
|
||||||
for (std::size_t i = 0; i < nids; ++i) {
|
for (std::size_t i = 0; i < nids; ++i) {
|
||||||
std::lock_guard<std::mutex> l{ident_mtx};
|
ident *id;
|
||||||
f(identmap[i], data);
|
{
|
||||||
|
std::lock_guard<std::mutex> l{ident_mtx};
|
||||||
|
id = identmap[i];
|
||||||
|
}
|
||||||
|
f(id, data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue