Skip to content
Snippets Groups Projects
Commit 5473f283 authored by Bruce Momjian's avatar Bruce Momjian
Browse files

Properly call strerror() in thread test; add comments.

parent e319ec4b
No related branches found
No related tags found
No related merge requests found
......@@ -157,7 +157,7 @@ main(int argc, char *argv[])
if (rc != 0)
{
fprintf(stderr, "Failed to create thread 1: %s **\nexiting\n",
strerror(rc));
strerror(errno));
exit(1);
}
rc = pthread_create(&thread2, NULL, (void *(*) (void *)) func_call_2, NULL);
......@@ -285,6 +285,11 @@ func_call_1(void)
/* Set errno = EEXIST */
/* create, then try to fail on exclusive create open */
/*
* It would be great to check errno here but if errno is not thread-safe
* we might get a value from the other thread and mis-report the cause
* of the failure.
*/
#ifdef WIN32
if ((h1 = CreateFile(TEMP_FILENAME_1, GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, 0, NULL)) ==
INVALID_HANDLE_VALUE)
......@@ -299,7 +304,7 @@ func_call_1(void)
#ifdef WIN32
if (CreateFile(TEMP_FILENAME_1, GENERIC_WRITE, 0, NULL, CREATE_NEW, 0, NULL)
!= INVALID_HANDLE_VALUE || GetLastError() != ERROR_FILE_EXISTS)
!= INVALID_HANDLE_VALUE)
#else
if (open(TEMP_FILENAME_1, O_RDWR | O_CREAT | O_EXCL, 0600) >= 0)
#endif
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment