[ruby-core:113012] [Ruby master Bug#19546] IO::Buffer is incorrectly invoking fiber scheduler interface.
From:
"ioquatix (Samuel Williams) via ruby-core" <ruby-core@...>
Date:
2023-03-25 05:37:29 UTC
List:
ruby-core #113012
Issue #19546 has been updated by ioquatix (Samuel Williams). Backport changed from 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN to 2.7: DONTNEED, 3.0: DONTNEED, 3.1: DONTNEED, 3.2: REQUIRED Fixed by <https://github.com/ruby/ruby/commit/466aa8010fb49f9ec6c78ea1de4e8ca0965f4fdf>. ---------------------------------------- Bug #19546: IO::Buffer is incorrectly invoking fiber scheduler interface. https://bugs.ruby-lang.org/issues/19546#change-102546 * Author: ioquatix (Samuel Williams) * Status: Open * Priority: Normal * Assignee: ioquatix (Samuel Williams) * Backport: 2.7: DONTNEED, 3.0: DONTNEED, 3.1: DONTNEED, 3.2: REQUIRED ---------------------------------------- (Original bug report: <https://github.com/socketry/async/issues/224>) The `IO::Buffer` implementation incorrectly calls `rb_fiber_scheduler_io_write` with the `size_t`s converted to `VALUE`s: https://github.com/ruby/ruby/blob/400ccb16eefe4e21c4e3eacab4fd0f208fc5e151/io_buffer.c#L2607 But that function expects `size_t`s: https://github.com/ruby/ruby/blob/400ccb16eefe4e21c4e3eacab4fd0f208fc5e151/scheduler.c#L542 (And probably the same for the other scheduler methods + data types.) Fixed by <https://github.com/ruby/ruby/pull/7593>. -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/