aboutsummaryrefslogtreecommitdiff
path: root/project/dclib/dclib-basics.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--project/dclib/dclib-basics.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/project/dclib/dclib-basics.c b/project/dclib/dclib-basics.c
index 74676d0..c46f5e2 100644
--- a/project/dclib/dclib-basics.c
+++ b/project/dclib/dclib-basics.c
@@ -1800,7 +1800,7 @@ void AppendInt64FastBuf ( FastBuf_t *fb, u64 val, IntMode_t mode )
///////////////////////////////////////////////////////////////////////////////
-char * WriteFastBuf ( FastBuf_t *fb, uint offset, cvp source, int size )
+char * WriteFastBuf ( FastBuf_t *fb, uint offset, cvp source, int size )
{
DASSERT(fb);
@@ -1847,6 +1847,22 @@ uint AssignFastBuf ( FastBuf_t *fb, cvp source, int size )
///////////////////////////////////////////////////////////////////////////////
+uint AlignFastBuf ( FastBuf_t *fb, uint align, u8 fill )
+{
+ DASSERT(fb);
+ const uint len = fb->ptr - fb->buf;
+ const uint append = ALIGN32(len,align) - len;
+ if ( append > 0 )
+ {
+ char *dest = GetSpaceFastBuf(fb,append);
+ memset(dest,fill,append);
+ }
+
+ return fb->ptr - fb->buf;
+}
+
+///////////////////////////////////////////////////////////////////////////////
+
uint DropFastBuf ( FastBuf_t *fb, int index, int size )
{
DASSERT(fb);