[*] 346a9f3bde
still isnt good enough. why the fuck must all (not projecting), all, linux code even from the kernel maintainers have fucked syscall checks?
This commit is contained in:
parent
346a9f3bde
commit
4b1e3fd1e5
@ -26,20 +26,18 @@ namespace Aurora
|
|||||||
long syscallFuckYou(T &&... args)
|
long syscallFuckYou(T &&... args)
|
||||||
{
|
{
|
||||||
// sysdeps/unix/sysv/linux/x86_64/syscall.S
|
// sysdeps/unix/sysv/linux/x86_64/syscall.S
|
||||||
// Freetards deserve the rope
|
// Fuck Freetards
|
||||||
long iFuckResult = syscall(AuForward<T &&>(args)...);
|
long iFuckResult = syscall(AuForward<T &&>(args)...);
|
||||||
#if defined(AURORA_IS_GLIBC)
|
#if defined(AURORA_IS_GLIBC)
|
||||||
if (iFuckResult == -1
|
if (iFuckResult == -1 &&
|
||||||
&& errno < 0)
|
errno > 0)
|
||||||
{
|
{
|
||||||
// Lynch freetards
|
|
||||||
return (0 - errno);
|
return (0 - errno);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
// TODO: if defined UNIX has a libc wrapper. why would we assume there's a CRT to begin with?
|
// TODO: if defined UNIX has a libc wrapper. why would we assume there's a CRT to begin with?
|
||||||
errno = (0 - iFuckResult);
|
errno = (0 - iFuckResult);
|
||||||
#endif
|
#endif
|
||||||
// Hit freetards over the head with a baseball bat
|
|
||||||
return iFuckResult;
|
return iFuckResult;
|
||||||
// Imagine going out of your way to define a varadic syscall wrapper that works without any special formatting parameters,
|
// Imagine going out of your way to define a varadic syscall wrapper that works without any special formatting parameters,
|
||||||
// works across all abis, just to fuck it into uselessness by returning -ENOSYS and -1 spuriously.
|
// works across all abis, just to fuck it into uselessness by returning -ENOSYS and -1 spuriously.
|
||||||
|
Loading…
Reference in New Issue
Block a user