X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=ortp_recv.c;h=d8432abc0b9dbfdc74c2f6279babfb265b318f11;hp=60fb6b0ef6c416c3d61ccbb04a773de7138fbfd7;hb=f23be61d476e3f354e31072da0e0e77050a8dc56;hpb=807e530e7dc6cf3b5bc5e241d00983647724bd52 diff --git a/ortp_recv.c b/ortp_recv.c index 60fb6b0e..d8432abc 100644 --- a/ortp_recv.c +++ b/ortp_recv.c @@ -40,7 +40,6 @@ extern int msg_to_buf(mblk_t *, char *, int); * \sa receiver receiver_node */ struct private_ortp_recv_data { - /** * * @@ -107,6 +106,11 @@ static void ortp_recv_post_select(struct sched *s, struct task *t) unsigned chunk_time; // PARA_INFO_LOG("rn: %p, pord: %p, session: %p\n", rn, pord, pord->session); + t->ret = -E_ORTP_RECV_EOF; + if (rn->output_eof && *rn->output_eof) { + rn->eof = 1; + return; + } t->ret = 1; if (pord->start.tv_sec) if (tv_diff(&s->now, &pord->next_chunk, NULL) < 0) @@ -205,8 +209,8 @@ success: compute_next_chunk(chunk_time, pord); return; err_out: + rn->eof = 1; freemsg(mp); - return; } static void ortp_shutdown(void)