diff --git a/src/threads.c b/src/threads.c index d1863486f487bf8926937a007899c61ff4d553f3..9525a01a269452beaf7cf08e5783ec870066f023 100644 --- a/src/threads.c +++ b/src/threads.c @@ -1,5 +1,5 @@ #include "global.h" -RCSID("$Id: threads.c,v 1.101 1999/07/01 01:39:13 hubbe Exp $"); +RCSID("$Id: threads.c,v 1.102 1999/08/17 17:20:18 grubba Exp $"); int num_threads = 1; int threads_disabled = 0; @@ -1306,6 +1306,14 @@ int th_num_farmers() static struct farmer *new_farmer(void (*fun)(void *), void *args) { struct farmer *me = malloc(sizeof(struct farmer)); + + if (!me) { + /* Out of memory */ + fatal("new_farmer(): Out of memory!\n"); + } + + dmalloc_accept_leak(me); + _num_farmers++; me->neighbour = 0; me->field = args;