Revert "errno: Stop using _impure_ptr->_errno completely"
This reverts commit 44b1746a41
.
Bad idea. _impure_ptr->_errno is used by newlib
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
bb12a1e587
commit
78ade082fe
|
@ -30,7 +30,7 @@ extern inline int
|
||||||
__set_errno (const char *fn, int ln, int val)
|
__set_errno (const char *fn, int ln, int val)
|
||||||
{
|
{
|
||||||
debug_printf ("%s:%d setting errno %d", fn, ln, val);
|
debug_printf ("%s:%d setting errno %d", fn, ln, val);
|
||||||
return errno = val;
|
return errno = _impure_ptr->_errno = val;
|
||||||
}
|
}
|
||||||
#define set_errno(val) __set_errno (__PRETTY_FUNCTION__, __LINE__, (val))
|
#define set_errno(val) __set_errno (__PRETTY_FUNCTION__, __LINE__, (val))
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ class save_errno
|
||||||
save_errno (int what) {saved = get_errno (); set_errno (what); }
|
save_errno (int what) {saved = get_errno (); set_errno (what); }
|
||||||
void set (int what) {set_errno (what); saved = what;}
|
void set (int what) {set_errno (what); saved = what;}
|
||||||
void reset () {saved = get_errno ();}
|
void reset () {saved = get_errno ();}
|
||||||
~save_errno () {errno = saved;}
|
~save_errno () {errno = _impure_ptr->_errno = saved;}
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const char *__sp_fn;
|
extern const char *__sp_fn;
|
||||||
|
|
|
@ -454,7 +454,8 @@ posify_maybe (char **here, const char *value, char *outenv)
|
||||||
|
|
||||||
memcpy (outenv, src, len);
|
memcpy (outenv, src, len);
|
||||||
char *newvalue = outenv + len;
|
char *newvalue = outenv + len;
|
||||||
if (!conv->toposix (value, newvalue, NT_MAX_PATH - len) || errno != EIDRM)
|
if (!conv->toposix (value, newvalue, NT_MAX_PATH - len)
|
||||||
|
|| _impure_ptr->_errno != EIDRM)
|
||||||
conv->add_cache (newvalue, *value != '/' ? value : NULL);
|
conv->add_cache (newvalue, *value != '/' ? value : NULL);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -339,7 +339,7 @@ void __reg3
|
||||||
seterrno_from_win_error (const char *file, int line, DWORD code)
|
seterrno_from_win_error (const char *file, int line, DWORD code)
|
||||||
{
|
{
|
||||||
syscall_printf ("%s:%d windows error %u", file, line, code);
|
syscall_printf ("%s:%d windows error %u", file, line, code);
|
||||||
errno = geterrno_from_win_error (code, EACCES);
|
errno = _impure_ptr->_errno = geterrno_from_win_error (code, EACCES);
|
||||||
}
|
}
|
||||||
|
|
||||||
int __reg2
|
int __reg2
|
||||||
|
@ -357,7 +357,7 @@ seterrno_from_nt_status (const char *file, int line, NTSTATUS status)
|
||||||
SetLastError (code);
|
SetLastError (code);
|
||||||
syscall_printf ("%s:%d status %y -> windows error %u",
|
syscall_printf ("%s:%d status %y -> windows error %u",
|
||||||
file, line, status, code);
|
file, line, status, code);
|
||||||
errno = geterrno_from_win_error (code, EACCES);
|
errno = _impure_ptr->_errno = geterrno_from_win_error (code, EACCES);
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
static char *
|
||||||
|
|
Loading…
Reference in New Issue