2016-07-06
2016-07-06 13:17:28 by Henrik Grubbström (Grubba) <grubba@grubba.org>
-
d8ff3359b106cef7e791eaf55bd16a700406d671
(9 lines)
(+7/-2)
[
Show
| Annotate
]
Branch: d8ff3359b106cef7e791eaf55bd16a700406d671
ABS: Fix listing of call_outs.
Fixes ABS listing of call_outs which have no arguments or not an array
as the first argument.
Fixes [bug 7746 (#7746)].
3352: Inside #if undefined(__NT__) and #if defined(THREADS)
t = alarm(20); // Restart the timeout timer.
array(mixed) queue = handle_queue->buffer[handle_queue->r_ptr..];
foreach(queue, mixed v) {
- if (!v) continue;
+ if (!v) {
+ // Either an entry past the write pointer, or an entry that
+ // has been zapped by a handler thread during our processing.
+ continue;
+ }
if (!arrayp(v)) {
report_debug(" *** Strange entry: %O ***\n", v);
} else {
3367: Inside #if undefined(__NT__)
t = alarm(20); // Restart the timeout timer.
foreach(call_out_info(), array info) {
report_debug(" %4d seconds: %O(%{%O, %})\n",
- info[0], info[2], info[3]);
+ info[0], info[2], info[3..]);
}
})
master()->handle_error(err);