]> git.meshlink.io Git - meshlink/commitdiff
Add reset_sync_flag().
authorGuus Sliepen <guus@meshlink.io>
Wed, 22 Jul 2020 18:30:14 +0000 (20:30 +0200)
committerGuus Sliepen <guus@meshlink.io>
Wed, 22 Jul 2020 18:30:14 +0000 (20:30 +0200)
This is for the test suite to reset a flag without broadcasting that it
changed state.

test/utils.c
test/utils.h

index c526ff0ddbcd7d17ecbf59305f18a7d05544484a..21b33f5e301d7e50aa9a75b9bc238d14dfe57375 100644 (file)
@@ -25,6 +25,12 @@ void set_sync_flag(struct sync_flag *s, bool value) {
        assert(pthread_mutex_unlock(&s->mutex) == 0);
 }
 
+void reset_sync_flag(struct sync_flag *s) {
+       assert(pthread_mutex_lock(&s->mutex) == 0);
+       s->flag = false;
+       assert(pthread_mutex_unlock(&s->mutex) == 0);
+}
+
 bool check_sync_flag(struct sync_flag *s) {
        bool flag;
        assert(pthread_mutex_lock(&s->mutex) == 0);
index 883b9154cedde7cc81865796afc7e674eaba8aa0..2a56ed83a0b24dedaf59340cb66719ef28cbfe91 100644 (file)
@@ -15,6 +15,7 @@ struct sync_flag {
 
 extern void init_sync_flag(struct sync_flag *s);
 extern void set_sync_flag(struct sync_flag *s, bool value);
+extern void reset_sync_flag(struct sync_flag *s);
 extern bool check_sync_flag(struct sync_flag *s);
 extern bool wait_sync_flag(struct sync_flag *s, int seconds);