From 8a425955c5a00a6641d59e39e4199b34c1d7a2e8 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Fri, 15 Nov 2002 17:37:55 +0000 Subject: [PATCH] The header is now compatible with R5's libroot.so. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1947 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/posix/errno.h | 4 ++-- src/kernel/libroot/posix/errno.c | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/headers/posix/errno.h b/headers/posix/errno.h index db52c99948..99d23e5707 100644 --- a/headers/posix/errno.h +++ b/headers/posix/errno.h @@ -15,8 +15,8 @@ extern "C" #define ENOERR 0 #define EOK ENOERR /* some code assumes EOK exists */ -/* XXX - Fix this once TLS works */ -extern int errno; +extern int *_errnop(void); +#define errno (*(_errnop())) #ifdef __cplusplus } /* "C" */ diff --git a/src/kernel/libroot/posix/errno.c b/src/kernel/libroot/posix/errno.c index 9f3b304f1d..5f80523c88 100644 --- a/src/kernel/libroot/posix/errno.c +++ b/src/kernel/libroot/posix/errno.c @@ -3,5 +3,15 @@ * Simple file to get errno defined!! */ -int errno; +#include + +/* XXX - Fix this once TLS works */ + +static int errno_storage; + +int* +_errnop(void) +{ + return &errno_storage; +}