summaryrefslogtreecommitdiff
path: root/kernel/ringbuffer.c
diff options
context:
space:
mode:
authorMiguel <m.i@gmx.at>2018-10-01 23:22:03 +0200
committerMiguel <m.i@gmx.at>2018-10-01 23:22:03 +0200
commita455cd5af26bf8731e7c981a9421b16ab34dae6f (patch)
tree140b184bf306cef258ba6e7965a78b3eecb598b9 /kernel/ringbuffer.c
parentb518f39803eaaf0b25b95baf951b12ef4d5a727e (diff)
fukkin scheduler
Diffstat (limited to 'kernel/ringbuffer.c')
-rw-r--r--kernel/ringbuffer.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/kernel/ringbuffer.c b/kernel/ringbuffer.c
index 6700931..43d0e33 100644
--- a/kernel/ringbuffer.c
+++ b/kernel/ringbuffer.c
@@ -18,10 +18,7 @@ void ringbuffer_free(ringbuffer *f)
bool ringbuffer_put(ringbuffer* f,uint8_t c)
{
- if((f->back-1+f->size)%f->size==f->front)
- {
- return false;
- }
+ if(ringbuffer_full(f))return false;
f->data[f->back]=c;
f->back--;
@@ -30,6 +27,15 @@ bool ringbuffer_put(ringbuffer* f,uint8_t c)
return true;
}
+bool ringbuffer_full(ringbuffer* f)
+{
+ if((f->back-1+f->size)%f->size==f->front)
+ {
+ return true;
+ }
+ return false;
+}
+
bool ringbuffer_has(ringbuffer* f)
{
bool res=true;