summaryrefslogtreecommitdiff
path: root/tools/btproxy.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2014-01-22 07:53:35 -0800
committerMarcel Holtmann <marcel@holtmann.org>2014-01-22 07:53:35 -0800
commit8b8a5315a9321c5385d9d5b441f1e5af9eed37fe (patch)
tree2da6e459e61a6bded4f4794454fc91f8c1221cfd /tools/btproxy.c
parent6fe5d7f420a70e4a4b24f5ecb8b861d7b4768674 (diff)
downloadbluez-8b8a5315a9321c5385d9d5b441f1e5af9eed37fe.tar.gz
tools: Close file descriptors in the calling function
Diffstat (limited to 'tools/btproxy.c')
-rw-r--r--tools/btproxy.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/tools/btproxy.c b/tools/btproxy.c
index 9f409c3e4..be81bae66 100644
--- a/tools/btproxy.c
+++ b/tools/btproxy.c
@@ -330,11 +330,8 @@ static bool setup_proxy(int host_fd, bool host_shutdown,
struct proxy *proxy;
proxy = new0(struct proxy, 1);
- if (!proxy) {
- close(host_fd);
- close(dev_fd);
+ if (!proxy)
return NULL;
- }
proxy->host_fd = host_fd;
proxy->host_shutdown = host_shutdown;
@@ -421,8 +418,11 @@ static void server_callback(int fd, uint32_t events, void *user_data)
printf("New client connected\n");
- if (!setup_proxy(host_fd, true, dev_fd, false))
+ if (!setup_proxy(host_fd, true, dev_fd, false)) {
+ close(dev_fd);
+ close(host_fd);
return;
+ }
client_active = true;
}