sal: WNT: print errno when oslCreateThread fails
Change-Id: Iad0a2a7ba68b3f43c22e0b5a3cee646f8baba30e
This commit is contained in:
@@ -25,6 +25,7 @@
|
|||||||
#include <osl/time.h>
|
#include <osl/time.h>
|
||||||
#include <osl/interlck.h>
|
#include <osl/interlck.h>
|
||||||
#include <rtl/tencinfo.h>
|
#include <rtl/tencinfo.h>
|
||||||
|
#include <errno.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Thread-data structure hidden behind oslThread:
|
Thread-data structure hidden behind oslThread:
|
||||||
@@ -94,6 +95,25 @@ static oslThread oslCreateThread(oslWorkerFunction pWorker,
|
|||||||
|
|
||||||
if(pThreadImpl->m_hThread == 0)
|
if(pThreadImpl->m_hThread == 0)
|
||||||
{
|
{
|
||||||
|
switch (errno)
|
||||||
|
{
|
||||||
|
case EAGAIN:
|
||||||
|
fprintf(stderr, "_beginthreadex errno EAGAIN\n");
|
||||||
|
break;
|
||||||
|
case EINVAL:
|
||||||
|
fprintf(stderr, "_beginthreadex errno EINVAL\n");
|
||||||
|
break;
|
||||||
|
case EACCES:
|
||||||
|
fprintf(stderr, "_beginthreadex errno EACCES\n");
|
||||||
|
break;
|
||||||
|
case ENOMEM:
|
||||||
|
fprintf(stderr, "_beginthreadex undocumented errno ENOMEM - this means not enough VM for stack\n");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
fprintf(stderr, "_beginthreadex unexpected errno %d\n", errno);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
/* create failed */
|
/* create failed */
|
||||||
free(pThreadImpl);
|
free(pThreadImpl);
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user