~ubuntu-branches/ubuntu/lucid/graphviz/lucid-security

« back to all changes in this revision

Viewing changes to tools/vmalloc/vmdcheap.c

  • Committer: Bazaar Package Importer
  • Author(s): Stephen M Moraco
  • Date: 2002-02-05 18:52:12 UTC
  • Revision ID: james.westby@ubuntu.com-20020205185212-8i04c70te00rc40y
Tags: upstream-1.7.16
ImportĀ upstreamĀ versionĀ 1.7.16

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include        "vmhdr.h"
 
2
 
 
3
/*      A discipline to get memory from the heap.
 
4
**
 
5
**      Written by Kiem-Phong Vo, kpv@research.att.com, 01/16/94.
 
6
*/
 
7
#if __STD_C
 
8
static Void_t* heapmem(Vmalloc_t* vm, Void_t* caddr,
 
9
                        size_t csize, size_t nsize,
 
10
                        Vmdisc_t* disc)
 
11
#else
 
12
static Void_t* heapmem(vm, caddr, csize, nsize, disc)
 
13
Vmalloc_t*      vm;     /* region doing allocation from         */
 
14
Void_t*         caddr;  /* current low address                  */
 
15
size_t          csize;  /* current size                         */
 
16
size_t          nsize;  /* new size                             */
 
17
Vmdisc_t*       disc;   /* discipline structure                 */
 
18
#endif
 
19
{
 
20
        NOTUSED(vm);
 
21
        NOTUSED(disc);
 
22
 
 
23
        if(csize == 0)
 
24
                return vmalloc(Vmheap,nsize);
 
25
        else if(nsize == 0)
 
26
                return vmfree(Vmheap,caddr) >= 0 ? caddr : NIL(Void_t*);
 
27
        else    return vmresize(Vmheap,caddr,nsize,0);
 
28
}
 
29
 
 
30
static Vmdisc_t _Vmdcheap = { heapmem, NIL(Vmexcept_f), 0 };
 
31
__DEFINE__(Vmdisc_t*,Vmdcheap,&_Vmdcheap);