-rw-r--r-- | core/launcher/qcopbridge.cpp | 2 | ||||
-rw-r--r-- | core/launcher/transferserver.cpp | 3 |
2 files changed, 5 insertions, 0 deletions
diff --git a/core/launcher/qcopbridge.cpp b/core/launcher/qcopbridge.cpp index e339dc7..64eb096 100644 --- a/core/launcher/qcopbridge.cpp +++ b/core/launcher/qcopbridge.cpp @@ -45,6 +45,7 @@ using namespace Opie::Core; #ifndef Q_OS_WIN32 #include <pwd.h> #include <unistd.h> +#include <fcntl.h> #include <sys/types.h> #endif @@ -63,6 +64,7 @@ QCopBridge::QCopBridge( Q_UINT16 port, QObject *parent, if ( !ok() ) owarn << "Failed to bind to port " << port << "" << oendl; else { + ::fcntl( socket(), F_SETFD, FD_CLOEXEC ); #ifndef QT_NO_COP desktopChannel = new QCopChannel( "QPE/Desktop", this ); connect( desktopChannel, SIGNAL(received(const QCString&,const QByteArray&)), diff --git a/core/launcher/transferserver.cpp b/core/launcher/transferserver.cpp index 2b2e435..a219c0f 100644 --- a/core/launcher/transferserver.cpp +++ b/core/launcher/transferserver.cpp @@ -39,6 +39,7 @@ using namespace Opie::Core; #include <pwd.h> #include <sys/types.h> #include <unistd.h> +#include <fcntl.h> #include <stdlib.h> #include <time.h> @@ -56,6 +57,8 @@ TransferServer::TransferServer( Q_UINT16 port, QObject *parent, connections.setAutoDelete( TRUE ); if ( !ok() ) owarn << "Failed to bind to port " << port << "" << oendl; + else + ::fcntl( socket(), F_SETFD, FD_CLOEXEC ); } void TransferServer::authorizeConnections() |