X-Git-Url: http://git.demorecorder.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fxcb_util.c;h=f5c9431d21744464ddcbfb10892c248c90cfdde9;hb=9b79ae49f709707e99b8487b01f9d3f102754bd3;hp=7c6a4dd553d7814662f1bcc822b63f4e14fc62c0;hpb=43b612a5e99ccdfb787a11b2b7c3179fc242edf3;p=free-sw%2Fxcb%2Flibxcb diff --git a/src/xcb_util.c b/src/xcb_util.c index 7c6a4dd..f5c9431 100644 --- a/src/xcb_util.c +++ b/src/xcb_util.c @@ -316,10 +316,18 @@ xcb_connection_t *xcb_connect(const char *displayname, int *screenp) xcb_connection_t *c; xcb_auth_info_t auth; +#ifdef __APPLE__ + if(displayname && strlen(displayname)>11 && !strncmp(displayname, "/tmp/launch", 11)) + fd = _xcb_open_unix(protocol, displayname); + else { +#endif if(!_xcb_parse_display(displayname, &host, &protocol, &display, screenp)) return (xcb_connection_t *) &error_connection; fd = _xcb_open(host, protocol, display); free(host); +#ifdef __APPLE__ + } +#endif if(fd == -1) return (xcb_connection_t *) &error_connection; @@ -340,10 +348,18 @@ xcb_connection_t *xcb_connect_to_display_with_auth_info(const char *displayname, char *host; char *protocol; +#ifdef __APPLE__ + if(displayname && strlen(displayname)>11 && !strncmp(displayname, "/tmp/launch", 11)) + fd = _xcb_open_unix(protocol, displayname); + else { +#endif if(!_xcb_parse_display(displayname, &host, &protocol, &display, screenp)) return (xcb_connection_t *) &error_connection; fd = _xcb_open(host, protocol, display); free(host); +#ifdef __APPLE__ + } +#endif if(fd == -1) return (xcb_connection_t *) &error_connection;