… | |
… | |
283 | activity = false; |
283 | activity = false; |
284 | |
284 | |
285 | for (int i = tw.size (); i--; ) |
285 | for (int i = tw.size (); i--; ) |
286 | if (!tw[i]) |
286 | if (!tw[i]) |
287 | tw.erase_unordered (i); |
287 | tw.erase_unordered (i); |
288 | else if (tw[i]->at <= NOW + IOM_ACCURACY) |
288 | else if (tw[i]->at <= NOW) |
289 | { |
289 | { |
290 | time_watcher &w = *tw[i]; |
290 | time_watcher &w = *tw[i]; |
291 | |
291 | |
292 | unreg (w); |
292 | unreg (w); |
293 | w.call (w); |
293 | w.call (w); |
… | |
… | |
388 | char ch; |
388 | char ch; |
389 | |
389 | |
390 | while (read (sigpipe[0], &ch, 1) > 0) |
390 | while (read (sigpipe[0], &ch, 1) > 0) |
391 | ; |
391 | ; |
392 | |
392 | |
393 | for (sig_vec **svp = sw.end (); svp-- > sw.begin (); ) |
393 | for (vector<sig_vec *>::iterator svp = sw.end (); svp-- > sw.begin (); ) |
394 | if (*svp && (*svp)->pending) |
394 | if (*svp && (*svp)->pending) |
395 | { |
395 | { |
396 | sig_vec &sv = **svp; |
396 | sig_vec &sv = **svp; |
397 | for (int i = sv.size (); i--; ) |
397 | for (int i = sv.size (); i--; ) |
398 | if (!sv[i]) |
398 | if (!sv[i]) |