From 1cbf9e26dc34807263f17fb9a595708d04b3be16 Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Wed, 22 Oct 2008 08:10:54 +0000
Subject: [PATCH] *** empty log message ***

---
 Common/GmshSocket.h            | 4 +++-
 utils/solvers/c++/GmshSocket.h | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/Common/GmshSocket.h b/Common/GmshSocket.h
index d6b251c96c..3f355c7ea7 100644
--- a/Common/GmshSocket.h
+++ b/Common/GmshSocket.h
@@ -303,8 +303,10 @@ class GmshServer : public GmshSocket{
       memset((char *) &addr_un, 0, sizeof(addr_un));
       strcpy(addr_un.sun_path, _sockname);
       addr_un.sun_family = AF_UNIX;
-      if(bind(tmpsock, (struct sockaddr *)&addr_un, sizeof(addr_un)) < 0)
+      if(bind(tmpsock, (struct sockaddr *)&addr_un, sizeof(addr_un)) < 0){
+        CloseSocket(tmpsock);
         return -2;  // Error: Couldn't bind socket to name
+      }
       // change permissions on the socket name in case it has to be rm'd later
       chmod(_sockname, 0666);
 #else
diff --git a/utils/solvers/c++/GmshSocket.h b/utils/solvers/c++/GmshSocket.h
index d6b251c96c..3f355c7ea7 100644
--- a/utils/solvers/c++/GmshSocket.h
+++ b/utils/solvers/c++/GmshSocket.h
@@ -303,8 +303,10 @@ class GmshServer : public GmshSocket{
       memset((char *) &addr_un, 0, sizeof(addr_un));
       strcpy(addr_un.sun_path, _sockname);
       addr_un.sun_family = AF_UNIX;
-      if(bind(tmpsock, (struct sockaddr *)&addr_un, sizeof(addr_un)) < 0)
+      if(bind(tmpsock, (struct sockaddr *)&addr_un, sizeof(addr_un)) < 0){
+        CloseSocket(tmpsock);
         return -2;  // Error: Couldn't bind socket to name
+      }
       // change permissions on the socket name in case it has to be rm'd later
       chmod(_sockname, 0666);
 #else
-- 
GitLab