X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=mware%2Ffifobuf.h;h=7ee1e70b230682c04296583fb4dd363b11634eb3;hb=b9de9134c0c9fe25fa2e1face168c1ce58315265;hp=a9b1d6bbf05ba7eff2b9a0d84e1df772185d998a;hpb=be9ac9393488e2405363686f4ba61b84006cb1ad;p=bertos.git diff --git a/mware/fifobuf.h b/mware/fifobuf.h index a9b1d6bb..7ee1e70b 100755 --- a/mware/fifobuf.h +++ b/mware/fifobuf.h @@ -3,7 +3,7 @@ * * * \version $Id$ @@ -43,6 +43,21 @@ /*#* *#* $Log$ + *#* Revision 1.21 2005/11/04 16:20:02 bernie + *#* Fix reference to README.devlib in header. + *#* + *#* Revision 1.20 2005/04/11 19:10:28 bernie + *#* Include top-level headers from cfg/ subdir. + *#* + *#* Revision 1.19 2004/12/08 08:30:12 bernie + *#* Add missing header. + *#* + *#* Revision 1.18 2004/11/16 21:55:12 bernie + *#* Workaround for a known fifobuf bug. + *#* + *#* Revision 1.17 2004/09/14 20:57:00 bernie + *#* Use debug.h instead of kdebug.h. + *#* *#* Revision 1.16 2004/09/06 21:39:08 bernie *#* Simplify code using ATOMIC(). *#* @@ -87,8 +102,8 @@ #ifndef MWARE_FIFO_H #define MWARE_FIFO_H -#include -#include +#include +#include typedef struct FIFOBuffer { @@ -301,6 +316,9 @@ INLINE bool fifo_isfull_locked(const FIFOBuffer *_fb) */ INLINE void fifo_init(FIFOBuffer *fb, unsigned char *buf, size_t size) { + /* FIFO buffers have a known bug with 1-byte buffers. */ + ASSERT(size > 1); + fb->head = fb->tail = fb->begin = buf; fb->end = buf + size - 1; }