You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
527 B
37 lines
527 B
5 years ago
|
/* 7zBuf.c -- Byte Buffer
|
||
|
2013-01-21 : Igor Pavlov : Public domain */
|
||
|
|
||
|
#include "Precomp.h"
|
||
|
|
||
|
#include "7zBuf.h"
|
||
|
|
||
|
void Buf_Init(CBuf *p)
|
||
|
{
|
||
|
p->data = 0;
|
||
|
p->size = 0;
|
||
|
}
|
||
|
|
||
|
int Buf_Create(CBuf *p, size_t size, ISzAlloc *alloc)
|
||
|
{
|
||
|
p->size = 0;
|
||
|
if (size == 0)
|
||
|
{
|
||
|
p->data = 0;
|
||
|
return 1;
|
||
|
}
|
||
|
p->data = (Byte *)alloc->Alloc(alloc, size);
|
||
|
if (p->data != 0)
|
||
|
{
|
||
|
p->size = size;
|
||
|
return 1;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
void Buf_Free(CBuf *p, ISzAlloc *alloc)
|
||
|
{
|
||
|
alloc->Free(alloc, p->data);
|
||
|
p->data = 0;
|
||
|
p->size = 0;
|
||
|
}
|