mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
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.)
This commit is contained in:
@ -193,11 +193,13 @@ void __CDECL hfree(void *ptr);
|
|||||||
#endif
|
#endif
|
||||||
#endif /* MSDOS */
|
#endif /* MSDOS */
|
||||||
|
|
||||||
|
#ifndef errno /* did we already get it? */
|
||||||
#ifdef HAVE_ERRNO_AS_DEFINE
|
#ifdef HAVE_ERRNO_AS_DEFINE
|
||||||
#include <errno.h> /* errno is a define */
|
#include <errno.h> /* errno is a define */
|
||||||
#else
|
#else
|
||||||
extern int errno; /* declare errno */
|
extern int errno; /* declare errno */
|
||||||
#endif
|
#endif
|
||||||
|
#endif /* #ifndef errno */
|
||||||
extern const char ** NEAR my_errmsg[];
|
extern const char ** NEAR my_errmsg[];
|
||||||
extern char NEAR errbuff[NRERRBUFFS][ERRMSGSIZE];
|
extern char NEAR errbuff[NRERRBUFFS][ERRMSGSIZE];
|
||||||
extern char *home_dir; /* Home directory for user */
|
extern char *home_dir; /* Home directory for user */
|
||||||
|
Reference in New Issue
Block a user