From 0736203a630b2fbc2bc3e6383e4aec9285bba184 Mon Sep 17 00:00:00 2001 From: Pixel Date: Sat, 5 Feb 2011 08:31:33 -0800 Subject: Context switch also means switching that global errno variable. --- libc/Makefile | 1 + libc/include/errno.h | 2 ++ libc/src/errno.c | 3 +++ 3 files changed, 6 insertions(+) create mode 100644 libc/src/errno.c (limited to 'libc') diff --git a/libc/Makefile b/libc/Makefile index 64cfa5d..9ef6392 100644 --- a/libc/Makefile +++ b/libc/Makefile @@ -20,6 +20,7 @@ src/read.c \ src/write.c \ \ src/stdio.c \ +src/errno.c \ \ src/reent.c \ \ diff --git a/libc/include/errno.h b/libc/include/errno.h index c88ea64..5e0af8c 100644 --- a/libc/include/errno.h +++ b/libc/include/errno.h @@ -137,4 +137,6 @@ enum errno_t { ERFKILL = 132, }; +volatile extern enum errno_t errno; + #endif diff --git a/libc/src/errno.c b/libc/src/errno.c new file mode 100644 index 0000000..6e6a6e8 --- /dev/null +++ b/libc/src/errno.c @@ -0,0 +1,3 @@ +#include "errno.h" + +volatile enum errno_t errno = ENOERROR; -- cgit v1.2.3