GNU bug report logs - #46339
28.0.50; ERC likely bug with `erc-previous-command'

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Emanuel Berg <moasenwood@HIDDEN>; Keywords: fixed; Done: Lars Ingebrigtsen <larsi@HIDDEN>; Maintainer for emacs is bug-gnu-emacs@HIDDEN.
bug marked as fixed in version 28.1, send any further explanations to 46339 <at> debbugs.gnu.org and Emanuel Berg <moasenwood@HIDDEN> Request was from Lars Ingebrigtsen <larsi@HIDDEN> to control <at> debbugs.gnu.org. Full text available.
Added tag(s) fixed. Request was from Lars Ingebrigtsen <larsi@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 46339 <at> debbugs.gnu.org:


Received: (at 46339) by debbugs.gnu.org; 27 Feb 2021 04:36:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 26 23:36:14 2021
Received: from localhost ([127.0.0.1]:42985 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1lFrKw-00041H-0e
	for submit <at> debbugs.gnu.org; Fri, 26 Feb 2021 23:36:14 -0500
Received: from quimby.gnus.org ([95.216.78.240]:43456)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <larsi@HIDDEN>) id 1lFrKu-000411-B9
 for 46339 <at> debbugs.gnu.org; Fri, 26 Feb 2021 23:36:13 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org;
 s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date:
 References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding:
 Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:
 Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:
 List-Subscribe:List-Post:List-Owner:List-Archive;
 bh=UMJ7wqMGWXJl2H035k2swBEdmnjJLJTMTauYU/0BRig=; b=nQTwbPetlzL9a/0Ua7vfIomP1L
 cRaiYCuDM8+5JLvHBGXQYfpYi2ssGSJAsW0Oi/GKzERsOEp1EsZTkunLuYSXyd9mqwWQe7I9iYogT
 j91Lvo6C7Yv96ktUddZjjgvKa6olPomlgCUiy25B1ll3JOyN17GFrc7phbFll3qnjaNg=;
Received: from cm-84.212.220.105.getinternet.no ([84.212.220.105] helo=xo)
 by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.92) (envelope-from <larsi@HIDDEN>)
 id 1lFrKh-0001ug-IL; Sat, 27 Feb 2021 05:36:05 +0100
From: Lars Ingebrigtsen <larsi@HIDDEN>
To: "J.P." <jp@HIDDEN>
Subject: Re: bug#46339: 28.0.50; ERC likely bug with `erc-previous-command'
References: <87im75u2cu.fsf@HIDDEN> <87wnvivmva.fsf@HIDDEN>
X-Now-Playing: Tuxedomoon's _Live in London (1982)_: "Time To Lose"
Date: Sat, 27 Feb 2021 05:35:58 +0100
In-Reply-To: <87wnvivmva.fsf@HIDDEN> (J. P.'s message of "Mon, 08 Feb
 2021 03:07:37 -0800")
Message-ID: <87y2fajff5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 @@CONTACT_ADDRESS@@ for details.
 Content preview: "J.P." <jp@HIDDEN> writes: > I think it's expecting an
 erc-input struct object, as passed by the hook > erc-pre-send-functions.
 > > Would something like the following work? Looks good to me; applied to
 Emacs 28. 
 Content analysis details:   (-2.9 points, 5.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -1.0 ALL_TRUSTED            Passed through trusted hosts only via SMTP
 -1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
 [score: 0.0000]
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 46339
Cc: 46339 <at> debbugs.gnu.org, emacs-erc@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

"J.P." <jp@HIDDEN> writes:

> I think it's expecting an erc-input struct object, as passed by the hook
> erc-pre-send-functions.
>
> Would something like the following work?

Looks good to me; applied to Emacs 28.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#46339; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 20 Feb 2021 02:36:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 19 21:36:06 2021
Received: from localhost ([127.0.0.1]:50713 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1lDI7p-0005lj-SE
	for submit <at> debbugs.gnu.org; Fri, 19 Feb 2021 21:36:06 -0500
Received: from lists.gnu.org ([209.51.188.17]:36492)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1lDI7m-0005la-DZ
 for submit <at> debbugs.gnu.org; Fri, 19 Feb 2021 21:36:05 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:34928)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1lDI7m-0003ak-6W
 for bug-gnu-emacs@HIDDEN; Fri, 19 Feb 2021 21:36:02 -0500
Received: from ciao.gmane.io ([116.202.254.214]:55358)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1lDI7k-0002cT-Ig
 for bug-gnu-emacs@HIDDEN; Fri, 19 Feb 2021 21:36:01 -0500
Received: from list by ciao.gmane.io with local (Exim 4.92)
 (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1lDI7h-0002m8-80
 for bug-gnu-emacs@HIDDEN; Sat, 20 Feb 2021 03:35:57 +0100
X-Injected-Via-Gmane: http://gmane.org/
Mail-Followup-To: bug-gnu-emacs@HIDDEN
To: bug-gnu-emacs@HIDDEN
From: Emanuel Berg <moasenwood@HIDDEN>
Subject: Re: bug#46339: 28.0.50; ERC likely bug with `erc-previous-command'
Followup-To: gmane.emacs.bugs,gmane.emacs.erc.general
Date: Sat, 20 Feb 2021 03:35:44 +0100
Message-ID: <87zgzzlb3z.fsf@HIDDEN>
References: <87im75u2cu.fsf@HIDDEN> <87wnvivmva.fsf@HIDDEN>
Mime-Version: 1.0
Content-Type: text/plain
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)
Cancel-Lock: sha1:n5KeEHxUL/xG7ls/j76oNUquHKs=
Mail-Copies-To: never
Received-SPF: pass client-ip=116.202.254.214;
 envelope-from=geb-bug-gnu-emacs@HIDDEN; helo=ciao.gmane.io
X-Spam_score_int: -16
X-Spam_score: -1.7
X-Spam_bar: -
X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9,
 HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=no autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.1 (-)
X-Debbugs-Envelope-To: submit
Cc: emacs-erc@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.1 (--)

J.P. wrote:

>> what does that mean? `erc-next-command' works so a bug is
>> perhaps likely.
>
> I think it's expecting an erc-input struct object, as passed
> by the hook erc-pre-send-functions.
>
> Would something like the following work?

Sorry for the delay. I didn't know how to apply the patch.
Got help from #erc [last]

And it works! Bug gone!

Great job General Purpose! (Jeep :)) J.P.

My #3 ERC bug - I'm rolling. Now when I know how to apply
patches, ikr? the sky is the limit :)

So, accept the patch already :P

[how to apply a patch]

Emacs source root:

  $ patch -p1 < PATCH

Then byte-compile:

  $ emacs --batch -f batch-byte-compile FILES

-- 
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#46339; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 9 Feb 2021 20:46:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 09 15:46:29 2021
Received: from localhost ([127.0.0.1]:54804 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1l9Zu0-0000ex-UI
	for submit <at> debbugs.gnu.org; Tue, 09 Feb 2021 15:46:29 -0500
Received: from lists.gnu.org ([209.51.188.17]:57338)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1l9Zty-0000eo-4s
 for submit <at> debbugs.gnu.org; Tue, 09 Feb 2021 15:46:27 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:48248)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1l9Ztx-0006eC-R5
 for bug-gnu-emacs@HIDDEN; Tue, 09 Feb 2021 15:46:25 -0500
Received: from ciao.gmane.io ([116.202.254.214]:52674)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1l9Ztv-0008S8-3d
 for bug-gnu-emacs@HIDDEN; Tue, 09 Feb 2021 15:46:25 -0500
Received: from list by ciao.gmane.io with local (Exim 4.92)
 (envelope-from <geb-bug-gnu-emacs@HIDDEN>)
 id 1l9Zts-0000IQ-4X
 for bug-gnu-emacs@HIDDEN; Tue, 09 Feb 2021 21:46:20 +0100
X-Injected-Via-Gmane: http://gmane.org/
Mail-Followup-To: bug-gnu-emacs@HIDDEN
To: bug-gnu-emacs@HIDDEN
From: Emanuel Berg <moasenwood@HIDDEN>
Subject: Re: bug#46339: 28.0.50; ERC likely bug with `erc-previous-command'
Followup-To: gmane.emacs.bugs,gmane.emacs.erc.general
Date: Tue, 09 Feb 2021 21:46:09 +0100
Message-ID: <87eehphsvi.fsf@HIDDEN>
References: <87im75u2cu.fsf@HIDDEN> <87wnvivmva.fsf@HIDDEN>
Mime-Version: 1.0
Content-Type: text/plain
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)
Cancel-Lock: sha1:aZnOIGyg7dtflaWu4W27mBwjHY4=
Mail-Copies-To: never
Received-SPF: pass client-ip=116.202.254.214;
 envelope-from=geb-bug-gnu-emacs@HIDDEN; helo=ciao.gmane.io
X-Spam_score_int: -16
X-Spam_score: -1.7
X-Spam_bar: -
X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9,
 HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=no autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.1 (-)
X-Debbugs-Envelope-To: submit
Cc: emacs-erc@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.1 (--)

J.P. wrote:

>> what does that mean? `erc-next-command' works so a bug is
>> perhaps likely.
>
> I think it's expecting an erc-input struct object, as passed
> by the hook erc-pre-send-functions.
>
> Would something like the following work? [...]

How do you apply a patch once downloaded and opened in Emacs?

-- 
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal





Information forwarded to bug-gnu-emacs@HIDDEN:
bug#46339; Package emacs. Full text available.

Message received at 46339 <at> debbugs.gnu.org:


Received: (at 46339) by debbugs.gnu.org; 8 Feb 2021 11:08:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 08 06:08:01 2021
Received: from localhost ([127.0.0.1]:49934 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1l94OW-0001XZ-Iv
	for submit <at> debbugs.gnu.org; Mon, 08 Feb 2021 06:08:01 -0500
Received: from dal3relay173.mxroute.com ([64.40.27.173]:38097)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <jp@HIDDEN>) id 1l94OU-0001XM-QN
 for 46339 <at> debbugs.gnu.org; Mon, 08 Feb 2021 06:07:51 -0500
Received: from filter004.mxroute.com ([149.28.56.236] 149.28.56.236.vultr.com)
 (Authenticated sender: mN4UYu2MZsgR)
 by dal3relay173.mxroute.com (ZoneMTA) with ESMTPSA id 17781535d0c0008aa5.001
 for <46339 <at> debbugs.gnu.org>
 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256);
 Mon, 08 Feb 2021 11:07:40 +0000
X-Zone-Loop: 29f3d167828ebed1a00a489aa160211a360c4854022a
X-Originating-IP: [149.28.56.236]
From: "J.P." <jp@HIDDEN>
To: 46339 <at> debbugs.gnu.org
Subject: Re: bug#46339: 28.0.50; ERC likely bug with `erc-previous-command'
References: <87im75u2cu.fsf@HIDDEN>
Date: Mon, 08 Feb 2021 03:07:37 -0800
In-Reply-To: <87im75u2cu.fsf@HIDDEN> (Emanuel Berg's message of "Sat, 06 Feb
 2021 07:39:13 +0100")
Message-ID: <87wnvivmva.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
Content-Type: multipart/mixed; boundary="=-=-="
X-AuthUser: masked@HIDDEN
X-Spam-Score: 0.1 (/)
X-Debbugs-Envelope-To: 46339
Cc: emacs-erc@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.9 (/)

--=-=-=
Content-Type: text/plain

Emanuel Berg <moasenwood@HIDDEN> writes:

> what does that mean? `erc-next-command' works so a bug is
> perhaps likely.

I think it's expecting an erc-input struct object, as passed by the hook
erc-pre-send-functions.

Would something like the following work?

--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-Accept-string-argument-in-erc-add-to-input-ring.patch

From a805a4e507e19eb6c68fdd57ea7d8972b270aeb9 Mon Sep 17 00:00:00 2001
From: "F. Jason Park" <jp@HIDDEN>
Date: Mon, 8 Feb 2021 02:34:18 -0800
Subject: [PATCH] Accept string argument in erc-add-to-input-ring

* lisp/erc/erc-ring.el: (erc-add-to-input-ring)
(erc-previous-command): Use existing API to grab input.
* test/lisp/erc/erc-tests.el: (erc-ring-previous-command)
See (bug#46339).
---
 lisp/erc/erc-ring.el       | 18 ++++++-----
 test/lisp/erc/erc-tests.el | 64 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 74 insertions(+), 8 deletions(-)

diff --git a/lisp/erc/erc-ring.el b/lisp/erc/erc-ring.el
index 71a9f8ef3da..028ab1eead8 100644
--- a/lisp/erc/erc-ring.el
+++ b/lisp/erc/erc-ring.el
@@ -69,10 +69,13 @@ erc-input-ring-setup
     (setq erc-input-ring (make-ring comint-input-ring-size)))
   (setq erc-input-ring-index nil))
 
-(defun erc-add-to-input-ring (state)
-  "Add string S to the input ring and reset history position."
+(defun erc-add-to-input-ring (state-or-string)
+  "Add STATE-OR-STRING to input ring and reset history position.
+STATE-OR-STRING should be a string or an erc-input object."
   (unless erc-input-ring (erc-input-ring-setup))
-  (ring-insert erc-input-ring (erc-input-string state))
+  (ring-insert erc-input-ring (if (erc-input-p state-or-string)
+                                  (erc-input-string state-or-string)
+                                state-or-string)) ; string
   (setq erc-input-ring-index nil))
 
 (defun erc-clear-input-ring ()
@@ -101,11 +104,10 @@ erc-previous-command
       ;; area, push it on the history ring before moving back through
       ;; the input history, so it will be there when we return to the
       ;; front.
-      (if (null erc-input-ring-index)
-          (when (> (point-max) erc-input-marker)
-            (erc-add-to-input-ring (buffer-substring erc-input-marker
-                                                     (point-max)))
-            (setq erc-input-ring-index 0)))
+      (when (and (null erc-input-ring-index)
+                 (> (point-max) erc-input-marker))
+        (erc-add-to-input-ring (erc-user-input))
+        (setq erc-input-ring-index 0))
 
       (setq erc-input-ring-index (if erc-input-ring-index
                                      (ring-plus1 erc-input-ring-index
diff --git a/test/lisp/erc/erc-tests.el b/test/lisp/erc/erc-tests.el
index 26e14b98e91..d13397274aa 100644
--- a/test/lisp/erc/erc-tests.el
+++ b/test/lisp/erc/erc-tests.el
@@ -23,6 +23,7 @@
 
 (require 'ert)
 (require 'erc)
+(require 'erc-ring)
 
 (ert-deftest erc--read-time-period ()
   (cl-letf (((symbol-function 'read-string) (lambda (&rest _) "")))
@@ -45,3 +46,66 @@ erc--read-time-period
 
   (cl-letf (((symbol-function 'read-string) (lambda (&rest _) "1d")))
     (should (equal (erc--read-time-period "foo: ") 86400))))
+
+(ert-deftest erc-ring-previous-command-base-case ()
+  (ert-info ("Create ring when nonexistent and do nothing")
+    (let (erc-input-ring
+          erc-input-ring-index)
+      (erc-previous-command)
+      (should (ring-p erc-input-ring))
+      (should (zerop (ring-length erc-input-ring)))
+      (should-not erc-input-ring-index)))
+  (should-not erc-input-ring))
+
+(ert-deftest erc-ring-previous-command ()
+  (with-current-buffer (get-buffer-create "*#fake*")
+    (erc-mode)
+    (insert "\n\n")
+    (setq erc-input-marker (make-marker) ; these are all local
+          erc-insert-marker (make-marker)
+          erc-send-completed-hook nil)
+    (set-marker erc-insert-marker (point-max))
+    (erc-display-prompt)
+    (should (= (point) erc-input-marker))
+    (add-hook 'erc-pre-send-functions #'erc-add-to-input-ring nil t)
+    ;;
+    (cl-letf (((symbol-function 'erc-process-input-line)
+               (lambda (&rest _)
+                 (insert-before-markers
+                  (erc-display-message-highlight 'notice "echo: one\n"))))
+              ((symbol-function 'erc-command-no-process-p)
+               (lambda (&rest _) t)))
+      (ert-info ("Create ring, populate, recall")
+        (insert "/one")
+        (erc-send-current-line)
+        (should (ring-p erc-input-ring))
+        (should (zerop (ring-member erc-input-ring "/one"))) ; equal
+        (should (save-excursion (forward-line -1) (goto-char (point-at-bol))
+                                (looking-at-p "[*]+ echo: one")))
+        (should-not erc-input-ring-index)
+        (erc-bol)
+        (should (looking-at "$"))
+        (erc-previous-command)
+        (erc-bol)
+        (should (looking-at "/one"))
+        (should (zerop erc-input-ring-index)))
+      (ert-info ("Back to one")
+        (should (= (ring-length erc-input-ring) (1+ erc-input-ring-index)))
+        (erc-previous-command)
+        (should-not erc-input-ring-index)
+        (erc-bol)
+        (should (looking-at "$"))
+        (should (equal (ring-ref erc-input-ring 0) "/one")))
+      (ert-info ("Swap input after prompt with previous (#bug46339)")
+        (insert "abc")
+        (erc-previous-command)
+        (should (= 1 erc-input-ring-index))
+        (erc-bol)
+        (should (looking-at "/one"))
+        (should (equal (ring-ref erc-input-ring 0) "abc"))
+        (should (equal (ring-ref erc-input-ring 1) "/one"))
+        (erc-next-command)
+        (erc-bol)
+        (should (looking-at "abc")))))
+  (when noninteractive
+    (kill-buffer "*#fake*")))
-- 
2.29.2


--=-=-=--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#46339; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 6 Feb 2021 06:39:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 06 01:39:27 2021
Received: from localhost ([127.0.0.1]:44973 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1l8HFe-0003Iz-Gh
	for submit <at> debbugs.gnu.org; Sat, 06 Feb 2021 01:39:26 -0500
Received: from lists.gnu.org ([209.51.188.17]:40632)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <moasenwood@HIDDEN>) id 1l8HFc-0003Ir-Ke
 for submit <at> debbugs.gnu.org; Sat, 06 Feb 2021 01:39:25 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10]:53580)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <moasenwood@HIDDEN>)
 id 1l8HFc-0005fk-4E
 for bug-gnu-emacs@HIDDEN; Sat, 06 Feb 2021 01:39:24 -0500
Received: from sender11-pp-o91.zoho.eu ([31.186.226.249]:25259)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <moasenwood@HIDDEN>)
 id 1l8HFY-0004SV-SA
 for bug-gnu-emacs@HIDDEN; Sat, 06 Feb 2021 01:39:23 -0500
ARC-Seal: i=1; a=rsa-sha256; t=1612593554; cv=none; d=zohomail.eu; s=zohoarc; 
 b=Ua0kj5KAeygsc3haxf7Sr3ePo9FBjuX6Zj6P22LzLp8bcjfSuxf6KnQsX7gJu10E7FAQtqJt5H+mLDnhi90Dy0BeOSxjreLuu1doMcysXDkEggGgFg09bkMEvJ9uu4uOPOpsSxg0oAN3YJ1AYZlU0GwfxQza427uxp9EtFFv1N0=
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.eu;
 s=zohoarc; 
 t=1612593554; h=Content-Type:Date:From:MIME-Version:Message-ID:Subject:To; 
 bh=qNIAeW8p83bYQiXlZlCzKyDWeBKu65bat4pgzXmGWxw=; 
 b=Drin9tQZ5KTLYfRtTAjB7isqKzadXwGZfV+9VDnmCXNIRPnx4m+cke4bS6aocNflRBb5wmaHmI+UNFMqpikroPgNrHEo/5+kkjnEWItsjwf1M0yIt6ctPCRM9LfT+nV2MrKtEuxyutQD+T3ePQYQBOeU5IatJ1nZToVbWq/94/E=
ARC-Authentication-Results: i=1; mx.zohomail.eu; dkim=pass  header.i=zoho.eu;
 spf=pass  smtp.mailfrom=moasenwood@HIDDEN;
 dmarc=pass header.from=<moasenwood@HIDDEN> header.from=<moasenwood@HIDDEN>
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1612593554; 
 s=admin; d=zoho.eu; i=moasenwood@HIDDEN;
 h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type;
 bh=qNIAeW8p83bYQiXlZlCzKyDWeBKu65bat4pgzXmGWxw=;
 b=M2wCjwuN4DyyixwGgO+1APf0MqmMZULewBsgtF2rZ+n7gtnl007rv2e2q/SHxRJG
 440ApAfKIzcEhHiRwIu7QXWNDYRnlsHUWLb17k+SJUOEQytHGzBg3owz2wf4pmjPn2t
 oIZwH8dCRRVUqioHU4FEOkKjHCCYMrKUzeaqBrMg=
Received: from ebih.zoho.eu (c-fd84225c.021-67-7570702.bbcust.telenor.se
 [92.34.132.253]) by mx.zoho.eu
 with SMTPS id 1612593554076899.3365956431271;
 Sat, 6 Feb 2021 07:39:14 +0100 (CET)
From: Emanuel Berg <moasenwood@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 28.0.50; ERC likely bug with `erc-previous-command'
Mail-Copies-To: never
Date: Sat, 06 Feb 2021 07:39:13 +0100
Message-ID: <87im75u2cu.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-ZohoMailClient: External
Received-SPF: pass client-ip=31.186.226.249; envelope-from=moasenwood@HIDDEN;
 helo=sender11-pp-o91.zoho.eu
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.4 (-)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.4 (--)


In ERC, try type /n RET, then type abc and invoke
`erc-previous-command'

  erc-add-to-input-ring: Wrong type argument: erc-input, "abc"

what does that mean? `erc-next-command' works so a bug is
perhaps likely.


In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5, cairo version 1.16.0)
 of 2020-10-23 built on ebih
Repository revision: 558065531beaaae78810508f267415c6953e8e47
Repository branch: master
System Description: Debian GNU/Linux bullseye/sid

Configured features:
XPM JPEG TIFF GIF PNG CAIRO SOUND DBUS GSETTINGS GLIB NOTIFY
INOTIFY LIBSELINUX GNUTLS FREETYPE HARFBUZZ ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS PDUMPER

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Group

Minor modes in effect:
  erc-list-mode: t
  erc-menu-mode: t
  erc-networks-mode: t
  erc-track-mode: t
  erc-track-minor-mode: t
  erc-netsplit-mode: t
  cursor-sensor-mode: t
  show-paren-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-ring-mode: t
  erc-pcomplete-mode: t
  erc-autojoin-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  erc-scrolltobottom-mode: t
  gnus-undo-mode: t
  shell-dirtrack-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  transient-mark-mode: t

Load-path shadows:
~/.emacs.d/emacs-init/signal hides /home/incal/.emacs.d/elpa/signal-20160816.1438/signal
~/.emacs.d/lisp/abbrev hides /usr/local/share/emacs/28.0.50/lisp/abbrev

Features:
(make-mode cl-print shadow emacsbug eieio-opt speedbar ezimage
dframe shortdoc help-fns radix-tree mule-util w3m-symbol ffap
cus-edit cus-start cus-load erc-list erc-menu erc-networks
erc-track erc-netsplit cl-extra mailalias tabify mail-extr
gnus-async gnus-bcklg gnus-dup gnus-draft gnus-ml disp-table
cursor-sensor pop3 nndraft nnmh nnml gnutls network-stream nsm
gnus-agent nnvirtual nntp gnus-cache term/linux paren
nroff-mode css-mode sgml-mode imenu eww xdg url-queue mm-url
checkdoc lisp-mnt cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs message-my moggle
message-my-dynamic mail-to-many smtpmail sendmail xsel lpr
tramp-sh markdown-mode rx color noutline outline w3m-form
sh-script smie executable org-faces erc-match erc-button
bibtex t-mouse man tex-mode iterate-files issn-verify
isbn-verify pcase yank-my wrap-search w3m-unisearch w3m-search
spell-new ispell sort-my sort shell-cli revert-buffer-my
lisp-new ielm kill keys help-new debug backtrace help-mode
find-func apropos dired-x compile-my mode-line compile article
gnus-cite dl bookmarks w3m-bookmark em-hist em-pred esh-mode
quit gnus-my group group-summary gnus-srvr erc-my fill-new
erc-ring erc-pcomplete erc-join erc-fill erc-stamp erc-goodies
erc erc-backend pp erc-loaddefs gnus-score score-mode gnus-msg
gnus-art mm-uu mml2015 mm-view mml-smime smime dig gnus-sum
shr kinsoku svg dom gnus-group gnus-undo gnus-start gnus-dbus
dbus xml gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo
gnus-spec gnus-int gnus-range gnus-win message rmc puny rfc822
mml mml-sec epa derived epg epg-config mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader
gnus nnheader gnus-util rmail rmail-loaddefs rfc2047 rfc2045
ietf-drums text-property-search mail-utils mm-util mail-prsvr
eshell esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg
esh-module esh-groups esh-util edit tabs dired-my w3m-my
thingatpt w3m-tabs w3m-session w3m doc-view jka-compr
image-mode exif timezone w3m-hist w3m-fb bookmark-w3m w3m-ems
wid-edit w3m-favicon w3m-image tab-line w3m-proc w3m-util
time-my time-my-insert files-my tramp tramp-loaddefs trampver
tramp-integration files-x tramp-compat shell pcomplete comint
ansi-color ring parse-time iso8601 time-date ls-lisp
format-spec sudo-user-path find-command file-write-to
window-new search-regexp-in-files count get-search-string
caps-back easy-mmode buffer-menu switch-to-buffer super scroll
dired dired-loaddefs close buc switch-to-buffer-regexp
align-new my-string slime-autoloads w3m-load info package
easymenu browse-url url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util mailcap
url-handlers url-parse auth-source cl-seq eieio eieio-core
cl-macs eieio-loaddefs password-cache json subr-x map url-vars
seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib
tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list
replace newcomment text-mode elisp-mode lisp-mode prog-mode
register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu
font-core term/tty-colors frame minibuffer cl-generic cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet
lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese
composite charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice
button loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads
dbusbind inotify dynamic-setting system-font-setting
font-render-setting cairo move-toolbar gtk x-toolkit
x multi-tty make-network-process emacs)

Memory information:
((conses 16 494971 68137)
 (symbols 48 32958 12)
 (strings 32 118948 12771)
 (string-bytes 1 3988654)
 (vectors 16 49273)
 (vector-slots 8 1318508 198821)
 (floats 8 492 600)
 (intervals 56 14095 350)
 (buffers 992 51))

-- 
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal




Acknowledgement sent to Emanuel Berg <moasenwood@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#46339; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sat, 27 Feb 2021 04:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.