--- xchat-2.0.5/src/common/text.c 2003-11-08 20:03:21.667394976 +0000 +++ xchat-dsd/src/common/text.c 2003-11-08 21:10:02.532171080 +0000 @@ -202,13 +202,13 @@ if ((word[0] == '#' || word[0] == '&') && word[1] != '#' && word[1] != 0) return WORD_CHANNEL; - if (!strncasecmp (word, "irc.", 4) && word[4] != '.') + if (!strncasecmp (word, "irc.", 4) && !strstr (word, "..")) return WORD_URL; - if (!strncasecmp (word, "ftp.", 4) && word[4] != '.') + if (!strncasecmp (word, "ftp.", 4) && !strstr (word, "..")) return WORD_URL; - if (!strncasecmp (word, "www.", 4) && word[4] != '.') + if (!strncasecmp (word, "www.", 4) && !strstr (word, "..")) return WORD_URL; if (!strncasecmp (word, "irc://", 6) && word[6] != 0) @@ -260,25 +260,25 @@ if (dots == 3) return WORD_HOST; - if (!strncasecmp (word + len - 5, ".html", 5)) + if (!strncasecmp (word + len - 5, ".html", 5) && !strstr(word, "..")) return WORD_HOST; - if (!strncasecmp (word + len - 4, ".org", 4)) + if (!strncasecmp (word + len - 4, ".org", 4) && !strstr (word, "..")) return WORD_HOST; - if (!strncasecmp (word + len - 4, ".net", 4)) + if (!strncasecmp (word + len - 4, ".net", 4) && !strstr (word, "..")) return WORD_HOST; - if (!strncasecmp (word + len - 4, ".com", 4)) + if (!strncasecmp (word + len - 4, ".com", 4) && !strstr (word, "..")) return WORD_HOST; - if (!strncasecmp (word + len - 4, ".edu", 4)) + if (!strncasecmp (word + len - 4, ".edu", 4) && !strstr (word, "..")) return WORD_HOST; if (len > 5) { if (word[len - 3] == '.' && - isalpha (word[len - 2]) && isalpha (word[len - 1])) + isalpha (word[len - 2]) && isalpha (word[len - 1]) && !strstr (word, "..")) return WORD_HOST; }