diff options
author | Juergen Keil <jkeil@users.sourceforge.net> | 2001-10-03 17:15:43 +0000 |
---|---|---|
committer | Juergen Keil <jkeil@users.sourceforge.net> | 2001-10-03 17:15:43 +0000 |
commit | 70564011218ab5eef38842412af9313b2a133f69 (patch) | |
tree | dda4a4296e74ddb4c07c14aa7eea471eef9bbe15 /src/xine-engine/video_decoder.c | |
parent | 2341ac8aa13c8ad994eab1fbbefe98238ed4f117 (diff) | |
download | xine-lib-70564011218ab5eef38842412af9313b2a133f69.tar.gz xine-lib-70564011218ab5eef38842412af9313b2a133f69.tar.bz2 |
Add error checks to all "pthread_create" calls, print error message and exit
xine, whenever a pthread_create fails
CVS patchset: 729
CVS date: 2001/10/03 17:15:43
Diffstat (limited to 'src/xine-engine/video_decoder.c')
-rw-r--r-- | src/xine-engine/video_decoder.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/xine-engine/video_decoder.c b/src/xine-engine/video_decoder.c index 971b38d0b..5611964ed 100644 --- a/src/xine-engine/video_decoder.c +++ b/src/xine-engine/video_decoder.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: video_decoder.c,v 1.52 2001/09/26 01:18:19 guenter Exp $ + * $Id: video_decoder.c,v 1.53 2001/10/03 17:15:44 jkeil Exp $ * */ @@ -25,6 +25,10 @@ #include "config.h" #endif +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + #include "xine_internal.h" #include "monitor.h" #include <sched.h> @@ -252,6 +256,7 @@ void video_decoder_init (xine_t *this) { pthread_attr_t pth_attrs; struct sched_param pth_params; + int err; this->video_fifo = fifo_buffer_new (500, 4096); @@ -265,7 +270,12 @@ void video_decoder_init (xine_t *this) { pthread_attr_setschedparam(&pth_attrs, &pth_params); pthread_attr_setscope(&pth_attrs, PTHREAD_SCOPE_SYSTEM); - pthread_create (&this->video_thread, &pth_attrs, video_decoder_loop, this) ; + if ((err = pthread_create (&this->video_thread, + &pth_attrs, video_decoder_loop, this)) != 0) { + fprintf (stderr, "video_decoder: can't create new thread (%s)\n", + strerror(err)); + exit (1); + } } void video_decoder_shutdown (xine_t *this) { |