Closed
Bug 25147
Opened 25 years ago
Closed 25 years ago
Nick changes while connected to Undernet leads to a null nick in the client.
Categories
(Other Applications :: ChatZilla, defect, P3)
Other Applications
ChatZilla
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: jce2, Assigned: rginda)
Details
(Whiteboard: Fix in hand.)
Attachments
(1 file)
Process:
1) Apply my patch to the static.js file in the Chatzilla directory.
(Without this, you can't even connect to undernet
because the /server command isn't implimented.
(*nudges shaver* could you check in your
implimentation?)
2) /attach undernet.
3) use /nick to change your nick.
Expected result: The new nick appears in the nick area
of the client, and appears before what you send in
channels.
Actual result: (As of Build 2000012609), the nick
becomes NULL, and stays that way though any other
nick changes. The nick changes are reflected on
the server, but not on the client.
Reporter | ||
Comment 1•25 years ago
|
||
Assignee | ||
Comment 2•25 years ago
|
||
This is probably due to differences in the nick changed message between undernet
and the rest of the IRC world. I'll poke at it this weekend.
Removing [DOGFOOD] designation, that's a little too strong a word for chatzilla
bugs. (also, dogfood is now a keyword.)
Status: NEW → ASSIGNED
Summary: [DOGFOOD] Nick changes while connected to Undernet leads to a null nick in the client. → Nick changes while connected to Undernet leads to a null nick in the client.
Reporter | ||
Comment 3•25 years ago
|
||
The problem is that undernet doesn't put a ":" before the
new nick in the nick change message.
Results from irc telnet sessions...
:irc.mozilla.org 376 ByterTest :End of /MOTD command.
NICK Chekc^H
:ByterTest!chtelnet@user-38lde8e.dialup.mindspring.com NICK :Chekc
NICK TESTCHANGE
:Chekc!chtelnet@user-38lde8e.dialup.mindspring.com NICK :TESTCHANGE
:services1.undernet.org 421 ByterTest USER :Unknown command
NICK TestNick
:ByterTest!~chtest@user-38lde8e.dialup.mindspring.com NICK TestNick
Hmm...I never knew that Undernet violated RFC 1459. :-(
Whiteboard: Found the source of the problem...
Reporter | ||
Comment 4•25 years ago
|
||
Hmm..possible workaround for this is for the section that handles
a nick change message could be if e.meat is null, then
it should consider the last element in the parms array
as the new nick. This should work because no server allows
you to change to a null nick.
Unfortunately, I'm not very experienced with javascript at the moment..
I'll see what I can do for a patch...
Assignee | ||
Comment 5•25 years ago
|
||
Actually, if you look at section 4.1.2 of
http://www.irchelp.org/irchelp/text/rfc1459.txt, it specifies (vaguely) that
undernet is correct, and the rest are wrong.
NICK Wiz ; Introducing new nick "Wiz".
:WiZ NICK Kilroy ; WiZ changed his nickname to Kilroy.
The following patch should make things better:
===================================================================
RCS file: /cvsroot/mozilla/extensions/irc/js/lib/irc.js,v
retrieving revision 1.9
diff -u -r1.9 irc.js
--- irc.js 2000/01/07 05:15:29 1.9
+++ irc.js 2000/01/27 01:29:57
@@ -909,7 +909,7 @@
CIRCServer.prototype.onNick =
function serv_nick (e)
{
- var newKey = e.meat.toLowerCase();
+ var newKey = (e.meat) ? e.meat.toLowerCase() : e.params[1].toLowerCase();
var oldKey = e.user.nick;
renameProperty (e.server.users, oldKey, newKey);
Also, fwiw, selecting options->debug messages will dump the raw irc messages, as
well as event propagation to the console.
Reporter | ||
Comment 6•25 years ago
|
||
This patch fixes it...the earlier patch missed the second
change...
912,923c912
< // Some irc networks put a : before the current nick in their nick change
< // messages, others don't. We need to handle both cases.
< if (e.meat)
< {
< // New nick is in the trailer.
< var newKey = e.meat.toLowerCase();
< }
< else
< {
< // New nick is NOT in the trailer. (Undernet for example).
< var newKey = e.params[(e.params.length - 1)].toLowerCase();
< }
---
> var newKey = e.meat.toLowerCase();
928c917
< e.user.changeNick(newKey);
---
> e.user.changeNick(e.meat);
The change works and I am now actively using chatzilla on
Undernet. :-)
Whiteboard: Found the source of the problem... → Fix in hand.
Assignee | ||
Comment 7•25 years ago
|
||
patch for undernet, dalnet and slashnet, as well as patch for nick changes
checked in.
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Updated•20 years ago
|
Product: Core → Other Applications
You need to log in
before you can comment on or make changes to this bug.
Description
•