From: Andre Noll Date: Sun, 31 Mar 2013 14:03:19 +0000 (+0000) Subject: osx writer: Switch to the alternative post select method. X-Git-Tag: v0.4.13~39^2~22 X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=commitdiff_plain;h=ba2f65660fa615b9115b03f8eb4d7818b2fd13bb;ds=sidebyside osx writer: Switch to the alternative post select method. --- diff --git a/osx_write.c b/osx_write.c index d38e2fb1..53e57fa9 100644 --- a/osx_write.c +++ b/osx_write.c @@ -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); @@ -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; } /** @@ -363,7 +363,8 @@ void osx_write_init(struct writer *w) osx_write_cmdline_parser_init(&dummy); w->close = osx_write_close; w->pre_select = osx_write_pre_select; - w->post_select = osx_write_post_select; + w->new_post_select = osx_write_post_select; + w->post_select = NULL; w->parse_config_or_die = osx_write_parse_config_or_die; w->free_config = osx_free_config; w->help = (struct ggo_help) {