X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=write_common.c;h=1ff03761e22ec3bd8c9b3cdfaff05ac90a4a01c9;hp=0c028aaa1001c2c3195fce24c408adf6db68ac45;hb=5d581fbd46a6d1949bfd876aec63041dc6724eb0;hpb=471684761a2039bbc89aa1e3c33c62de6bef86cf diff --git a/write_common.c b/write_common.c index 0c028aaa..1ff03761 100644 --- a/write_common.c +++ b/write_common.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006-2007 Andre Noll + * Copyright (C) 2006-2008 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -28,7 +28,7 @@ static void wng_pre_select(__a_unused struct sched *s, struct task *t) struct writer_node *wn = &g->writer_nodes[i]; t->ret = wn->writer->pre_select(s, wn); if (t->ret < 0) { - g->eof = 1; + g->error = t->ret; return; } } @@ -44,7 +44,7 @@ static void wng_post_select(struct sched *s, struct task *t) struct writer_node *wn = &g->writer_nodes[i]; t->ret = wn->writer->post_select(s, wn); if (t->ret < 0) { - g->eof = 1; + g->error = t->ret; return; } if (!i) @@ -58,9 +58,9 @@ static void wng_post_select(struct sched *s, struct task *t) FOR_EACH_WRITER_NODE(i, g) g->writer_nodes[i].written -= min_written; } - if (!*g->loaded && *g->input_eof) { - g->eof = 1; - t->ret = -E_WNG_EOF; + if (!*g->loaded && *g->input_error) { + g->error = *g->input_error; + t->ret = g->error; return; } t->ret = 1; @@ -78,7 +78,7 @@ static void wng_post_select(struct sched *s, struct task *t) * \return If at least one open function returned an error, all successful * writer notes get closed and this error value is returned. Upon success, a * task associated with \a g is registered to the scheduler and the function - * returnes a positive value. + * returns a positive value. * */ int wng_open(struct writer_node_group *g) { @@ -96,17 +96,17 @@ int wng_open(struct writer_node_group *g) g->max_chunk_bytes = PARA_MAX(g->max_chunk_bytes, ret); } sprintf(g->task.status, "%s", "writer node group"); - g->eof = 0; + g->error = 0; return 1; err_out: - PARA_ERROR_LOG("%s\n", PARA_STRERROR(-ret)); + PARA_ERROR_LOG("%s\n", para_strerror(-ret)); unregister_task(&g->task); while (i > 0) { struct writer_node *wn = &g->writer_nodes[--i]; wn->writer->close(wn); } g->num_writers = 0; - g->eof = 1; + g->error = ret; return ret; } @@ -119,7 +119,6 @@ err_out: void wng_unregister(struct writer_node_group *g) { unregister_task(&g->task); - g->eof = 1; } /** @@ -180,7 +179,7 @@ void init_supported_writers(void) * \param writer_num contains the number of the writer upon success * * This function checks whether \a wa starts with the name of a supported - * paraslash writer, optinally followed by a colon and any options for that + * paraslash writer, optionally followed by a colon and any options for that * writer. If a valid writer name was found and further are present, the * remaining part of \a wa is passed to that writer's config parser. *