Module Name:    src
Committed By:   ws
Date:           Sun Feb 20 19:05:32 UTC 2011

Modified Files:
        src/external/bsd/bind/dist/lib/isc/noatomic/include/isc: atomic.h

Log Message:
Fix return values.
OK christos.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
    src/external/bsd/bind/dist/lib/isc/noatomic/include/isc/atomic.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/bsd/bind/dist/lib/isc/noatomic/include/isc/atomic.h
diff -u src/external/bsd/bind/dist/lib/isc/noatomic/include/isc/atomic.h:1.3 src/external/bsd/bind/dist/lib/isc/noatomic/include/isc/atomic.h:1.4
--- src/external/bsd/bind/dist/lib/isc/noatomic/include/isc/atomic.h:1.3	Wed Feb 16 03:47:13 2011
+++ src/external/bsd/bind/dist/lib/isc/noatomic/include/isc/atomic.h	Sun Feb 20 19:05:32 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: atomic.h,v 1.3 2011/02/16 03:47:13 christos Exp $	*/
+/*	$NetBSD: atomic.h,v 1.4 2011/02/20 19:05:32 ws Exp $	*/
 
 /*
  * Copyright (C) 2005, 2007  Internet Systems Consortium, Inc. ("ISC")
@@ -31,7 +31,7 @@
  */
 static __inline isc_int32_t
 isc_atomic_xadd(isc_int32_t *p, isc_int32_t val) {
-	isc_int32_t prev = val;
+	isc_int32_t prev = *p;
 
 	*p += val;
 
@@ -53,11 +53,12 @@
  */
 static __inline isc_int32_t
 isc_atomic_cmpxchg(isc_int32_t *p, isc_int32_t cmpval, isc_int32_t val) {
+	isc_int32_t prev = *p;
 
 	if (*p == cmpval)
 		*p = val;
 
-	return cmpval;
+	return prev;
 }
 
 #endif /* ISC_ATOMIC_H */

Reply via email to