diff --git a/exec/load/ircd_channel.js b/exec/load/ircd_channel.js
index 3f725d3ddafcd7f23f9ca2a9460a2a9f32a4a76d..c4bbcf38b54c1d4fdc043a8a5f8b7ce7f5d1ab7e 100644
--- a/exec/load/ircd_channel.js
+++ b/exec/load/ircd_channel.js
@@ -546,9 +546,7 @@ function IRCClient_do_join(chan_name,join_key) {
 		return 0;
 	}
 	for (theChar in chan_name) {
-		var theChar_code = chan_name[theChar].charCodeAt(0);
-		if ((theChar_code <= 32) || (theChar_code == 44) ||
-		    (chan_name[theChar].charCodeAt(0) == 160)) {
+		if(chan_name.search(/[\x00-\x20\x2c\xa0]/)!=-1) {
 			if (this.local)
 				this.numeric(479, chan_name
 					+ " :Channel name contains illegal characters.");