Break when IpcPipe is full

This commit is contained in:
2025-11-11 00:51:29 +01:00
parent 1f793f287f
commit 91ecc2dc6a

View File

@ -33,7 +33,9 @@ int32_t ipc_pipewrite(IpcPipe *pipe, const uint8_t *const buffer, size_t n) {
size_t i = 0; size_t i = 0;
spinlock_acquire(&pipe->spinlock); spinlock_acquire(&pipe->spinlock);
for (; i < n; i++) { for (; i < n; i++) {
rbuf_push(&pipe->rbuf, buffer[i]); if (rbuf_push(&pipe->rbuf, buffer[i]) < 0) {
break;
}
} }
spinlock_release(&pipe->spinlock); spinlock_release(&pipe->spinlock);
return i; return i;