Actions
Bug #8669
closedoutbuf can be "temporarily" locked forever in IO#read
Description
Following code make outbuf "temporarily" locked forever.
It is needed to ensure rb_str_unlocktmp().
str = ""
t = Thread.new(str) do |str|
r, = IO.pipe
r.read(nil, str)
end
sleep 1
t.raise
sleep 1
str.clear #=> can't modify string; temporarily locked (RuntimeError)
I have attached two patches.
One fixes io_fread(), another does io_getpartial() and rb_io_sysread().
May I commit these changes?
Files
Actions
Like0
Like0Like0Like0Like0Like0Like0