[*] 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)
|
||||
{
|
||||
// sysdeps/unix/sysv/linux/x86_64/syscall.S
|
||||
// Freetards deserve the rope
|
||||
// Fuck Freetards
|
||||
long iFuckResult = syscall(AuForward<T &&>(args)...);
|
||||
#if defined(AURORA_IS_GLIBC)
|
||||
if (iFuckResult == -1
|
||||
&& errno < 0)
|
||||
if (iFuckResult == -1 &&
|
||||
errno > 0)
|
||||
{
|
||||
// Lynch freetards
|
||||
return (0 - errno);
|
||||
}
|
||||
#else
|
||||
// TODO: if defined UNIX has a libc wrapper. why would we assume there's a CRT to begin with?
|
||||
errno = (0 - iFuckResult);
|
||||
#endif
|
||||
// Hit freetards over the head with a baseball bat
|
||||
return iFuckResult;
|
||||
// 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.
|
||||
|
Loading…
Reference in New Issue
Block a user