* of the GNU Lesser General Public License.
*/
-#include "ucw/lib.h"
-#include "ucw/fastbuf.h"
+#include <ucw/lib.h>
+#include <ucw/fastbuf.h>
#include <stdio.h>
struct memstream {
- unsigned blocksize;
- unsigned uc;
+ uint blocksize;
+ uint uc;
struct msblock *first;
};
struct msblock {
struct msblock *next;
ucw_off_t pos;
- unsigned size;
+ uint size;
byte data[0];
};
struct memstream *stream;
struct msblock *block;
};
-#define FB_MEM(f) ((struct fb_mem *)(f)->is_fastbuf)
+#define FB_MEM(f) ((struct fb_mem *)(f))
static int
fbmem_refill(struct fastbuf *f)
FB_MEM(f)->block = NULL;
return 1;
}
- bthrow(f, "fb.seek", "fbmem_seek to invalid offset");
+ bthrow(f, "seek", "fbmem_seek to an invalid offset");
}
static void
}
struct fastbuf *
-fbmem_create(unsigned blocksize)
+fbmem_create(uint blocksize)
{
struct fastbuf *f = xmalloc_zero(sizeof(struct fb_mem));
struct memstream *s = xmalloc_zero(sizeof(struct memstream));
f->name = "<fbmem-write>";
f->spout = fbmem_spout;
f->close = fbmem_close;
- return fb_tie(f);
+ return f;
}
struct fastbuf *
f->seek = fbmem_seek;
f->close = fbmem_close;
f->can_overwrite_buffer = 1;
- return fb_tie(f);
+ return f;
}
#ifdef TEST