[#63592] [ruby-trunk - Bug #10009] IO operation is 10x slower in multi-thread environment — normalperson@...
Issue #10009 has been updated by Eric Wong.
3 messages
2014/07/08
[#63682] [ruby-trunk - Feature #10030] [PATCH] reduce rb_iseq_struct to 296 bytes — ko1@...
Issue #10030 has been updated by Koichi Sasada.
3 messages
2014/07/13
[#63703] [ruby-trunk - Feature #10030] [PATCH] reduce rb_iseq_struct to 296 bytes — ko1@...
Issue #10030 has been updated by Koichi Sasada.
3 messages
2014/07/14
[#63743] [ruby-trunk - Bug #10037] Since r46798 on Solaris, "[BUG] rb_vm_get_cref: unreachable" during make — ngotogenome@...
Issue #10037 has been updated by Naohisa Goto.
3 messages
2014/07/15
[#64136] Ruby 2.1.2 (and 2.1.1 and probably others) assumes a libffi with 3 version numbers in extconf.rb — "Jeffrey 'jf' Lim" <jfs.world@...>
As per subject.
4 messages
2014/07/31
[#64138] Re: Ruby 2.1.2 (and 2.1.1 and probably others) assumes a libffi with 3 version numbers in extconf.rb
— "Jeffrey 'jf' Lim" <jfs.world@...>
2014/07/31
On Thu, Jul 31, 2014 at 6:03 PM, Jeffrey 'jf' Lim <jfs.world@gmail.com>
[ruby-core:63569] [ruby-trunk - Bug #8625] IO#read(len, buf) shortens buf even if data is not read actually
From:
usa@...
Date:
2014-07-07 03:43:36 UTC
List:
ruby-core #63569
Issue #8625 has been updated by Usaku NAKAMURA.
backported into `ruby_2_0_0` at r46738.
----------------------------------------
Bug #8625: IO#read(len, buf) shortens buf even if data is not read actually
https://bugs.ruby-lang.org/issues/8625#change-47621
* Author: Nobuhiro IMAI
* Status: Closed
* Priority: Normal
* Assignee: Nobuyoshi Nakada
* Category: core
* Target version:
* ruby -v: ruby 2.1.0dev (2013-07-11 trunk 41923) [x86_64-linux]
* Backport: 2.0.0: REQUIRED, 2.1: DONE
----------------------------------------
By r34580, `IO#read(len, buf)` does not expand _buf_ until data is read actually,
but it still shortens if the original _buf_ size is greater than _len_.
Is this an intended behavior?
~~~ruby
def m(s)
IO.pipe do |r, w|
t = Thread.new{r.read(2, s)}
Thread.pass until t.stop?
t.kill
t.value
end
end
(1..3).each do |len|
s = "x" * len
s # => "x", "xx", "xxx"
m(s)
s # => "x", "xx", "xx"
end
~~~
--
https://bugs.ruby-lang.org/