[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-4.0-testing] xenstore: Fix cleanup_pop() definition for some (buggy) pthread.h headers.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1273749735 -3600 # Node ID 61cc8ab4d629a5bee7ed931f6bbaf6a6070708bf # Parent 8c7215e808647704b3616a84a53a4d11f0451a20 xenstore: Fix cleanup_pop() definition for some (buggy) pthread.h headers. Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx> xen-unstable changeset: 21374:9d53864d7be6 xen-unstable date: Thu May 13 12:21:16 2010 +0100 --- tools/xenstore/xs.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff -r 8c7215e80864 -r 61cc8ab4d629 tools/xenstore/xs.c --- a/tools/xenstore/xs.c Thu May 13 10:25:45 2010 +0100 +++ b/tools/xenstore/xs.c Thu May 13 12:22:15 2010 +0100 @@ -85,8 +85,14 @@ struct xs_handle { #define mutex_unlock(m) pthread_mutex_unlock(m) #define condvar_signal(c) pthread_cond_signal(c) #define condvar_wait(c,m,hnd) pthread_cond_wait(c,m) -#define cleanup_push(f, a) pthread_cleanup_push((void (*)(void *))(f), (void *)(a)) -#define cleanup_pop(run) pthread_cleanup_pop(run) +#define cleanup_push(f, a) \ + pthread_cleanup_push((void (*)(void *))(f), (void *)(a)) +/* + * Some definitions of pthread_cleanup_pop() are a macro starting with an + * end-brace. GCC then complains if we immediately precede that with a label. + * Hence we insert a dummy statement to appease the compiler in this situation. + */ +#define cleanup_pop(run) ((void)0); pthread_cleanup_pop(run) static void *read_thread(void *arg); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |