]> git.tue.mpg.de Git - paraslash.git/commitdiff
play: Switch to the alternative post select method.
authorAndre Noll <maan@systemlinux.org>
Sun, 31 Mar 2013 17:27:28 +0000 (17:27 +0000)
committerAndre Noll <maan@systemlinux.org>
Tue, 30 Apr 2013 12:12:46 +0000 (14:12 +0200)
play.c

diff --git a/play.c b/play.c
index 5794b9529a037cef913da03cdd86078cad96ea55..50db73a61811f9b4174bb4911537cce9c213113e 100644 (file)
--- a/play.c
+++ b/play.c
@@ -1207,7 +1207,7 @@ static unsigned get_time_string(struct play_task *pt, char **result)
        );
 }
 
-static void play_post_select(struct sched *s, struct task *t)
+static int play_post_select(struct sched *s, struct task *t)
 {
        struct play_task *pt = container_of(t, struct play_task, task);
        int ret;
@@ -1215,7 +1215,7 @@ static void play_post_select(struct sched *s, struct task *t)
        ret = eof_cleanup(pt);
        if (ret < 0) {
                pt->rq = CRT_TERM_RQ;
-               return;
+               return 0;
        }
        ret = session_post_select(s, t);
        if (ret < 0)
@@ -1245,7 +1245,7 @@ static void play_post_select(struct sched *s, struct task *t)
        }
        ret = 1;
 out:
-       t->error = ret;
+       return ret;
 }
 
 /**
@@ -1282,7 +1282,8 @@ int main(int argc, char *argv[])
        pt->current_file = conf.inputs_num - 1;
        pt->playing = true;
        pt->task.pre_select = play_pre_select;
-       pt->task.post_select = play_post_select;
+       pt->task.new_post_select = play_post_select;
+       pt->task.post_select = NULL;
        sprintf(pt->task.status, "play task");
        register_task(&sched, &pt->task);
        ret = schedule(&sched);