1988-02-19 15:54:01 +00:00
|
|
|
/*
|
|
|
|
(c) copyright 1988 by the Vrije Universiteit, Amsterdam, The Netherlands.
|
|
|
|
See the copyright notice in the ACK home directory, in the file "Copyright".
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
Module: program termination routines
|
|
|
|
Author: Ceriel J.H. Jacobs
|
|
|
|
Version: $Header$
|
|
|
|
*/
|
1988-01-28 16:37:55 +00:00
|
|
|
#define MAXPROCS 16
|
1988-01-25 16:14:48 +00:00
|
|
|
|
|
|
|
static int callindex;
|
|
|
|
static int (*proclist[MAXPROCS])();
|
|
|
|
|
|
|
|
_cleanup()
|
|
|
|
{
|
|
|
|
register int i;
|
|
|
|
|
|
|
|
for (i = 0; i < callindex; i++) {
|
|
|
|
(*proclist[i])();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
CallAtEnd(p)
|
|
|
|
int (*p)();
|
|
|
|
{
|
|
|
|
if (callindex >= MAXPROCS) {
|
1988-01-28 16:37:55 +00:00
|
|
|
return 0;
|
1988-01-25 16:14:48 +00:00
|
|
|
}
|
|
|
|
else {
|
|
|
|
proclist[callindex++] = p;
|
|
|
|
}
|
1988-01-28 16:37:55 +00:00
|
|
|
return 1;
|
1988-01-25 16:14:48 +00:00
|
|
|
}
|
|
|
|
|
1987-05-13 14:36:45 +00:00
|
|
|
_halt()
|
|
|
|
{
|
|
|
|
exit(0);
|
|
|
|
}
|