--- libaitsched/src/aitsched.c 2011/10/04 12:34:33 1.2 +++ libaitsched/src/aitsched.c 2011/10/04 14:04:35 1.2.2.2 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitsched.c,v 1.2 2011/10/04 12:34:33 misho Exp $ +* $Id: aitsched.c,v 1.2.2.2 2011/10/04 14:04:35 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -104,6 +104,7 @@ schedRegisterHooks(sched_root_task_t * __restrict root root->root_hooks.hook_exec.cancel = sched_hook_cancel; root->root_hooks.hook_exec.fetch = sched_hook_fetch; + root->root_hooks.hook_exec.exception = sched_hook_exception; root->root_hooks.hook_root.init = sched_hook_init; root->root_hooks.hook_root.fini = sched_hook_fini; @@ -378,8 +379,9 @@ schedRun(sched_root_task_t * __restrict root, volatile return -1; if (root->root_hooks.hook_exec.fetch) { if (killState) - while (!*killState && (task = root->root_hooks.hook_exec.fetch(root, NULL))) - schedCall(task); + while (!*killState) + if ((task = root->root_hooks.hook_exec.fetch(root, NULL))) + schedCall(task); else while ((task = root->root_hooks.hook_exec.fetch(root, NULL))) schedCall(task);