Re: [Bug-readline] [PATCH] readline/histfile.c: Check and retry write() operation in history_truncate_file()

Chen Gang
2014-06-20T08:58:01Z

On 06/19/2014 09:31 AM, Chen Gang wrote:
>
>
> On 06/19/2014 04:33 AM, Chet Ramey wrote:
>> On 6/10/14, 10:35 PM, Chen Gang wrote:
>>> For regular file, write() operation may also fail, so check it too. If
>>> write() return 0, can simply wait and try again, it should not suspend
>>> infinitely if environments have no critical issues.
>>
>> Readline-6.3 checks the return value from write() and returns a non-zero
>> value to the history_truncate_file caller. I really don't think that
>> waiting forever if write continues to return 0 is a great idea; an error
>> return is enough to let the caller deal with it.
>>

Oh, sorry, after think of again, for me, we have to waiting forever if
write() continues to return 0.

When this case happens, the file is already truncated, and the left data
which is writing to file will be free after return from
history_truncate_file().

If return an error code in this case, the caller can not deal with it --
the log data which should be remained, have been lost, can not get them
back again.

>
> That sounds fine to me, and I will send patch v2 for it. And excuse me,
> I have to do some other things today, so I shall try to send it within 2
> days (within 2014-06-21) -- if it is too late, please help send it.
>

Thanks.
--
Chen Gang

Open, share, and attitude like air, water, and life which God blessed