X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=osx_write.c;h=41b190304471458884ac26bf74013e2c4a864b2a;hb=58864df1c0784c58e421949b67a091fd0a60e140;hp=b057b9c057991864b582ad8519cbac1b9083a90d;hpb=83ab4b5d38bb63cf4724022c3804d3eaa2ac51d3;p=paraslash.git diff --git a/osx_write.c b/osx_write.c index b057b9c0..41b19030 100644 --- a/osx_write.c +++ b/osx_write.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2012 Andre Noll + * Copyright (C) 2006-2013 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -301,7 +301,7 @@ static void osx_write_pre_select(struct sched *s, struct task *t) sched_request_timeout_ms(50, s); } -static void osx_write_post_select(__a_unused struct sched *s, struct task *t) +static int osx_write_post_select(__a_unused struct sched *s, struct task *t) { struct writer_node *wn = container_of(t, struct writer_node, task); struct private_osx_write_data *powd = wn->private_data; @@ -314,7 +314,7 @@ static void osx_write_post_select(__a_unused struct sched *s, struct task *t) if (!powd) { ret = btr_node_status(btrn, wn->min_iqs, BTR_NT_LEAF); if (ret == 0) - return; + return 0; if (ret < 0) goto fail; ret = core_audio_init(wn); @@ -326,7 +326,7 @@ static void osx_write_post_select(__a_unused struct sched *s, struct task *t) AudioUnitUninitialize(powd->audio_unit); CloseComponent(powd->audio_unit); btr_remove_node(&powd->callback_btrn); - goto remove_btrn; + goto fail; } } mutex_lock(powd->mutex); @@ -337,7 +337,7 @@ static void osx_write_post_select(__a_unused struct sched *s, struct task *t) ret = 0; mutex_unlock(powd->mutex); if (ret >= 0) - return; + return 0; fail: assert(ret < 0); if (powd && powd->callback_btrn) { @@ -348,7 +348,7 @@ fail: } btr_remove_node(&wn->btrn); PARA_NOTICE_LOG("%s\n", para_strerror(-ret)); - t->error = ret; + return ret; } /**