git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Kernel - Cleaning up unneeded malloc() calls
[tpg/acess2.git]
/
Kernel
/
adt.c
diff --git
a/Kernel/adt.c
b/Kernel/adt.c
index
0f116f3
..
77c8d99
100644
(file)
--- a/
Kernel/adt.c
+++ b/
Kernel/adt.c
@@
-1,8
+1,13
@@
/*
/*
+ * Acess2 Kernel
+ *
+ * adt.c
+ * - Complex data type code
*/
#include <acess.h>
#include <adt.h>
*/
#include <acess.h>
#include <adt.h>
+
// === CODE ===
// --- Ring Buffers ---
tRingBuffer *RingBuffer_Create(size_t Space)
// === CODE ===
// --- Ring Buffers ---
tRingBuffer *RingBuffer_Create(size_t Space)
@@
-29,11
+34,13
@@
size_t RingBuffer_Read(void *Dest, tRingBuffer *Buffer, size_t Length)
memcpy(Dest, &Buffer->Data[Buffer->Start], Length);
}
Buffer->Start += Length;
memcpy(Dest, &Buffer->Data[Buffer->Start], Length);
}
Buffer->Start += Length;
+ if( Buffer->Start > Buffer->Space )
+ Buffer->Start -= Buffer->Space;
Buffer->Length -= Length;
return Length;
}
Buffer->Length -= Length;
return Length;
}
-size_t RingBuffer_Write(tRingBuffer *Buffer, void *Source, size_t Length)
+size_t RingBuffer_Write(tRingBuffer *Buffer,
const
void *Source, size_t Length)
{
size_t bufEnd = Buffer->Start + Buffer->Length;
size_t endSpace = Buffer->Space - bufEnd;
{
size_t bufEnd = Buffer->Start + Buffer->Length;
size_t endSpace = Buffer->Space - bufEnd;
UCC
git Repository :: git.ucc.asn.au