about summary refs log tree commit diff
path: root/ring.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-02-27 03:53:13 -0500
committerJune McEnroe <june@causal.agency>2020-02-27 03:55:09 -0500
commitc1c002aea9d1f3a4438a657de669de75bcbe50e9 (patch)
tree850fc51f5bc21071d483f3efc659d270241e1346 /ring.c
parentRename causal.agency/consumer tag causal.agency/pos (diff)
downloadpounce-c1c002aea9d1f3a4438a657de669de75bcbe50e9.tar.gz
pounce-c1c002aea9d1f3a4438a657de669de75bcbe50e9.zip
Set consumer pos with CAP REQ causal.agency/consumer=n
So the spec doesn't say I can use cap values in CAP REQ. But it also
doesn't explicitly say I can't.
Diffstat (limited to 'ring.c')
-rw-r--r--ring.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ring.c b/ring.c
index 90e6f2a..254c285 100644
--- a/ring.c
+++ b/ring.c
@@ -81,6 +81,11 @@ size_t ringConsumer(const char *name) {
 	return consumers.len++;
 }
 
+void ringSet(size_t consumer, size_t pos) {
+	assert(consumer < consumers.len);
+	if (pos <= producer) consumers.ptr[consumer].pos = pos;
+}
+
 size_t ringPos(size_t consumer) {
 	assert(consumer < consumers.len);
 	return consumers.ptr[consumer].pos;