summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/H5Eint.c8
-rw-r--r--test/h5test.c4
2 files changed, 9 insertions, 3 deletions
diff --git a/src/H5Eint.c b/src/H5Eint.c
index 66fba91..34290a4 100644
--- a/src/H5Eint.c
+++ b/src/H5Eint.c
@@ -276,7 +276,9 @@ H5E_walk1_cb(int n, H5E_error1_t *err_desc, void *client_data)
} /* end block */
#elif defined(H5_HAVE_THREADSAFE)
#ifdef _WIN32
- fprintf(stream, "some thread: no way to know the thread number from pthread on windows");
+ /* use GetCurrentThreadId because pthread_self return cannot be cast */
+ /* as an unsigned long on Windows */
+ fprintf(stream, "thread %lu", (unsigned long)GetCurrentThreadId());
#else
fprintf(stream, "thread %lu", (unsigned long)pthread_self());
#endif
@@ -396,7 +398,9 @@ H5E_walk2_cb(unsigned n, const H5E_error2_t *err_desc, void *client_data)
} /* end block */
#elif defined(H5_HAVE_THREADSAFE)
#ifdef _WIN32
- fprintf(stream, "some thread: no way to know the thread number from pthread on windows");
+ /* use GetCurrentThreadId because pthread_self return cannot be cast */
+ /* as an unsigned long on Windows */
+ fprintf(stream, "thread %lu", (unsigned long)GetCurrentThreadId());
#else
fprintf(stream, "thread %lu", (unsigned long)pthread_self());
#endif
diff --git a/test/h5test.c b/test/h5test.c
index 6445ce6..e364d32 100644
--- a/test/h5test.c
+++ b/test/h5test.c
@@ -668,7 +668,9 @@ h5_show_hostname(void)
}
#elif defined(H5_HAVE_THREADSAFE)
#ifdef _WIN32
- printf("some thread: no way to know the thread number from pthread on windows.");
+ /* use GetCurrentThreadId because pthread_self return cannot be cast */
+ /* as an int on Windows */
+ fprintf("thread %d.", (int)GetCurrentThreadId());
#else
printf("thread %d.", (int)pthread_self());
#endif