summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/xcb_util.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/xcb_util.c b/src/xcb_util.c
index 818746b..fde4f85 100644
--- a/src/xcb_util.c
+++ b/src/xcb_util.c
@@ -178,15 +178,13 @@ static int _xcb_open(const char *host, char *protocol, const int display)
}
#endif
- if(*host || protocol)
+ /* If protocol or host is "unix", fall through to Unix socket code below */
+ if ((!protocol || (strcmp("unix",protocol) != 0)) &&
+ (*host != '\0') && (strcmp("unix",host) != 0))
{
- if (protocol
- || strcmp("unix",host)) { /* follow the old unix: rule */
-
- /* display specifies TCP */
- unsigned short port = X_TCP_PORT + display;
- return _xcb_open_tcp(host, protocol, port);
- }
+ /* display specifies TCP */
+ unsigned short port = X_TCP_PORT + display;
+ return _xcb_open_tcp(host, protocol, port);
}
#ifndef _WIN32