diff --git a/Libraries/LibCore/Socket.cpp b/Libraries/LibCore/Socket.cpp index 35590d541a9..11446da7412 100644 --- a/Libraries/LibCore/Socket.cpp +++ b/Libraries/LibCore/Socket.cpp @@ -113,6 +113,8 @@ bool Socket::connect(const SocketAddress& address) saddr.sun_family = AF_LOCAL; strcpy(saddr.sun_path, address.to_string().characters()); + m_destination_address = address; + return common_connect((const sockaddr*)&saddr, sizeof(saddr)); } @@ -137,7 +139,9 @@ bool Socket::common_connect(const struct sockaddr* addr, socklen_t addrlen) }; return true; } - perror("Socket::common_connect: connect"); + int saved_errno = errno; + fprintf(stderr, "Core::Socket: Failed to connect() to %s: %s\n", destination_address().to_string().characters(), strerror(saved_errno)); + errno = saved_errno; return false; } #ifdef CSOCKET_DEBUG