FOR_EACH_SLOT(i) {
struct slot_info *s = &slot[i];
- if (s->wng && !s->wng->task.error) {
- PARA_INFO_LOG("unregistering writer node group in slot %d\n",
+ if (s->wng && s->wng->task.error >= 0) {
+ PARA_INFO_LOG("deactivating wng in slot %d\n",
i);
- wng_unregister(s->wng);
s->wng->task.error = error;
}
- if (s->fc && !s->fc->task.error) {
- PARA_INFO_LOG("unregistering filter chain in slot %d\n", i);
- unregister_task(&s->fc->task);
+ if (s->fc && s->fc->task.error >= 0) {
+ PARA_INFO_LOG("deactivatimg filter chain in slot %d\n", i);
s->fc->task.error = error;
}
- if (s->receiver_node && !s->receiver_node->task.error) {
- PARA_INFO_LOG("unregistering receiver_node in slot %d\n", i);
- unregister_task(&s->receiver_node->task);
+ if (s->receiver_node && s->receiver_node->task.error >= 0) {
+ PARA_INFO_LOG("deactivating receiver_node in slot %d\n", i);
s->receiver_node->task.error = error;
}
}