aboutsummaryrefslogtreecommitdiff
path: root/FT245.c
diff options
context:
space:
mode:
Diffstat (limited to 'FT245.c')
-rw-r--r--FT245.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/FT245.c b/FT245.c
index d0d417d..0648c73 100644
--- a/FT245.c
+++ b/FT245.c
@@ -1012,15 +1012,15 @@ bool FT245_write_buffered(ft245_t *ft245, uint8_t *data, size_t size)
return true;
}
-bool FT245_read_buffered(ft245_t *ft245, uint8_t *data, size_t size)
+size_t FT245_read_buffered(ft245_t *ft245, uint8_t *data, size_t size)
{
- if(cb_occupation(ft245->buffer_rx) < size)
- return false;
-
- for(size_t i = 0; i < size; i++)
+ for(size_t i = 0; i < size; i++) {
+ if(cb_empty(ft245->buffer_rx))
+ return i;
cb_pop(ft245->buffer_rx, data[i]);
+ }
- return true;
+ return size;
}
bool FT245_write_word_buffered(ft245_t *ft245, uint32_t word)