X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=audiod.c;h=d3f45ec95f32b046910903af1f57351a5cb1998d;hp=a76ee1fdc9866756645caf11f576461343b5bf8c;hb=b0751efcbff9e9c3e7721cf5dcbc0848575e3da5;hpb=d32eb7a5cf569ee842d91f3f830a8562fa0ae12d;ds=sidebyside diff --git a/audiod.c b/audiod.c index a76ee1fd..d3f45ec9 100644 --- a/audiod.c +++ b/audiod.c @@ -212,20 +212,17 @@ static void kill_all_decoders(int error) 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; } }