Subversion Repositories spk

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 cycrow 1
/* 7zBuf.c -- Byte Buffer
2
2008-03-28
3
Igor Pavlov
4
Public domain */
5
 
6
#include "7zBuf.h"
7
 
8
void Buf_Init(CBuf *p)
9
{
10
  p->data = 0;
11
  p->size = 0;
12
}
13
 
14
int Buf_Create(CBuf *p, size_t size, ISzAlloc *alloc)
15
{
16
  p->size = 0;
17
  if (size == 0)
18
  {
19
    p->data = 0;
20
    return 1;
21
  }
22
  p->data = (Byte *)alloc->Alloc(alloc, size);
23
  if (p->data != 0)
24
  {
25
    p->size = size;
26
    return 1;
27
  }
28
  return 0;
29
}
30
 
31
void Buf_Free(CBuf *p, ISzAlloc *alloc)
32
{
33
  alloc->Free(alloc, p->data);
34
  p->data = 0;
35
  p->size = 0;
36
}