12345678910111213141516171819202122232425262728293031323334353637 |
- /*
- (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: $Id$
- */
- #define MAXPROCS 32
- static int callindex = 0;
- static int (*proclist[MAXPROCS])();
- _cleanup()
- {
- while (--callindex >= 0)
- (*proclist[callindex])();
- callindex = 0;
- }
- CallAtEnd(p)
- int (*p)();
- {
- if (callindex >= MAXPROCS) {
- return 0;
- }
- proclist[callindex++] = p;
- return 1;
- }
- halt()
- {
- _cleanup();
- _exit(0);
- }
|