diff options
author | Jonathan Pryor <jpryor@novell.com> | 2008-02-12 17:19:35 +0300 |
---|---|---|
committer | Jonathan Pryor <jpryor@novell.com> | 2008-02-12 17:19:35 +0300 |
commit | 6d6efd0b61085a0e05410372c7dcd96290fd1f66 (patch) | |
tree | 740203567049e5c524d77422f9b664965b28623b /support | |
parent | 869928f0f05f227c3a23ebaf0252966e1793f216 (diff) |
* signal.c: Fix another build break; g_atomic_int_set() (part of GLib 2.10)
isn't present on all build machines, so use an alternate function.
svn path=/trunk/mono/; revision=95499
Diffstat (limited to 'support')
-rw-r--r-- | support/ChangeLog | 5 | ||||
-rw-r--r-- | support/signal.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/support/ChangeLog b/support/ChangeLog index f3e682e4b94..76d9c80d422 100644 --- a/support/ChangeLog +++ b/support/ChangeLog @@ -1,3 +1,8 @@ +2008-02-12 Jonathan Pryor <jpryor@novell.com> + + * signal.c: Fix another build break; g_atomic_int_set() (part of GLib 2.10) + isn't present on all build machines, so use an alternate function. + 2008-02-08 Jonathan Pryor <jpryor@novell.com> * signal.c: Mono_Unix_UnixSignal_WaitAny() semantic change: return the index diff --git a/support/signal.c b/support/signal.c index fd82707f1e5..79beffcc75b 100644 --- a/support/signal.c +++ b/support/signal.c @@ -128,8 +128,8 @@ Mono_Unix_UnixSignal_install (int sig) } if (h) { - g_atomic_int_set (&h->count, 0); - g_atomic_int_set (&h->signum, sig); + while (!g_atomic_int_compare_and_exchange (&h->count, h->count, 0)) {} + while (!g_atomic_int_compare_and_exchange (&h->signum, h->signum, sig)) {} } pthread_mutex_unlock (&signals_mutex); |