From 195cec505e56c59eefee14ec6fb7bc193cbdaf06 Mon Sep 17 00:00:00 2001 From: Thomas Jansen Date: Sun, 28 Dec 2008 22:09:38 +0100 Subject: player_thread: migrate from pthread to glib threads --- src/player_thread.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/player_thread.c b/src/player_thread.c index a831bae3b..d588a079b 100644 --- a/src/player_thread.c +++ b/src/player_thread.c @@ -493,7 +493,7 @@ static void do_play(void) player_stop_decoder(); } -static void * player_task(G_GNUC_UNUSED void *arg) +static gpointer player_task(G_GNUC_UNUSED gpointer arg) { while (1) { switch (pc.command) { @@ -517,7 +517,7 @@ static void * player_task(G_GNUC_UNUSED void *arg) dc_quit(&pc.notify); closeAudioDevice(); player_command_finished(); - pthread_exit(NULL); + g_thread_exit(NULL); break; case PLAYER_COMMAND_CANCEL: @@ -535,11 +535,9 @@ static void * player_task(G_GNUC_UNUSED void *arg) void player_create(void) { - pthread_attr_t attr; - pthread_t player_thread; + GError *e; + GThread *t; - pthread_attr_init(&attr); - pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); - if (pthread_create(&player_thread, &attr, player_task, NULL)) - FATAL("Failed to spawn player task: %s\n", strerror(errno)); + if (!(t = g_thread_create(player_task, NULL, FALSE, &e))) + FATAL("Failed to spawn player task: %s\n", e->message); } -- cgit v1.2.3