Actions
Bug #19543
closedResizing IO::Buffer to zero bytes fails
Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 3.3.0dev (2023-03-20T04:02:21Z master 7f696b8859) [x86_64-linux]
Backport:
Description
irb(main):001:0> IO::Buffer.new(1).resize(0)
/home/kasumi/.local/src/github.com/ruby/ruby/-e:1: warning: IO::Buffer is experimental and both the Ruby and C interface may change in the future!
/home/kasumi/.local/src/github.com/ruby/ruby/-e:1: [BUG] rb_sys_fail(rb_io_buffer_resize:realloc) - errno == 0
ruby 3.3.0dev (2023-03-20T04:02:21Z master 7f696b8859) [x86_64-linux]
# full trace is attached to this ticket
IO::Buffer#resize(0)
will result in calling realloc(data->base, size)
with size = 0 in rb_io_buffer_resize. Zero-sized realloc
is deprecated in C (and will be UB in C23).
Files
Updated by hanazuki (Kasumi Hanazuki) almost 2 years ago
Updated by ioquatix (Samuel Williams) almost 2 years ago
- Status changed from Open to Closed
- Backport changed from 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN to 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: REQUIRED
Thanks for your PR, it was great. I have merged it with minor extensions to the tests.
https://github.com/ruby/ruby/commit/09295ea796900fb7b05d29e93364090e21598566
Updated by ioquatix (Samuel Williams) almost 2 years ago
- Backport changed from 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: REQUIRED to 2.7: UNKNOWN, 3.0: REQUIRED, 3.1: REQUIRED, 3.2: REQUIRED
Updated by ioquatix (Samuel Williams) almost 2 years ago
- Backport changed from 2.7: UNKNOWN, 3.0: REQUIRED, 3.1: REQUIRED, 3.2: REQUIRED to 3.1: REQUIRED, 3.2: REQUIRED
Update backport required for 3.1 and 3.2 if possible.
Updated by nagachika (Tomoyuki Chikanaga) over 1 year ago
- Backport changed from 3.1: REQUIRED, 3.2: REQUIRED to 3.1: REQUIRED, 3.2: DONE
ruby_3_2 c13757ed9ae02a2d03aea91bb852397aa920f3fd merged revision(s) 09295ea796900fb7b05d29e93364090e21598566.
Updated by usa (Usaku NAKAMURA) over 1 year ago
- Backport changed from 3.1: REQUIRED, 3.2: DONE to 3.1: DONE, 3.2: DONE
ruby_3_1 e7c94d9d1d2bdbf396c489d1dc653c771f59bb92 merged revision(s) 09295ea796900fb7b05d29e93364090e21598566.
Actions
Like0
Like0Like0Like0Like0Like0Like0