commit - 5cc53af92d6bfae8b930d3c9154c8ed44e1feb09
commit + eadb18a3357b9b735b2f7da478854a39fb0c73c6
blob - 10000b5720ad1852b74ea0ea7c62b49ba42717f4
blob + 980a8d27c152da1ff5012dc156004ee7dd8e6802
--- include/libc.h
+++ include/libc.h
extern int enc16(char*, int, uchar*, int);
extern int encodefmt(Fmt*);
extern int dirmodefmt(Fmt*);
+extern int exitcode(char*);
extern void exits(char*);
extern double frexp(double, int*);
extern ulong getcallerpc(void*);
blob - 5e7c88ed2b1e4e79f6222d1440b8fa08e97b24de
blob + a17c25aa692138a3cf5c7404fab1593ab0c79ae2
--- src/lib9/_exits.c
+++ src/lib9/_exits.c
void
_exits(char *s)
{
- if(s && *s)
- _exit(1);
- _exit(0);
+ if(s == 0 || *s == 0)
+ _exit(0);
+ _exit(exitcode(s));
}
blob - c5cdde1de9382672697ff6f5f57426be43ed6d46
blob + 7fcf0f3c96947ff010b020e83c86c77a0e1dfba6
--- src/lib9/atexit.c
+++ src/lib9/atexit.c
onex[i].f = 0;
(*f)();
}
- exit(s && *s ? 1 : 0);
+ if(s == 0 || *s == 0)
+ exit(0);
+ exit(exitcode(s));
}