[ruby-core:120934] [Ruby master Bug#20919] IO#seek and IO#pos= do not clear the character buffer in some cases while transcoding
From:
mjrzasa via ruby-core <ruby-core@...>
Date:
2025-02-10 21:24:09 UTC
List:
ruby-core #120934
SXNzdWUgIzIwOTE5IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbWpyemFzYSAoTWFjaWVrIFJ6xIVzYSku DQoNCg0KSSBiZWxpZXZlIHRoZSBmaXggaXMgcmVhZHkgZm9yIHJldmlldyBodHRwczovL2dpdGh1 Yi5jb20vcnVieS9ydWJ5L3B1bGwvMTI3MTQNClNvbWUgQ0kgam9icyB3ZXJlIGZhaWxpbmcgKFdl YkFzc2VtYmx5L0N5Z3dpbikgYnV0IHRoZSBmYWlsdXJlcyBzZWVtIG5vdCB0byBiZSByZWxhdGVk IHRvIG15IGNoYW5nZXMgYW5kIHRoZXkncmUgaW5jb25zaXN0ZW50IChhZnRlciByZWJhc2luZyBD eWd3aW4gcGFzc2VkIGFuZCBXZWJBc20gZmFpbGVkKS4NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0KQnVnICMyMDkxOTogSU8jc2VlayBhbmQgSU8jcG9zPSBkbyBu b3QgY2xlYXIgdGhlIGNoYXJhY3RlciBidWZmZXIgaW4gc29tZSBjYXNlcyB3aGlsZSB0cmFuc2Nv ZGluZw0KaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvaXNzdWVzLzIwOTE5I2NoYW5nZS0xMTE4 MjUNCg0KKiBBdXRob3I6IGphdmFudGhyb3B1cyAoSmVyZW15IEJvcHApDQoqIFN0YXR1czogT3Bl bg0KKiBydWJ5IC12OiBydWJ5IDMuNC4wZGV2ICgyMDI0LTExLTI4VDEyOjM4OjE2WiBtYXN0ZXIg M2FmMWEwNDc0MSkgK1BSSVNNIFt4ODZfNjQtbGludXhdDQoqIEJhY2twb3J0OiAzLjE6IFVOS05P V04sIDMuMjogVU5LTk9XTiwgMy4zOiBVTktOT1dODQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tDQpXaGVuIHRyYW5zY29kaW5nIGNoYXJhY3RlcnMsIGBJTyNzZWVrYCBh bmQgYElPI3Bvcz1gIG9ubHkgY2xlYXIgdGhlIGludGVybmFsIGNoYXJhY3RlciBidWZmZXIgaWYg YElPI2dldGNgIGlzIGNhbGxlZCBmaXJzdDoNCg0KYGBgcnVieQ0KcmVxdWlyZSAndGVtcGZpbGUn DQoNClRlbXBmaWxlLm9wZW4oZW5jb2Rpbmc6ICd1dGYtODp1dGYtMTZsZScpIGRvIHxmfA0KICBm LndyaXRlKCcwMTIzNDU2Nzg5JykNCiAgZi5yZXdpbmQNCg0KICBmLnVuZ2V0YygnYScuZW5jb2Rl KCd1dGYtMTZsZScpKQ0KDQogICMgQ2hhcmFjdGVyIGJ1ZmZlciBXSUxMIE5PVCBiZSBjbGVhcmVk DQogIGYuc2VlaygyLCA6U0VUKQ0KDQogIGYuZ2V0YyAgICAgICAjID0+ICdhJy5lbmNvZGUoJ3V0 Zi0xNmxlJyk7IHNob3VsZCBiZSAnMicuZW5jb2RlKCd1dGYtMTZsZScpDQplbmQNCg0KVGVtcGZp bGUub3BlbihlbmNvZGluZzogJ3V0Zi04OnV0Zi0xNmxlJykgZG8gfGZ8DQogIGYud3JpdGUoJzAx MjM0NTY3ODknKQ0KICBmLnJld2luZA0KDQogIGYudW5nZXRjKCdhJy5lbmNvZGUoJ3V0Zi0xNmxl JykpDQoNCiAgIyBDaGFyYWN0ZXIgYnVmZmVyIFdJTEwgTk9UIGJlIGNsZWFyZWQNCiAgZi5wb3Mg PSAyDQoNCiAgZi5nZXRjICAgICAgICMgPT4gJ2EnLmVuY29kZSgndXRmLTE2bGUnKTsgc2hvdWxk IGJlICcyJy5lbmNvZGUoJ3V0Zi0xNmxlJykNCmVuZA0KDQpUZW1wZmlsZS5vcGVuKGVuY29kaW5n OiAndXRmLTg6dXRmLTE2bGUnKSBkbyB8ZnwNCiAgZi53cml0ZSgnMDEyMzQ1Njc4OScpDQogIGYu cmV3aW5kDQoNCiAgIyBBZGRlZCBhIGNhbGwgdG8gI2dldGMgaGVyZQ0KICBmLmdldGMNCg0KICBm LnVuZ2V0YygnYScuZW5jb2RlKCd1dGYtMTZsZScpKQ0KDQogICMgQ2hhcmFjdGVyIGJ1ZmZlciBX SUxMIGJlIGNsZWFyZWQgbm93DQogIGYuc2VlaygyLCA6U0VUKQ0KICAjIFNhbWUgYmVoYXZpb3Ig Zm9yICNwb3M9DQogICNmLnBvcyA9IDINCg0KICBmLmdldGMgICAgICAgIyA9PiAnMicuZW5jb2Rl KCd1dGYtMTZsZScpDQplbmQNCmBgYA0KDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5n Lm9yZy8NCiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiBy dWJ5LWNvcmUgbWFpbGluZyBsaXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcub3JnCiBUbyB1 bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5ydWJ5LWxhbmcu b3JnCiBydWJ5LWNvcmUgaW5mbyAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcvbWFpbG1hbjMv bGlzdHMvcnVieS1jb3JlLm1sLnJ1YnktbGFuZy5vcmcv