From unknown Mon Jun 23 07:49:42 2025 X-Loop: help-debbugs@gnu.org Subject: bug#31097: 27.0.50; Interprogram paste is destructively modified Resent-From: "Basil L. Contovounesios" Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 08 Apr 2018 15:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 31097 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 31097@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.152320021316410 (code B ref -1); Sun, 08 Apr 2018 15:11:01 +0000 Received: (at submit) by debbugs.gnu.org; 8 Apr 2018 15:10:13 +0000 Received: from localhost ([127.0.0.1]:42647 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f5BxM-0004Gc-Vc for submit@debbugs.gnu.org; Sun, 08 Apr 2018 11:10:13 -0400 Received: from eggs.gnu.org ([208.118.235.92]:57193) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f5BxL-0004GP-1N for submit@debbugs.gnu.org; Sun, 08 Apr 2018 11:10:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f5BxE-0007nm-RU for submit@debbugs.gnu.org; Sun, 08 Apr 2018 11:10:05 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:48816) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f5BxE-0007nM-OX for submit@debbugs.gnu.org; Sun, 08 Apr 2018 11:10:04 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48131) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f5BxD-0007vN-K5 for bug-gnu-emacs@gnu.org; Sun, 08 Apr 2018 11:10:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f5BxA-0007jf-EZ for bug-gnu-emacs@gnu.org; Sun, 08 Apr 2018 11:10:03 -0400 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:52643) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f5BxA-0007iQ-6o for bug-gnu-emacs@gnu.org; Sun, 08 Apr 2018 11:10:00 -0400 Received: by mail-wm0-x236.google.com with SMTP id g8so12700884wmd.2 for ; Sun, 08 Apr 2018 08:09:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd-ie.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:mime-version; bh=ESOi+JBV1uxm7RWl6KwRgjxf57u+FfkXxjlZA9PSLF4=; b=aazVuxfpUqM0tM4ubQWRxyohAeCNh1zUCuB5o4c6fF98v1UlDSEkH+HfvF6UVt9vJk oAcntSBsrSwN1MFD1smyKW9AK1R7rwrs81bo0RCIv91onsoisnVz+wTEQDmQ8YaDVn7j Wh1lAwH5JeHPyEyAqQPVaetEv5OJhB3cCaLnNyBUsN01GNkAUSYBwp8QsPBov3yoMNYy gaAaaKXDV0OAVjknjEAuwyE0u7/sZM3SD8Ioeq1P1h3ZpKVKUKr+QINyG5H5+m9qf3Wm bvlcEPaSBfaAFFg7aZKT7VFbEhQfZDbhn9qfXHzXPsfxemAK0ZCYGFV93OP+Bf2LoK1W C/Xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=ESOi+JBV1uxm7RWl6KwRgjxf57u+FfkXxjlZA9PSLF4=; b=XFwVR3U/k0PEFc0eaMTkM3Ob3aIFCTlciXB7ibeCFTULuHAWk/JPCMLtLz/rlLI91s ooVqrmaLQRryHyTGOUrGupL/id8xon8yLM9lGz+6grAEoWWs41itBf2HugNodaxHFzN/ B66twP5UPms2F0gMKInF0jXsuA7N4dfhmM/nQJn7zJ5QoG/Uc3VFPKZFzW2WBZDf66dN CWsYtKdzgPfYLgMbFLUaSBi2M2ncRgxu6YvwnpeKVvZn0bbRAJ4D9ZTRCiId1rRrJDeH aogO1pDr1QGic3QRTjSey/SqLD5P2yK0D/b5/Q4CCdwFBee3y6veeJcDKJKE1WFLpAtM kpWQ== X-Gm-Message-State: ALQs6tDwbCqPD8ntSyGeVlXj8Ko+WeqeOKR33D80hXwGDFO8PuFeml0w sZJM9WaOTWLd9e3GzUHPQ56HYBKM X-Google-Smtp-Source: AIpwx49OACsBhQlt+I/yKlgqdSMCswFIiUeeyi/VWolmRNwEf+fIV5uH2w/lnsE31a8SKKSpDbb0oQ== X-Received: by 10.80.141.202 with SMTP id s10mr17415957edh.67.1523200197923; Sun, 08 Apr 2018 08:09:57 -0700 (PDT) Received: from localhost ([86.43.86.68]) by smtp.gmail.com with ESMTPSA id s9sm1388868edc.85.2018.04.08.08.09.56 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 08 Apr 2018 08:09:57 -0700 (PDT) From: "Basil L. Contovounesios" Date: Sun, 08 Apr 2018 16:09:51 +0100 Message-ID: <87fu45loow.fsf@tcd.ie> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.0 (------) Consider the following case: (defvar my-paste '("foo" "bar")) (defun my-paste () my-paste) (setq interprogram-paste-function #'my-paste) my-paste ; => ("foo" "bar") (current-kill 0 t) ; => "foo" my-paste ; => ("foo") This is clearly a contrived use of interprogram-paste-function, but IMO functions ought not needlessly make destructive changes to non-internal values not known to be newly created. Patch to follow in case others share my opinion. Thanks, -- Basil In GNU Emacs 27.0.50 (build 2, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of 2018-04-08 built on thunk Repository revision: 8df23a82042fa7dbaaa4377bc376d705595b073f Windowing system distributor 'The X.Org Foundation', version 11.0.11906000 System Description: Debian GNU/Linux buster/sid Configured features: XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11 MODULES THREADS LIBSYSTEMD JSON LCMS2 From unknown Mon Jun 23 07:49:42 2025 X-Loop: help-debbugs@gnu.org Subject: bug#31097: 27.0.50; Interprogram paste is destructively modified Resent-From: "Basil L. Contovounesios" Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 08 Apr 2018 15:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31097 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 31097@debbugs.gnu.org Received: via spool by 31097-submit@debbugs.gnu.org id=B31097.152320071517185 (code B ref 31097); Sun, 08 Apr 2018 15:19:02 +0000 Received: (at 31097) by debbugs.gnu.org; 8 Apr 2018 15:18:35 +0000 Received: from localhost ([127.0.0.1]:42652 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f5C5S-0004T7-RR for submit@debbugs.gnu.org; Sun, 08 Apr 2018 11:18:35 -0400 Received: from mail-wm0-f52.google.com ([74.125.82.52]:55946) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f5C5Q-0004Sq-GP for 31097@debbugs.gnu.org; Sun, 08 Apr 2018 11:18:33 -0400 Received: by mail-wm0-f52.google.com with SMTP id b127so12814495wmf.5 for <31097@debbugs.gnu.org>; Sun, 08 Apr 2018 08:18:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd-ie.20150623.gappssmtp.com; s=20150623; h=from:to:subject:references:date:in-reply-to:message-id:user-agent :mime-version; bh=EabNF9cCFfTGOxU72XiQtp3rAhuY01mwywICE1mt4mM=; b=jmQrtDXlMwYa/DxQ/UO0N4QjdEQVSd+lCDpK2fRTr6fs1CPIDRhvUq2jCCG+JMIuIY +3jSwwVvCQRK3BGwHygrLb+qR+yqbGrWcp9DQXUr44IrNGWuVLCg99ucZ8J04/SsjyXw yVmE11rvO/U5eghmwyCfyWyL4KniUpShyV3Us8Xb9Jij4XDGivD7zZqpkgTtqid8sikj G4AFtowdT0HjWOrGB7cPf3jrcuYsFnTCPEmLyAv/iIcSfsXEQTI4ivjWCDR8ov146bBA FQ5l+ro5Xhm1RMZGKIfGct4ZWToMcAT4oP33LG1epN0Gs8DlyWs71opPlfl2oBQJCeDM A1xA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=EabNF9cCFfTGOxU72XiQtp3rAhuY01mwywICE1mt4mM=; b=qCFANK37NKBG6t1ruT14WG/6CoW4j+6YF/YnnMe4bH3hv2ouc9XixGGa9xJAJCH442 C8AokXQsRwAzzFWpfm9a4GGhQ86YIGU75MiipOak7YsLooFN/gQStKM68sa/zobO3QiO +sGOS6CJmAXdszpxuHBgdYm1zFOh7/8T4+OwhiOR96S3J6j17oAyZiQwfxph5jxqyCIh uSo2VzVZDCFrqLLieqPuEa0DhejfWKWbmAkHViuZPbcui6lfq5/OKSiKTV3+1NM923wV oAWutU4GDCLmXoLxDycvmsjAh4ETNFPDR+DVNXSiws9URAOxsETde/575rYw1TzM+Uz4 OKWg== X-Gm-Message-State: ALQs6tDeSbQ2XqfHt9wtR9gel84xunsyoq8vtj9bdArbdASL91+hxj7W 5aZ7m2xptZjMkExbTLHQDO22cmKQ X-Google-Smtp-Source: AIpwx49uwbp1kl+yx6v8v0UCF/ljU0nARSG0IIgh0Zt9AlOD8RIIcacTpqoOiqAvOGQ4qqrIRUm/UA== X-Received: by 10.80.213.150 with SMTP id v22mr2544235edi.142.1523200706702; Sun, 08 Apr 2018 08:18:26 -0700 (PDT) Received: from localhost ([86.43.86.68]) by smtp.gmail.com with ESMTPSA id k51sm9880286eda.59.2018.04.08.08.18.24 for <31097@debbugs.gnu.org> (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 08 Apr 2018 08:18:25 -0700 (PDT) From: "Basil L. Contovounesios" References: <87fu45loow.fsf@tcd.ie> Date: Sun, 08 Apr 2018 16:18:21 +0100 In-Reply-To: <87fu45loow.fsf@tcd.ie> (Basil L. Contovounesios's message of "Sun, 08 Apr 2018 16:09:51 +0100") Message-ID: <87bmetloaq.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-Do-not-destructively-modify-interprogram-paste.patch >From a5e62f9dafde2cc0695d26730b4b67d84ddfd88d Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Sun, 8 Apr 2018 15:31:57 +0100 Subject: [PATCH] Do not destructively modify interprogram paste * simple.el (kill-new, current-kill): Non-destructively reverse list returned by interprogram-paste-function. (bug#31097) --- lisp/simple.el | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/lisp/simple.el b/lisp/simple.el index 3d50e38b59..d81db16fff 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -4369,7 +4369,7 @@ kill-new (funcall interprogram-paste-function)))) (when interprogram-paste (dolist (s (if (listp interprogram-paste) - (nreverse interprogram-paste) + (reverse interprogram-paste) (list interprogram-paste))) (unless (and kill-do-not-save-duplicates (equal-including-properties s (car kill-ring))) @@ -4437,7 +4437,6 @@ current-kill If optional arg DO-NOT-MOVE is non-nil, then don't actually move the yanking point; just return the Nth kill forward." - (let ((interprogram-paste (and (= n 0) interprogram-paste-function (funcall interprogram-paste-function)))) @@ -4448,21 +4447,21 @@ current-kill ;; selection, with identical text. (let ((interprogram-cut-function nil)) (if (listp interprogram-paste) - (mapc 'kill-new (nreverse interprogram-paste)) + (mapc #'kill-new (reverse interprogram-paste)) (kill-new interprogram-paste))) (car kill-ring)) (or kill-ring (error "Kill ring is empty")) - (let ((ARGth-kill-element + (let ((nth-kill-element (nthcdr (mod (- n (length kill-ring-yank-pointer)) (length kill-ring)) kill-ring))) (unless do-not-move - (setq kill-ring-yank-pointer ARGth-kill-element) + (setq kill-ring-yank-pointer nth-kill-element) (when (and yank-pop-change-selection (> n 0) interprogram-cut-function) - (funcall interprogram-cut-function (car ARGth-kill-element)))) - (car ARGth-kill-element))))) + (funcall interprogram-cut-function (car nth-kill-element)))) + (car nth-kill-element))))) -- 2.16.3 --=-=-= Content-Type: text/plain "Basil L. Contovounesios" writes: > Patch to follow in case others share my opinion. I attach said patch. Thanks, -- Basil --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 08 11:21:53 2018 Received: (at control) by debbugs.gnu.org; 8 Apr 2018 15:21:53 +0000 Received: from localhost ([127.0.0.1]:42656 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f5C8f-0004Y4-BO for submit@debbugs.gnu.org; Sun, 08 Apr 2018 11:21:53 -0400 Received: from mail-wm0-f41.google.com ([74.125.82.41]:37308) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f5C8d-0004Xr-2Y for control@debbugs.gnu.org; Sun, 08 Apr 2018 11:21:51 -0400 Received: by mail-wm0-f41.google.com with SMTP id r131so11168588wmb.2 for ; Sun, 08 Apr 2018 08:21:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd-ie.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:user-agent:mime-version; bh=6XqO12ucb4E/ufMpNhxIC8h4P9Y7R0iIgh33zb9Y5I8=; b=jK4TuUvTT1GyqBmLrdoOFq8r5ZTZX1Tp2ZxNechGquEI3+tI2i1i9hEJB3V9XtdZXS ZQob8owwEXdS+HY8KDNhGbgMvOwAXQhn2kwGCTdCuc1LSUH0pGCTU89o/D8BNncZnn9e 6mC0UVbuGtXwh7avsMt9h/Uib7roFTJUX5cwraHHDEtjpA/STdBZAIaM8DbQBp+12oOZ 9oiuBt8ahOcdHL49wMm85B9clZGlsvefPfGsLcvSnSDSeidOscxyckkU8n/TCHWycL5q tyTEOGi0Hq8WbO/8+/oUTBPSiH/gwg8wipoxgaFLVLFBQ5spbKye7mHw6veNODTzKLxV 02pw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:user-agent :mime-version; bh=6XqO12ucb4E/ufMpNhxIC8h4P9Y7R0iIgh33zb9Y5I8=; b=V2HTsHKObaSPQg2lO+Cge4xe14fMPBUTdkGXRZJhCHnGB4C/aT34sAKWI9PVfVIixJ aqiQDioFj+Z3PkDLPyMmXAVlIcFRmg53WogAML24nOfTEE61Y1ySv/toDbNtpwvJzk7z dWllHxBuQoXh0jBl1PeGxkvg02VI1GrGnY8EFQFosSkub+Y8J6P9VGb9/+uEGywZ7DSC wg5/KtL72oCbmvG0mUe3/JsB8hGs8uAHkjW4DdyxrIwgtP1ppgRtjC6zoBGHGiT+lD7Z RZHJJmFDFqrfsRsnEuzSUrlNyUGnUG91sSclpBCueyAbRJs6RR/yJ1lXw720FEmsC4uT eDxw== X-Gm-Message-State: ALQs6tD1P31MwwHvsO2Auzk4tpnDJeC2ImefEMD5Gar/W8I5v1ZJOeb8 eBGxLgSIudMYBDiLmlEtzUoyktNN X-Google-Smtp-Source: AIpwx4+Lpef4gK740M7z3+JckjcZoupm0DAVgNCGoQ6flak9dqKgPW9m41hpg2Sct3naUvkMceOnFQ== X-Received: by 10.80.149.186 with SMTP id w55mr17353260eda.113.1523200905333; Sun, 08 Apr 2018 08:21:45 -0700 (PDT) Received: from localhost ([86.43.86.68]) by smtp.gmail.com with ESMTPSA id h56sm628327ede.71.2018.04.08.08.21.44 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 08 Apr 2018 08:21:44 -0700 (PDT) From: "Basil L. Contovounesios" To: control@debbugs.gnu.org Subject: Re: bug#31097: 27.0.50; Interprogram paste is destructively modified Date: Sun, 08 Apr 2018 16:21:43 +0100 Message-ID: <876051lo54.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 31097 + patch From unknown Mon Jun 23 07:49:42 2025 X-Loop: help-debbugs@gnu.org Subject: bug#31097: 27.0.50; Interprogram paste is destructively modified Resent-From: Noam Postavsky Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Apr 2018 23:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31097 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: "Basil L. Contovounesios" Cc: 31097@debbugs.gnu.org Received: via spool by 31097-submit@debbugs.gnu.org id=B31097.15235761548276 (code B ref 31097); Thu, 12 Apr 2018 23:36:02 +0000 Received: (at 31097) by debbugs.gnu.org; 12 Apr 2018 23:35:54 +0000 Received: from localhost ([127.0.0.1]:48796 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f6lkv-00029L-T9 for submit@debbugs.gnu.org; Thu, 12 Apr 2018 19:35:54 -0400 Received: from mail-it0-f43.google.com ([209.85.214.43]:54149) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f6lks-000291-Tg; Thu, 12 Apr 2018 19:35:51 -0400 Received: by mail-it0-f43.google.com with SMTP id m134-v6so1066028itb.3; Thu, 12 Apr 2018 16:35:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=19iHGBO4Nqabju6Hv971mbwOtR9F3DN3ogZELo8NctU=; b=nXUkK8UurFF5Q9zqqliVPJSE/uf0oW0eyXVLfbWFJc2XXFwTnfZoaYqohzNGT5zQCe tToIyL6Uwua/UHBQ35sUsik+AkbGjgHzvGydJz/FoWcO6VoYqHiKJZgjw/L2q1hpJHws yDcNc2iZ5fwMXsHeMnOsip0AMDfGHTCc7ASV7F9vRzYPWSha8l4O9V//zUPbDZtgW1Py p6P/yu9wFlK8P18QcfNrKaPlhOtHEHlYRVG1uflyv8YYZ5QSP62F8K/A6btKT+zhnR1N GEkI8eu3OVNY53Fcx2cCaeT53FjHo/V8bpPO/TjLs6UICv2I7VqzmHCUZ4IQQWhRqvKT darg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=19iHGBO4Nqabju6Hv971mbwOtR9F3DN3ogZELo8NctU=; b=qGHxU/Rz7DcVj7waOqbeIjBjf1eWaSfOUNS0oPFuQAnNWN2haQlLCQsbwl2amUK+a3 r1AaHH0RYJMgeL26w+vO8STzMcXP8nPXXMrbZ5F8M3EBKxe9WffYV5J+7vkLoYlJYZ6q OVkwjInxczMzG/Y7m9OthJAqqpfmsJ6Rb2jwG6RvP/NgPvfpWofsKOW4SDeweqXVxa6U 7a4GRb4rRAjepdJiMO6ke0laFZya4SxInHZFs3oxImyAEDgl6aJdYP8+Na0LGNmt7Acf R0al1U3mtn27DMS7i5B55BLtJ5BRdDrSDuwT0AD3saa7pWDEbpClsNFZVKB/v0UYyDPD 7JWQ== X-Gm-Message-State: ALQs6tBlJQ3k3KMKds4xUiIZqHF15bePd+0gNDoxWVczZMkDJUa10SdM WbPePF0Y+Lm4N74K1rKMA3yjag== X-Google-Smtp-Source: AIpwx49u0DUN+4OIrkegs6fsV6JyvPmRfvUhlI9Rnce0JbtQ3xybrAD2KxF27xB08CcXqa0fMtcvQw== X-Received: by 2002:a24:ac61:: with SMTP id m33-v6mr3103828iti.116.1523576145310; Thu, 12 Apr 2018 16:35:45 -0700 (PDT) Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id n201-v6sm335762itn.7.2018.04.12.16.35.43 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 12 Apr 2018 16:35:44 -0700 (PDT) From: Noam Postavsky References: <87fu45loow.fsf@tcd.ie> <87bmetloaq.fsf@tcd.ie> Date: Thu, 12 Apr 2018 19:35:43 -0400 In-Reply-To: <87bmetloaq.fsf@tcd.ie> (Basil L. Contovounesios's message of "Sun, 08 Apr 2018 16:18:21 +0100") Message-ID: <87a7u8kng0.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) severity 31097 minor quit "Basil L. Contovounesios" writes: > * simple.el (kill-new, current-kill): Non-destructively reverse list > returned by interprogram-paste-function. (bug#31097) Seems reasonable. Perhaps add some comments in case someone tries to "optimize" it later? > If optional arg DO-NOT-MOVE is non-nil, then don't actually > move the yanking point; just return the Nth kill forward." > - > (let ((interprogram-paste (and (= n 0) > - (let ((ARGth-kill-element > + (let ((nth-kill-element > (nthcdr (mod (- n (length kill-ring-yank-pointer)) > (length kill-ring)) > kill-ring))) > (unless do-not-move > - (setq kill-ring-yank-pointer ARGth-kill-element) > + (setq kill-ring-yank-pointer nth-kill-element) > (when (and yank-pop-change-selection > (> n 0) > interprogram-cut-function) > - (funcall interprogram-cut-function (car ARGth-kill-element)))) > - (car ARGth-kill-element))))) > + (funcall interprogram-cut-function (car nth-kill-element)))) > + (car nth-kill-element))))) I don't think these hunks are needed. From unknown Mon Jun 23 07:49:42 2025 X-Loop: help-debbugs@gnu.org Subject: bug#31097: 27.0.50; Interprogram paste is destructively modified Resent-From: "Basil L. Contovounesios" Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 13 Apr 2018 11:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31097 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Noam Postavsky Cc: 31097@debbugs.gnu.org Received: via spool by 31097-submit@debbugs.gnu.org id=B31097.15236206089984 (code B ref 31097); Fri, 13 Apr 2018 11:57:02 +0000 Received: (at 31097) by debbugs.gnu.org; 13 Apr 2018 11:56:48 +0000 Received: from localhost ([127.0.0.1]:49155 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f6xJv-0002ay-U9 for submit@debbugs.gnu.org; Fri, 13 Apr 2018 07:56:48 -0400 Received: from mail-wr0-f171.google.com ([209.85.128.171]:35892) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f6xJu-0002ai-AN for 31097@debbugs.gnu.org; Fri, 13 Apr 2018 07:56:46 -0400 Received: by mail-wr0-f171.google.com with SMTP id q13so4605827wre.3 for <31097@debbugs.gnu.org>; Fri, 13 Apr 2018 04:56:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd-ie.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=jaeSVbxqvV/HYJWJytSSCPb8X1mGfPI3oCxy3lYnM44=; b=TgM/FjVImTKVZtuj0iPbOKicMMF9r0bcmEMUkZUYGn3LUFyag/r0xrZDaai8xnYhm5 j0P3zpAcfvEQArXlys40gjHwPQyWTzC1Ik3YWfvgHBaBWj5qJuBGWxJdZfEnXaNZnwvZ Edady16o2dn4jmsrFpqIac+SRoFb5B/W/GDSsgO+5QQ+e8mD3NSaHMtRfVf03bzikQaM FJSV1OqjVqQjD6c0dyKCcRCoibd6uZhz0sb72HHYp6N2Nv1TDj7Slx30LTU+d/FeM8KS ry6gM2mzG43lQ8dyJX3z0rGjKpnHHGseiS0eBQFLCk+QFBjir3AmIG8mbCAfZD+9AsLm 7rsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=jaeSVbxqvV/HYJWJytSSCPb8X1mGfPI3oCxy3lYnM44=; b=CuuPfFMR4n9A/JRQ7vaWUw55Fb+KVE9xFn6vQmPkRn/G7+MZro4qtfM9IlTnvwa6yV L0g9AqKcOZyYKdFaTZwRmP/FIoTsMEYQ1JKstVbLWkOhd+800Sr8JssuNJEqfHBZubtn aDgLxMlNCPTD+RpRSQKJvpANP4T/HbB8txZT+frIGW7coI3HrumN+qrkOoHnBD2lhjg5 1sFrlke/zlRenSk7VFdeiTqg7ZCmFCuF4ndDn8qWqOqubbRkgD6AxNscVGytzrz/1bud USnVObeH0VyOulyzWCc/UNzYZtqMHnzMtuU3BC1fZTIy0DNsMHYBpCL4WQIPj1m7x2lN ZwMQ== X-Gm-Message-State: ALQs6tCqUcQTr3SK5SQ1FTO3F3IgWHzFhsewh81bN0ZN9T2IZ9xDgs30 fxmYo3cGZEAtG0ZwNvqoFaPcpQ== X-Google-Smtp-Source: AIpwx49vvklszJgG6H65gFPM915BzOFxELefmN9hdTlIebUV+ipTvs8mW8+AMO3pfl6IlHDLmOwmCA== X-Received: by 10.223.193.5 with SMTP id r5mr3314557wre.274.1523620600255; Fri, 13 Apr 2018 04:56:40 -0700 (PDT) Received: from localhost ([86.43.118.33]) by smtp.gmail.com with ESMTPSA id h9sm1220192wmc.13.2018.04.13.04.56.39 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 13 Apr 2018 04:56:39 -0700 (PDT) From: "Basil L. Contovounesios" References: <87fu45loow.fsf@tcd.ie> <87bmetloaq.fsf@tcd.ie> <87a7u8kng0.fsf@gmail.com> Date: Fri, 13 Apr 2018 12:56:38 +0100 In-Reply-To: <87a7u8kng0.fsf@gmail.com> (Noam Postavsky's message of "Thu, 12 Apr 2018 19:35:43 -0400") Message-ID: <87woxbb9qh.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-Do-not-destructively-modify-interprogram-paste.patch Content-Description: Updated patch >From 5bde054f8c80f64c15e105e21aaddccff67d9e7a Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Fri, 13 Apr 2018 12:47:30 +0100 Subject: [PATCH] Do not destructively modify interprogram paste * simple.el (kill-new, current-kill): Non-destructively reverse list returned by interprogram-paste-function. (bug#31097) --- lisp/simple.el | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lisp/simple.el b/lisp/simple.el index efe5406bf7..19e41344d1 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -4369,7 +4369,8 @@ kill-new (funcall interprogram-paste-function)))) (when interprogram-paste (dolist (s (if (listp interprogram-paste) - (nreverse interprogram-paste) + ;; Use `reverse' to avoid modifying external data + (reverse interprogram-paste) (list interprogram-paste))) (unless (and kill-do-not-save-duplicates (equal-including-properties s (car kill-ring))) @@ -4448,7 +4449,8 @@ current-kill ;; selection, with identical text. (let ((interprogram-cut-function nil)) (if (listp interprogram-paste) - (mapc 'kill-new (nreverse interprogram-paste)) + ;; Use `reverse' to avoid modifying external data + (mapc #'kill-new (reverse interprogram-paste)) (kill-new interprogram-paste))) (car kill-ring)) (or kill-ring (error "Kill ring is empty")) -- 2.16.3 --=-=-= Content-Type: text/plain Noam Postavsky writes: > "Basil L. Contovounesios" writes: > >> * simple.el (kill-new, current-kill): Non-destructively reverse list >> returned by interprogram-paste-function. (bug#31097) > > Seems reasonable. Perhaps add some comments in case someone tries to > "optimize" it later? Are the comments in the updated patch attached clear enough? >> If optional arg DO-NOT-MOVE is non-nil, then don't actually >> move the yanking point; just return the Nth kill forward." >> - >> (let ((interprogram-paste (and (= n 0) > >> - (let ((ARGth-kill-element >> + (let ((nth-kill-element >> (nthcdr (mod (- n (length kill-ring-yank-pointer)) >> (length kill-ring)) >> kill-ring))) >> (unless do-not-move >> - (setq kill-ring-yank-pointer ARGth-kill-element) >> + (setq kill-ring-yank-pointer nth-kill-element) >> (when (and yank-pop-change-selection >> (> n 0) >> interprogram-cut-function) >> - (funcall interprogram-cut-function (car ARGth-kill-element)))) >> - (car ARGth-kill-element))))) >> + (funcall interprogram-cut-function (car nth-kill-element)))) >> + (car nth-kill-element))))) > > I don't think these hunks are needed. Fair enough, I just thought it was strange having an ARGth element without an ARG. Thanks, -- Basil --=-=-=-- From unknown Mon Jun 23 07:49:42 2025 X-Loop: help-debbugs@gnu.org Subject: bug#31097: 27.0.50; Interprogram paste is destructively modified Resent-From: Noam Postavsky Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 Apr 2018 06:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 31097 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: "Basil L. Contovounesios" Cc: 31097@debbugs.gnu.org Received: via spool by 31097-submit@debbugs.gnu.org id=B31097.15236862716210 (code B ref 31097); Sat, 14 Apr 2018 06:12:02 +0000 Received: (at 31097) by debbugs.gnu.org; 14 Apr 2018 06:11:11 +0000 Received: from localhost ([127.0.0.1]:51273 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f7EP0-0001c0-Ri for submit@debbugs.gnu.org; Sat, 14 Apr 2018 02:11:11 -0400 Received: from mail-io0-f171.google.com ([209.85.223.171]:42926) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f7EOz-0001bi-1G; Sat, 14 Apr 2018 02:11:09 -0400 Received: by mail-io0-f171.google.com with SMTP id d5so12546542iob.9; Fri, 13 Apr 2018 23:11:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=AS1hmmZDpztCMRTvvBmBIB6IfdjRo2KHI2BetyocAOw=; b=hSnE3EnmUgUS3zIEOgX4Ja+0+MGbN+PRlQIzMU5RLg7gMVcVP+jjOEejh1I14axw+d 6Pokru7Xdf6vXWS53FDij5w9aPkNxMLfUiz3HDoEaHLn1kalsy1zzbyYNJ+w6N+RYrwx nv7Nx0gCRz5eW/kahbIs4KTYbpOn2ODKiCvnk6OWwYAPN8YEWSY/CJmQk8eK/3+x60/y pqleIBsY/a7uU35I1qaYP2eGO8OkL9poGJuzLGEV/YmhbsvmfaEk09TPdfGMEI7zTMVV 42GNBe8dYmLaRpWfmq6MQBQIp8OFmYImpruXvvm1ESuYIA1ktXOI+HP5vw+yHwQtuUoa sQlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=AS1hmmZDpztCMRTvvBmBIB6IfdjRo2KHI2BetyocAOw=; b=YeL7X3uSAKjBtvVGEmv2YimyxS/WmGbEJJWJutavmN0JEelDxWG/L8jQZhP5ycIDvn 0QvZlNqlY7j9qUPpR/4eLR4p5YqCitfgEQ44MT52KXythge9F6qyrK0nar2EYrQgRGVh GW3kpOdgfQ+haBnUVA0Wm02PfmOqBKeMC9yWVIlfPQWLnXpdNHFJF8lkyjhdm/KLWj6N PLPZLx0RZO147QtRB5vPTBZZxltBK7+n/vM3++JcQM6VwLvISfnEOL0JajZJGt1kZ10f fz0q9TCUghumca4EyG6YC5NoJZtA2CmE2ClkcWQ0hB+0isg0MkRpXrlIpVAer1vgcmI1 5ccg== X-Gm-Message-State: ALQs6tAN/1nFY6+rQOpq2CRJV+RVBJpw4U7FL6WXZgB2vaTKJJguFmNB sdp+bWud8H4xrrF5oqXY72jT+A== X-Google-Smtp-Source: AIpwx48D1YiFaerDJCKxAj/AuZsSEtDI0nLV38IcpTUccJzXQBDnBZo5qkf43HDgETNtuYSI4Gu+LQ== X-Received: by 10.107.223.67 with SMTP id d3mr16308071iop.174.1523686263433; Fri, 13 Apr 2018 23:11:03 -0700 (PDT) Received: from zebian (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.googlemail.com with ESMTPSA id 99sm3656383iok.74.2018.04.13.23.11.02 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 13 Apr 2018 23:11:02 -0700 (PDT) From: Noam Postavsky References: <87fu45loow.fsf@tcd.ie> <87bmetloaq.fsf@tcd.ie> <87a7u8kng0.fsf@gmail.com> <87woxbb9qh.fsf@tcd.ie> Date: Sat, 14 Apr 2018 02:11:01 -0400 In-Reply-To: <87woxbb9qh.fsf@tcd.ie> (Basil L. Contovounesios's message of "Fri, 13 Apr 2018 12:56:38 +0100") Message-ID: <87po32jp1m.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 31097 fixed close 31097 27.1 quit "Basil L. Contovounesios" writes: >> Seems reasonable. Perhaps add some comments in case someone tries to >> "optimize" it later? > > Are the comments in the updated patch attached clear enough? Yeah, seems fine. I added periods at the end and pushed to master [1: 2825d84945]. > Fair enough, I just thought it was strange having an ARGth element > without an ARG. I don't disagree exactly, but it's kind of distracting when more than half your patch is about an unrelated side-fix like that. [1: 2825d84945]: 2018-04-14 01:20:03 -0400 Do not destructively modify interprogram paste https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=2825d849451be45ea738e2d2b2567c834fe5a0fb>