X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pintos-anon;a=blobdiff_plain;f=src%2Fthreads%2Fmalloc.c;h=72b441488393d862daed5c1a8ba367314089a90a;hp=8da4c4e4b0aaf2319f0e885859698daed1222671;hb=c848687b0825179f834e4b1b7a1a52579d902744;hpb=5fee8f8b27a500edbb1a8a39cf1669c97618e740 diff --git a/src/threads/malloc.c b/src/threads/malloc.c index 8da4c4e..72b4414 100644 --- a/src/threads/malloc.c +++ b/src/threads/malloc.c @@ -97,6 +97,23 @@ malloc (size_t size) return get_free_slot (d); } +void * +calloc (size_t a, size_t b) +{ + void *p; + size_t size; + + size = a * b; + if (size < a || size < b) + return NULL; + + p = malloc (size); + if (p != NULL) + memset (p, 0, size); + + return p; +} + void free (void *p) {