Fix mingw64 build by using intptr_t for int->void* casts

The viratomictest.c was casting from an int to a void* via a
long. This works on Linux or Mingw32, but fails on Mingw64
due to a pointer/integer size mis-match. Replacing 'long'
with 'intptr_t' ensures matching type sizes
This commit is contained in:
Daniel P. Berrange 2012-09-04 11:16:55 +01:00
parent 00b81636c5
commit 8675406cea

View File

@ -114,7 +114,7 @@ volatile int atomic;
static void
thread_func(void *data)
{
int idx = (int)(long)data;
int idx = (intptr_t)data;
int i;
int d;
@ -142,7 +142,7 @@ testThreads(const void *data ATTRIBUTE_UNUSED)
bucket[i] = 0;
for (i = 0; i < THREADS; i++) {
if (virThreadCreate(&(threads[i]), true, thread_func, (void*)(long)i) < 0)
if (virThreadCreate(&(threads[i]), true, thread_func, (void*)(intptr_t)i) < 0)
return -1;
}