mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-12 10:33:52 +01:00
Merge pull request #1282 from hintjens/master
Fixed atomic API, which used 'bool'
This commit is contained in:
commit
d2bacdf591
@ -9,7 +9,7 @@ zmq_atomic_counter_dec - decrement an atomic counter
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
*bool zmq_atomic_counter_dec (void *counter);*
|
||||
*int zmq_atomic_counter_dec (void *counter);*
|
||||
|
||||
|
||||
DESCRIPTION
|
||||
@ -21,8 +21,8 @@ operations.
|
||||
|
||||
RETURN VALUE
|
||||
------------
|
||||
The _zmq_atomic_counter_dec()_ function returns true if the counter is
|
||||
greater than zero after decrementing, or false if the counter reached
|
||||
The _zmq_atomic_counter_dec()_ function returns 1 if the counter is
|
||||
greater than zero after decrementing, or zero if the counter reached
|
||||
zero.
|
||||
|
||||
|
||||
@ -36,13 +36,14 @@ assert (zmq_atomic_counter_inc (counter) == 0);
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
----
|
||||
|
||||
|
||||
|
@ -36,13 +36,14 @@ assert (zmq_atomic_counter_inc (counter) == 0);
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
----
|
||||
|
||||
|
||||
|
@ -35,13 +35,14 @@ assert (zmq_atomic_counter_inc (counter) == 0);
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
----
|
||||
|
||||
|
||||
|
@ -36,13 +36,14 @@ assert (zmq_atomic_counter_inc (counter) == 0);
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
----
|
||||
|
||||
|
||||
|
@ -35,13 +35,14 @@ assert (zmq_atomic_counter_inc (counter) == 0);
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
----
|
||||
|
||||
|
||||
|
@ -34,13 +34,14 @@ assert (zmq_atomic_counter_inc (counter) == 0);
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
----
|
||||
|
||||
|
||||
|
@ -440,7 +440,7 @@ ZMQ_EXPORT int zmq_curve_keypair (char *z85_public_key, char *z85_secret_key);
|
||||
ZMQ_EXPORT void *zmq_atomic_counter_new (void);
|
||||
ZMQ_EXPORT void zmq_atomic_counter_set (void *counter, int value);
|
||||
ZMQ_EXPORT int zmq_atomic_counter_inc (void *counter);
|
||||
ZMQ_EXPORT bool zmq_atomic_counter_dec (void *counter);
|
||||
ZMQ_EXPORT int zmq_atomic_counter_dec (void *counter);
|
||||
ZMQ_EXPORT int zmq_atomic_counter_value (void *counter);
|
||||
ZMQ_EXPORT void zmq_atomic_counter_destroy (void **counter_p);
|
||||
|
||||
|
@ -232,11 +232,12 @@ int zmq_atomic_counter_inc (void *counter_)
|
||||
return ((zmq::atomic_counter_t *) counter_)->add (1);
|
||||
}
|
||||
|
||||
// Decrement the atomic counter and return true if still > zero
|
||||
// Decrement the atomic counter and return 1 (if counter >= 1), or
|
||||
// 0 if counter hit zero.
|
||||
|
||||
bool zmq_atomic_counter_dec (void *counter_)
|
||||
int zmq_atomic_counter_dec (void *counter_)
|
||||
{
|
||||
return ((zmq::atomic_counter_t *) counter_)->sub (1);
|
||||
return ((zmq::atomic_counter_t *) counter_)->sub (1)? 1: 0;
|
||||
}
|
||||
|
||||
// Return actual value of atomic counter
|
||||
|
@ -27,12 +27,12 @@ int main (void)
|
||||
assert (zmq_atomic_counter_inc (counter) == 1);
|
||||
assert (zmq_atomic_counter_inc (counter) == 2);
|
||||
assert (zmq_atomic_counter_value (counter) == 3);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_set (counter, 2);
|
||||
assert (zmq_atomic_counter_dec (counter) == true);
|
||||
assert (zmq_atomic_counter_dec (counter) == false);
|
||||
assert (zmq_atomic_counter_dec (counter) == 1);
|
||||
assert (zmq_atomic_counter_dec (counter) == 0);
|
||||
zmq_atomic_counter_destroy (&counter);
|
||||
return 0;
|
||||
}
|
||||
|
@ -25,8 +25,10 @@ zmq_msg_init(&msg) && printf("zmq_msg_init: %s\n", zmq_strerror(errno)); \
|
||||
zmq_msg_init_size (&msg, size + 1) && printf("zmq_msg_init_size: %s\n",zmq_strerror(errno)); \
|
||||
memcpy(zmq_msg_data(&msg), data, size + 1);
|
||||
|
||||
int publicationsReceived = 0;
|
||||
bool isSubscribed = false;
|
||||
// TODO: this code fails to meet our style guidelines, and needs rewriting
|
||||
|
||||
static int publicationsReceived = 0;
|
||||
static bool isSubscribed = false;
|
||||
|
||||
int main(int, char**) {
|
||||
setup_test_environment();
|
||||
|
@ -27,7 +27,7 @@
|
||||
// This defines the settle time used in tests; raise this if we
|
||||
// get test failures on slower systems due to binds/connects not
|
||||
// settled. Tested to work reliably at 1 msec on a fast PC.
|
||||
#define SETTLE_TIME 10 // In msec
|
||||
#define SETTLE_TIME 50 // In msec
|
||||
|
||||
#undef NDEBUG
|
||||
#include <time.h>
|
||||
|
Loading…
Reference in New Issue
Block a user