From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#64423: 29.0.92; save-interprogram-paste-before-kill doesn't prevent streaming large selections Date: Sat, 08 Jul 2023 20:49:13 +0300 Message-ID: <83zg46b8fa.fsf@gnu.org> References: <875y72ieq8.fsf@catern.com> <87cz193eno.fsf@yahoo.com> <87jzvgse4k.fsf@yahoo.com> <87pm58phyu.fsf@catern.com> <87y1jwqqel.fsf@yahoo.com> <87mt0bq4py.fsf@catern.com> <87mt06mk7w.fsf@catern.com> <831qhicpsy.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="33898"; mail-complaints-to="usenet@ciao.gmane.io" Cc: luangruo@yahoo.com, sbaugh@catern.com, 64423@debbugs.gnu.org To: Spencer Baugh Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jul 08 19:50:38 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qIC4s-0008bT-1M for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 08 Jul 2023 19:50:38 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qIC4K-0002um-QI; Sat, 08 Jul 2023 13:50:04 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qIC4J-0002uR-8s for bug-gnu-emacs@gnu.org; Sat, 08 Jul 2023 13:50:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qIC4J-0007FW-0Q for bug-gnu-emacs@gnu.org; Sat, 08 Jul 2023 13:50:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qIC4I-0008DS-Lk for bug-gnu-emacs@gnu.org; Sat, 08 Jul 2023 13:50:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 08 Jul 2023 17:50:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64423 X-GNU-PR-Package: emacs Original-Received: via spool by 64423-submit@debbugs.gnu.org id=B64423.168883855731466 (code B ref 64423); Sat, 08 Jul 2023 17:50:02 +0000 Original-Received: (at 64423) by debbugs.gnu.org; 8 Jul 2023 17:49:17 +0000 Original-Received: from localhost ([127.0.0.1]:45143 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qIC3Y-0008BP-Ur for submit@debbugs.gnu.org; Sat, 08 Jul 2023 13:49:17 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:38418) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qIC3W-0008B4-N2 for 64423@debbugs.gnu.org; Sat, 08 Jul 2023 13:49:15 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qIC3Q-0006qc-LD; Sat, 08 Jul 2023 13:49:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=jyMqS8KysHGyimxkWIArVtjABlMi2CIJHN/qj2qn6B0=; b=eN3WZbwFzXWo xoWBAfjJILopky1lJH9dTemGWfw8TwN3o4f5HnWkHdcqUoYlZOJEgBM3PejWsoE3Zx/za86Hxky0r JmYVOkYw+0aDvccCx15ZXLAVFO+laDFmC17RAy59oGNbDL0KldNean622jwii4Ko45Tx8uKPMWFXf +DXqA1GCFnCSNT3kUa2l/WYSOwNb/1Y6rIOTOHPoGQSG8YEPP9e7UJcEZ9oU1sNissdBStzBFsqFS 7XGsksPuopq36NCzS/LD/S/N5/UCD5Jc02nFqC9aVRaNb7Je3AOLLnb4DQH6zeQH3g35gg+Le5Y/Y RrTKcNfzo1eXKZgFxGng4Q==; Original-Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qIC3Q-0002IX-4z; Sat, 08 Jul 2023 13:49:08 -0400 In-Reply-To: (message from Spencer Baugh on Sat, 08 Jul 2023 13:07:37 -0400) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:264784 Archived-At: > From: Spencer Baugh > Cc: sbaugh@catern.com, luangruo@yahoo.com, 64423@debbugs.gnu.org > Date: Sat, 08 Jul 2023 13:07:37 -0400 > > Eli Zaretskii writes: > >> Cc: Spencer Baugh , 64423@debbugs.gnu.org > >> From: sbaugh@catern.com > >> Date: Sat, 08 Jul 2023 16:39:00 +0000 (UTC) > >> > >> diff --git a/lisp/simple.el b/lisp/simple.el > >> index 26944f1f72d..95d00cc506b 100644 > >> --- a/lisp/simple.el > >> +++ b/lisp/simple.el > >> @@ -5618,8 +5618,10 @@ kill-new > >> (if (fboundp 'menu-bar-update-yank-menu) > >> (menu-bar-update-yank-menu string (and replace (car kill-ring))))) > >> (when save-interprogram-paste-before-kill > >> - (let ((interprogram-paste (and interprogram-paste-function > >> - (funcall interprogram-paste-function)))) > >> + (let ((interprogram-paste > >> + (ignore-error 'quit > >> + (and interprogram-paste-function > >> + (funcall interprogram-paste-function))))) > >> (when interprogram-paste > >> (setq interprogram-paste > >> (if (listp interprogram-paste) > > > > Are you sure this is TRT for all the implementations of GUI > > selections? AFAIU, the discussion was only about X. > > Independent of that discussion, I think this change should be harmless. How do you know that? The prudent thing in Emacs is to "do no harm", i.e. try hard not to affect any code that is unrelated to the problem. Assuming that a change is harmless is a mother of all bugs. > The worst thing that this change can cause is that a call to kill-new > can complete successfully when it otherwise would have failed. No, I think you can also do the reverse. And anyway, this kind of "reasoning" is what gets us in trouble time and again. Why risk all those potential problems, where the original issue doesn't exist in the first place? > But, also, I believe the discussion makes sense for platforms besides X: > if there's a bug in the current owner of the clipboard, then taking > ownership of the clipboard in Emacs will let us avoid that bug. And > this change to ignore quits will allow the user to take ownership of the > selection in that way, whereas they previously would not be able to > (without manually writing some Lisp anyway). You do realize that some window systems Emacs support have no notion of "clipboard ownership" or "selection ownership" whatsoever? So please modify the patch to affect only X, TIA.