From 59a340381e1b77bbef3d31d9e719b7c8546a31cd Mon Sep 17 00:00:00 2001 From: Felix von Leitner Date: Fri, 27 Feb 2004 14:50:28 +0000 Subject: [PATCH] better error handling --- io/io_pipe.c | 14 ++++++-------- io/io_socketpair.c | 14 ++++++-------- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/io/io_pipe.c b/io/io_pipe.c index 5bd2b79..dd2ede5 100644 --- a/io/io_pipe.c +++ b/io/io_pipe.c @@ -11,14 +11,12 @@ int io_pipe(int64* d) { if (pipe(fds)==-1) return 0; #endif - if (io_fd(fds[1])) { - if (io_fd(fds[0])) { - d[0]=fds[0]; - d[1]=fds[1]; - return 1; - } - io_close(fds[1]); + if (io_fd(fds[1]) && io_fd(fds[0])) { + d[0]=fds[0]; + d[1]=fds[1]; + return 1; } - close(fds[0]); + io_close(fds[1]); + io_close(fds[0]); return 0; } diff --git a/io/io_socketpair.c b/io/io_socketpair.c index d664ebb..561213d 100644 --- a/io/io_socketpair.c +++ b/io/io_socketpair.c @@ -11,14 +11,12 @@ int io_socketpair(int64* d) { if (socketpair(AF_INET6,SOCK_STREAM,IPPROTO_TCP,fds)==-1) if (socketpair(AF_INET,SOCK_STREAM,IPPROTO_TCP,fds)==-1) return 0; - if (io_fd(fds[1])) { - if (io_fd(fds[0])) { - d[0]=fds[0]; - d[1]=fds[1]; - return 1; - } - io_close(fds[1]); + if (io_fd(fds[1]) && io_fd(fds[0])) { + d[0]=fds[0]; + d[1]=fds[1]; + return 1; } - close(fds[0]); + io_close(fds[1]); + io_close(fds[0]); return 0; }