From f941d270ca52a7330736b75415dacf3b674513b5 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Wed, 24 Oct 2007 11:21:29 +0000 Subject: [PATCH] Save/restore errno, free pfd buffer. --- server.c | 4 +++- tmux.c | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/server.c b/server.c index 0ee924ca..81cd6950 100644 --- a/server.c +++ b/server.c @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.32 2007-10-24 11:05:59 nicm Exp $ */ +/* $Id: server.c,v 1.33 2007-10-24 11:21:29 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -174,6 +174,8 @@ server_main(char *srv_path, int srv_fd) server_handle_windows(&pfd); server_handle_clients(&pfd); } + if (pfds != NULL) + xfree(pfds); for (i = 0; i < ARRAY_LENGTH(&sessions); i++) { if (ARRAY_ITEM(&sessions, i) != NULL) diff --git a/tmux.c b/tmux.c index 1aa21711..d5a3a0fd 100644 --- a/tmux.c +++ b/tmux.c @@ -1,4 +1,4 @@ -/* $Id: tmux.c,v 1.36 2007-10-23 10:48:23 nicm Exp $ */ +/* $Id: tmux.c,v 1.37 2007-10-24 11:21:29 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -85,6 +85,9 @@ logfile(const char *name) void sighandler(int sig) { + int saved_errno; + + saved_errno = errno; switch (sig) { case SIGWINCH: sigwinch = 1; @@ -96,6 +99,7 @@ sighandler(int sig) waitpid(WAIT_ANY, NULL, WNOHANG); break; } + errno = saved_errno; } void