blob: 5c19d0efa7fbb865c0939dc5280efbd624930205 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
/* Wrapper around broken system errno.h. */
#ifndef _PERL_WRAPPER_AROUND_ERRNO_H
# define _PERL_WRAPPER_AROUND_ERRNO_H 1
/* First include the system file. */
#include_next <errno.h>
/* Now add the missing stuff.
#ifndef EAGAIN
# define EAGAIN EWOULDBLOCK
#endif
/* This one is problematic. If you open() a directory with the
MiNTLib you can't detect from errno if it is really a directory
or if the file simply doesn't exist. You'll get ENOENT
("file not found") in either case.
Defining EISDIR as ENOENT is actually a bad idea but works fine
in general. In praxi, if code checks for errno == EISDIR it
will attempt an opendir() call on the file in question and this
call will also file if the file really can't be found. But
you may get compile-time errors if the errno checking is embedded
in a switch statement ("duplicate case value in switch").
Anyway, here the define works alright. */
#ifndef EISDIR
# define EISDIR ENOENT
#endif
#endif
|