emacs-devel
[Top][All Lists]
Advanced

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

Re: wait_reading_process_ouput hangs in certain cases (w/ patches)


From: Eli Zaretskii
Subject: Re: wait_reading_process_ouput hangs in certain cases (w/ patches)
Date: Tue, 14 Nov 2017 18:03:33 +0200

> Cc: address@hidden
> From: Paul Eggert <address@hidden>
> Date: Tue, 14 Nov 2017 07:24:31 -0800
> 
> On 11/14/2017 06:58 AM, Matthias Dahl wrote:
> > If during an active
> > call to wait_... all recursive calls happen to read exactly 2**32 (or
> > whatever bit depths EMACS_UINT is) bytes back, then we will miss it
> > completely and stall.
> 
> First, this means that the companion idea of subtracting the two 
> counters to yield a byte count is also buggy because the byte count will 
> be wrong for this call. This would be a bug that could happen whenever a 
> successful recursive call occurs, which apparently is quite common. So 
> if we stick with the current approach, we definitely should be dropping 
> the requirement that Eli was thinking of, which says that a positive 
> number returned by wait_reading_process_output indicates the number of 
> bytes read for this call.

No, I'm not dropping that requirement.

> Second, I don't leaving a known bug in the code, even if the bug is 
> unlikely. Too often, these extreme cases occur anyway (e.g., due to a 
> network attack). I'd prefer a slightly-more-complicated solution where 
> the bug cannot occur. It can't be that hard to fix.

Please describe such a solution, or show the code.



reply via email to

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