Subject: Re: bug#49682: 27.2.50; accept-process-output within accept-process-output hangs emacs

From: Dmitry Gutov <[email-masked]>
Date: Mon, 26 Jul 2021 23:22:57 +0300

On 26.07.2021 22:54, Rajeev N via Bug reports for GNU Emacs, the Swiss 
army knife of text editors wrote:
> For me the following also hangs emacs.  The problem seems to me that (accept-process-output stream 0.05) in network-stream-get-response does not return even though it has a timeout of .05.
> 
> (let ()
>    (run-with-timer 0 nil #'url-retrieve"https://www.gnu.org/"  #'ignore)
>    (make-process :name "echo" :command '("echo")
> 		:sentinel (lambda (_p _e)
> 			    (with-current-buffer (generate-new-buffer " *debug")
> 			      (run-with-timer 0 nil #'open-network-stream
> 					      "testing" (current-buffer) "smtp.gmail.com" 587
> 					      :type 'starttls
> 					      :return-list t
> 					      :warn-unless-encrypted t
> 					      :capability-command "EHLOwww.gnu.org\r\n"
> 					      :end-of-command "^[0-9]+ .*\r\n"
> 					      :success "^2.*\n"
> 					      :always-query-capabilities t
> 					      :starttls-function
> 					      (lambda (capabilities)
> 						(and (string-match "[ -]STARTTLS" capabilities)
> 						     "STARTTLS\r\n"))
> 					      :client-certificate t
> 					      :use-starttls-if-possible t)))))

Hmm, that doesn't freeze for me.

Even though if I follow 'C-x C-e' with 'C-p' right away, it will wait 
for like 0.5s before moving the cursor to the previous line.

I have tried it in a number of versions of Emacs, so far no luck.

Any chance you're not starting with 'emacs -Q' and your personal config 
affects this?