bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#17647: 24.4.50; accept-process-output with process nil can miss outp


From: Jorgen Schaefer
Subject: bug#17647: 24.4.50; accept-process-output with process nil can miss output
Date: Tue, 3 Jun 2014 21:46:10 +0200

On Mon, 02 Jun 2014 16:21:56 -0700
Paul Eggert <eggert@cs.ucla.edu> wrote:

> Are you using gnutls?

Not that I know. ldd `which emacs` does not list any gnutls links.

> What does M-x list-processes say, in a buggy Emacs?

As this blocks input, I can't actually run M-x list-processes while
reproducing the problem. Running list-processes right after
set-process-query-on-exit and before accept-process-output in my
example says:

test            run      *temp*-447149  /dev/pts/5   bash -c echo foo ; sleep 5



I should add that process filters are called at the start of
`accept-process-output', but it still hangs. This is different from
what I thought was the case initially, but that was a debugging mistake
due to output not being updated until after `accept-process-output'
returns.

That is, with time stamps:

(with-temp-buffer
  (let ((proc (start-process "test" (current-buffer) "bash" "-c"
                             "echo foo ; sleep 5")))
    (set-process-query-on-exit-flag proc nil)
    (set-process-filter proc (lambda (proc str)
                               (message "Filter: %s" (float-time))))
    (message "Before: %s" (float-time))
    (accept-process-output nil 2) 
    (message "After.: %s" (float-time))))

Before: 1401824504.1458359
Filter: 1401824504.148198
After.: 1401824506.146296

Regards,
Jorgen





reply via email to

[Prev in Thread] Current Thread [Next in Thread]