提交 5b099250 编写于 作者: D Daniel P. Berrange

Avoid compiler warnings about int -> void * casts

GCC is a little confused about the cast of beginthread/beginthreadex
from unsigned long -> void *. Go via an intermediate variable avoids
the bogus warning, and makes the code a little cleaner

* src/util/threads-win32.c: Avoid compiler warning in cast
上级 fdcd06ef
...@@ -262,6 +262,7 @@ int virThreadCreate(virThreadPtr thread, ...@@ -262,6 +262,7 @@ int virThreadCreate(virThreadPtr thread,
void *opaque) void *opaque)
{ {
struct virThreadArgs *args; struct virThreadArgs *args;
uintptr_t ret;
if (VIR_ALLOC(args) < 0) if (VIR_ALLOC(args) < 0)
return -1; return -1;
...@@ -271,17 +272,20 @@ int virThreadCreate(virThreadPtr thread, ...@@ -271,17 +272,20 @@ int virThreadCreate(virThreadPtr thread,
thread->joinable = joinable; thread->joinable = joinable;
if (joinable) { if (joinable) {
thread->thread = (HANDLE)_beginthreadex(NULL, 0, ret = _beginthreadex(NULL, 0,
virThreadHelperJoinable, virThreadHelperJoinable,
args, 0, NULL); args, 0, NULL);
if (thread->thread == 0) if (ret == 0)
return -1; return -1;
} else { } else {
thread->thread = (HANDLE)_beginthread(virThreadHelperDaemon, ret = _beginthread(virThreadHelperDaemon,
0, args); 0, args);
if (thread->thread == (HANDLE)-1L) if (ret == -1L)
return -1; return -1;
} }
thread->thread = (HANDLE)ret;
return 0; return 0;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册