From 6d8fe661eb792ff9527d78073e361bb67c3b0ede Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Wed, 27 Dec 2017 14:43:22 +0100 Subject: Loop.cpp: create xServerAddrUNIX only if required --- nxcomp/src/Loop.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'nxcomp') diff --git a/nxcomp/src/Loop.cpp b/nxcomp/src/Loop.cpp index c6dc3fefe..1bf3a6198 100644 --- a/nxcomp/src/Loop.cpp +++ b/nxcomp/src/Loop.cpp @@ -3912,10 +3912,7 @@ void SetupDisplaySocket(int &addr_family, sockaddr *&addr, nxinfo << "Loop: Using real X server on UNIX domain socket.\n" << std::flush; - sockaddr_un *xServerAddrUNIX = new sockaddr_un; - addr_family = AF_UNIX; - xServerAddrUNIX -> sun_family = AF_UNIX; // // The scope of this function is to fill either the sockaddr_un @@ -3962,7 +3959,6 @@ void SetupDisplaySocket(int &addr_family, sockaddr *&addr, << "for accessing DISPLAY=:" << xPort << ".\n"; addr = (sockaddr *) xServerAddrABSTRACT; - delete xServerAddrUNIX; delete [] display; return; @@ -4035,6 +4031,9 @@ void SetupDisplaySocket(int &addr_family, sockaddr *&addr, nxinfo << "Loop: Assuming X socket name '" << unixSocketName << "'.\n" << std::flush; + sockaddr_un *xServerAddrUNIX = new sockaddr_un; + + xServerAddrUNIX -> sun_family = AF_UNIX; strcpy(xServerAddrUNIX -> sun_path, unixSocketName); addr = (sockaddr *) xServerAddrUNIX; -- cgit v1.2.3