--- args.c.orig 2004-09-13 02:38:30.000000000 -0800 +++ args.c 2008-09-25 04:58:35.000000000 -0800 @@ -37,7 +37,13 @@ void args_add(ARGS *args, const char *s) { +#ifndef __FreeBSD__ args->argv = (char**)x_realloc(args->argv, (args->argc + 2) * sizeof(char *)); +#else + args->argv = reallocf((char *)args->argv, (args->argc + 2) * sizeof(char *)); + if( args->argv == NULL ) + fatal("out of memory in reallocf"); +#endif args->argv[args->argc] = x_strdup(s); args->argc++; args->argv[args->argc] = NULL;