int ast_pthread_create(pthread_t *thread, pthread_attr_t *attr, void *(*start_routine)(void *) , void *data) { pthread_attr_t lattr; + int ret; + + //printf("creating thread\n"); if (!attr) { pthread_attr_init(&lattr); attr = &lattr; } errno = pthread_attr_setstacksize(attr, PTHREAD_ATTR_STACKSIZE); - if (errno) + if (errno) { ast_log(LOG_WARNING, "pthread_attr_setstacksize returned non-zero: %s\n", strer ror(errno)); - return pthread_create(thread, attr, start_routine, data); /* We're in ast_pthread_creat e, so it's okay */ + printf("pthread_attr_setstacksize returned non-zero: %s\n", strerror(errno)); + exit(0); + } + + ret = pthread_create(thread, attr, start_routine, data); /* We're in ast_pthread_create , so it's okay */ + return ret; } + #endif /* ! LINUX */