Subject: bug#35581: 25.3; freeze on `kill-new' x2: xclip + emacs server + 'emacsclient -nw'

From: Stefan Kangas <[email-masked]>
Date: Tue, 25 Aug 2020 17:57:13 -0700

Mat <[email-masked]> writes:

> 1. run X gui emacs
> 2. install ~xclip~ package
> 3. ~M-x xclip-mode~
> 4. ~M-x server-start~
> 5. ~(kill-new "adaf")~
> 6. run ~emacsclient -nw~ from terminal.
> 7. ~(kill-new "sss")~
>
> Emacs freezes.
>
> Configuration used:
> (setq save-interprogram-paste-before-kill t)
> (require 'package)
> (let* ((no-ssl (and (memq system-type '(windows-nt ms-dos))   ;; add melpa repo: either through ssl or non-ssl.
>                     (not (gnutls-available-p))))
>        (url (concat (if no-ssl "http" "https") "://melpa.org/packages/")))
>   (add-to-list 'package-archives (cons "melpa" url) t))
> (package-initialize)
> (custom-set-variables
>  ;; custom-set-variables was added by Custom.
>  ;; If you edit it by hand, you could mess it up, so be careful.
>  ;; Your init file should contain only one such instance.
>  ;; If there is more than one, they won't work right.
>  '(package-selected-packages (quote (xclip))))
> (custom-set-faces
>  ;; custom-set-faces was added by Custom.
>  ;; If you edit it by hand, you could mess it up, so be careful.
>  ;; Your init file should contain only one such instance.
>  ;; If there is more than one, they won't work right.
>  )
>
> `save-interprogram-paste-before-kill' makes extra action: current value X clipboard is stored to kill-ring, before new value is put there.
> I use xclip commandline tool to talk to X clipboard from emacs.
>
> In GNU Emacs 25.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
>  of 2018-04-28 built on wla-64
> Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
> System Description:    Ubuntu 18.04.2 LTS

I see you are using an old version of Emacs 25.3.1.  Can you reproduce
this on a recent version of Emacs, such as the recently released version
27.1?  If yes, could you please provide a step-by-step recipe for
reproducing it, starting from "emacs -Q"?

Thanks in advance.

Best regards,
Stefan Kangas