wine-pthread: Set thread scope to force using kernel threads on Solaris.

This commit is contained in:
Alexandre Julliard 2006-06-23 12:26:23 +02:00
parent 53348f8966
commit c6ad0201f4
1 changed files with 5 additions and 0 deletions

View File

@ -100,6 +100,7 @@ static int create_thread( struct wine_pthread_thread_info *info )
pthread_attr_init( &attr );
pthread_attr_setstacksize( &attr, info->stack_size );
pthread_attr_setdetachstate( &attr, PTHREAD_CREATE_DETACHED );
pthread_attr_setscope( &attr, PTHREAD_SCOPE_SYSTEM ); /* force creating a kernel thread on Solaris */
if (pthread_create( &id, &attr, (void * (*)(void *))info->entry, info )) ret = -1;
pthread_attr_destroy( &attr );
return ret;
@ -129,7 +130,11 @@ static void init_current_teb( struct wine_pthread_thread_info *info )
/* set pid and tid */
info->pid = getpid();
#ifdef __sun
info->tid = pthread_self(); /* this should return the lwp id on solaris */
#else
info->tid = gettid();
#endif
}