diff options
author | unknown <joerg@mysql.com> | 2005-03-04 10:22:50 +0100 |
---|---|---|
committer | unknown <joerg@mysql.com> | 2005-03-04 10:22:50 +0100 |
commit | b66d71c8c3e14813c93860f73a315c33d77b0866 (patch) | |
tree | 86883e4f9bfeaa5bb1d9afc6b2e15e07e2d7eadd /include | |
parent | 555ea37d773e1e2345df5e6eea9f6d4e48432bd0 (diff) | |
download | mariadb-git-b66d71c8c3e14813c93860f73a315c33d77b0866.tar.gz |
Prevent a collision with the system's '#define errno ...' by guarding the variable declaration.
include/my_sys.h:
There are platforms which use '#define errno ...' and then cause a collision with
'extern int errno;', one example is OpenBSD.
Rather than treat them explicitly by the 'HAVE_ERRNO_AS_DEFINE', we can check for these
by using '#ifndef errno'.
(Backported from 5.0, as the problem was discovered there first.)
Diffstat (limited to 'include')
-rw-r--r-- | include/my_sys.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/my_sys.h b/include/my_sys.h index 0fdb8d640e7..d6104a6a3a9 100644 --- a/include/my_sys.h +++ b/include/my_sys.h @@ -193,11 +193,13 @@ void __CDECL hfree(void *ptr); #endif #endif /* MSDOS */ +#ifndef errno /* did we already get it? */ #ifdef HAVE_ERRNO_AS_DEFINE #include <errno.h> /* errno is a define */ #else extern int errno; /* declare errno */ #endif +#endif /* #ifndef errno */ extern const char ** NEAR my_errmsg[]; extern char NEAR errbuff[NRERRBUFFS][ERRMSGSIZE]; extern char *home_dir; /* Home directory for user */ |