From cf591cc18badd0af3ab7cb6bd915e1594342c78a Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Sun, 24 Jan 1999 20:07:05 +0000 Subject: [PATCH] (same_x_server): Detect treat ":0" and "unix:0" as the same. Treat "myname:0" as the same as those two. --- src/xterm.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/xterm.c b/src/xterm.c index 53943fe9115..95d6d05dcb8 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -6951,6 +6951,34 @@ same_x_server (name1, name2) char *name1, *name2; { int seen_colon = 0; + unsigned char *system_name = XSTRING (Vsystem_name)->data; + int system_name_length = strlen (system_name); + int length_until_period = 0; + + while (system_name[length_until_period] != 0 + && system_name[length_until_period] != '.') + length_until_period++; + + /* Treat `unix' like an empty host name. */ + if (! strncmp (name1, "unix:", 5)) + name1 += 4; + if (! strncmp (name2, "unix:", 5)) + name2 += 4; + /* Treat this host's name like an empty host name. */ + if (! strncmp (name1, system_name, system_name_length) + && name1[system_name_length] == ':') + name1 += system_name_length; + if (! strncmp (name2, system_name, system_name_length) + && name2[system_name_length] == ':') + name2 += system_name_length; + /* Treat this host's domainless name like an empty host name. */ + if (! strncmp (name1, system_name, length_until_period) + && name1[length_until_period] == ':') + name1 += length_until_period; + if (! strncmp (name2, system_name, length_until_period) + && name2[length_until_period] == ':') + name2 += length_until_period; + for (; *name1 != '\0' && *name1 == *name2; name1++, name2++) { if (*name1 == ':') -- 2.39.2