erc reconnects to channels on wrong servers (too)

Bug #160131 reported by era
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
emacs22 (Ubuntu)
Confirmed
Undecided
Unassigned
emacs23 (Ubuntu)
Confirmed
Undecided
Unassigned
emacs24 (Ubuntu)
New
Undecided
Unassigned
erc (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Binary package hint: erc

When ERC loses a connection and then regains it, if I have channels open on another server as well, it will reconnect to the other server's channels, too.

To reproduce (clumsily):

M-x erc-select <RET> server1 <RET> <RET> <RET>
M-x erc-select <RET> server2 <RET> <RET> <RET>
In the server1:ircd buffer:
/join #onetest <RET>
In the server2:ircd buffer:
/join #twotest <RET>

(This was slightly rearranged to cope with a related bug in new versions of Erc.)

Now jerk the connection to server2, or (as a rough approximation) kill the associated buffer server2:ircd

M-x kill-buffer <RET> server2:ircd <RET>

Then reconnect:

M-x erc-select <RET> server2 <RET>

Expected result:

ERC should rejoin #twotest on server2 but no other channels.

Actual result:

ERC joins back on #twotest but in addition joins #onetest on server2 (sic), resulting in a new buffer #onetest<2> (assuming you have the variable `uniquify-buffer-name-style' set to its default value).

Reproducible:

Always

I guess the list of active channels does not contain the information about which server a channel is on, or the information is simply not used when reconnecting to lost channels.

Revision history for this message
era (era) wrote :

Still happens on Feisty, for the record.

Revision history for this message
era (era) wrote :

Duh, I meant Gutsy!

Revision history for this message
Michael Olson (mwolson) wrote :

Can you please try out the attached package, and let me know whether that fixes the problem? I've made several changes upstream the past 6 months that might have fixed it.

Revision history for this message
Michael Olson (mwolson) wrote :

Darn, messed that one up. Trying again shortly.

Revision history for this message
Michael Olson (mwolson) wrote :

OK, here's the revised snapshot package.

Michael Olson (mwolson)
Changed in erc:
status: New → Incomplete
Revision history for this message
wolfger (wolfger) wrote :

This bug has been untouched in a while. Is anybody able to confirm the fix? Does the problem still exist now in Hardy?

Revision history for this message
era (era) wrote :

I still get it with the version of erc which ships with emacs22. Haven't tried the stand-alone erc package, as I kind of thought that was supposed to be only for emacs21. Is it? Are the ostensible fixes included in the emacs22 package, too?

Revision history for this message
Michael Olson (mwolson) wrote :

Actually, please do try the standalone erc package. It is a newer version of ERC than the one in emacs22, with several fixes of this nature.

Revision history for this message
era (era) wrote :

Yes, I still get this with the standalone erc 5.3-1ubuntu1 on emacs22 on Hardy amd64.

To make the repro steps more effective, one could create an SSH tunnel from localhost 6666 to some remote IRC server -- the SSH crypto is irrelevant here, the point is just to give you an easy way to establish a second server, and disconnect and reconnect it at will.

Changed in erc:
status: Incomplete → New
Daniel T Chen (crimsun)
Changed in erc:
status: New → Confirmed
Revision history for this message
era (era) wrote :

This also (still) happens in the erc which ships with emacs22 on Intrepid amd64. Haven't checked the Intrepid erc stand-alone package yet.

Revision history for this message
Anselm Helbig (anselm-helbig) wrote :

I could not reproduce this behavior on intrepid/i686 with emacs22-gtk-22.2-0ubuntu2 and erc-5.3-1ubuntu1.

Changed in erc:
status: Confirmed → Incomplete
Revision history for this message
Anselm Helbig (anselm-helbig) wrote :

I can not reproduce this issue on intrepid/i686 with the builtin erc of emacs22-gtk-22.2-0ubuntu2.

@era: are you absolutely sure that you're not accidentally using an older version that you installed locally? What does M-x locate-library <RET> erc <RET> print out?

Changed in emacs22:
status: New → Incomplete
Revision history for this message
era (era) wrote :

Library is file /usr/share/emacs/22.2/lisp/erc/erc.elc

erc-version-string is a variable defined in `erc.el'.
Its value is "Version 5.2"

I can still trivially reproduce with the kill-buffer maneuvre. The obvious indication is that there is now a second buffer #onetest<2> where erc has joined #onetest on server2

Changed in emacs22:
status: Incomplete → New
Revision history for this message
era (era) wrote :

Actually it automatically joins the #onetest channel on server2 as soon as I erc-select server2, even before I kill any buffers. This is even worse than it used to be.

Revision history for this message
era (era) wrote :

Verified with erc-5.3-1ubuntu1 under emacs-snapshot on Intrepid.

I will update the repro steps in the description to first connect to both servers, then join one channel on each.

Changed in erc:
status: Incomplete → New
description: updated
Revision history for this message
rusivi2 (rusivi2-deactivatedaccount) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. The version of Ubuntu your using is in End of Life status. More information may be found at: https://wiki.ubuntu.com/Releases As well, the issue that you reported should be reproducible with the live environment of the Desktop CD development release - Maverick Meerkat. It would help us greatly if you could test with it so we can work on getting it fixed in the next release of Ubuntu. You can find more about the development release at http://www.ubuntu.com/testing/. Please repost a detailed error report and update the bug status. Thanks again and we appreciate your help.

Changed in erc (Ubuntu):
status: New → Incomplete
Changed in emacs22 (Ubuntu):
status: New → Incomplete
Revision history for this message
era (era) wrote :

Trivially reproduced out of the box with emacs22 on Maverick Release Candidate Live CD.

Changed in emacs22 (Ubuntu):
status: Incomplete → New
Changed in erc (Ubuntu):
status: Incomplete → New
Changed in erc (Ubuntu):
status: New → Confirmed
Changed in emacs23 (Ubuntu):
status: New → Confirmed
Changed in emacs22 (Ubuntu):
status: New → Confirmed
Revision history for this message
era (era) wrote :

Trivially reproduced out of the box on emacs24.

era@trvsty:~$ apt-cache policy emacs24
emacs24:
  Installed: 24.3+1-2ubuntu1
  Candidate: 24.3+1-2ubuntu1
  Version table:
 *** 24.3+1-2ubuntu1 0
        500 http://fi.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
        100 /var/lib/dpkg/status

era@trvsty:~$ lsb_release -rd
Description: Ubuntu 14.04.1 LTS
Release: 14.04

(dist-upgraded from precise just now)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.