Hey folks,
This was discovered with Orca leaking file descriptors like crazy and hitting 
its limits. a very big thanks to Ryan Lortie for helping to find the issue, and 
creating the patch.

Luke
Description: Fix a fd leak when we can't connect to a socket
Index: brltty-4.4/Programs/brlapi_client.c
===================================================================
--- brltty-4.4.orig/Programs/brlapi_client.c	2013-02-22 15:43:15.000000000 +0000
+++ brltty-4.4/Programs/brlapi_client.c	2013-02-22 15:47:18.054021403 +0000
@@ -471,6 +471,7 @@
       if (connect(handle->fileDescriptor, (struct sockaddr *) &sa, sizeof(sa))<0) {
         brlapi_errfun="connect";
         setSocketErrno();
+        closeSocketDescriptor(handle->fileDescriptor);
         goto outlibc;
       }
     }
@@ -576,6 +577,7 @@
     if (connect(sockfd, (struct sockaddr *) &addr, sizeof(addr))<0) {
       brlapi_errfun = "connect";
       setSocketErrno();
+      closeSocketDescriptor(sockfd);
       goto outlibc;
     }
 
_______________________________________________
This message was sent via the BRLTTY mailing list.
To post a message, send an e-mail to: [email protected]
For general information, go to: http://mielke.cc/mailman/listinfo/brltty

Reply via email to