[ruby-core:109902] [Ruby master Bug#18995] IO#set_encoding sometimes set an IO's internal encoding to the default external encoding
From:
"javanthropus (Jeremy Bopp)" <noreply@...>
Date:
2022-09-15 13:28:50 UTC
List:
ruby-core #109902
SXNzdWUgIzE4OTk1IGhhcyBiZWVuIHVwZGF0ZWQgYnkgamF2YW50aHJvcHVzIChKZXJlbXkgQm9w cCkuCgoKQ2FuIGFueW9uZSBjb25maXJtIHRoYXQgdGhpcyBpcyBhIGJ1ZyBhbmQgbm90IGEgbWlz dW5kZXJzdGFuZGluZz8gIEl0IGxvb2tzIGxpa2UgdGhlIGNoYW5nZXMgdG8gZml4IHRoaXMgd2ls bCByZXF1aXJlIGEgZmFpciBiaXQgb2YgcmVmYWN0b3JpbmcsIGFuZCB0aGVyZSBkb24ndCB5ZXQg YXBwZWFyIHRvIGJlIGFueSB0ZXN0cyBhcm91bmQgdGhlIHZhcmlvdXMgY2FzZXMgZm9yIGFyZ3Vt ZW50cyB0byBgSU8jc2V0X2VuY29kaW5nYCB3aGVyZSBgSU8jaW50ZXJuYWxfZW5jb2RpbmdgIGFu ZCBgSU8jZXh0ZXJuYWxfZW5jb2RpbmdgIGFyZSBjaGVja2VkLiAgSSBmb3VuZCB0ZXN0cyBhcm91 bmQgdmFyaW91cyB3YXlzIG9mIG9wZW5pbmcgZmlsZXMgYW5kIHBpcGVzIHdpdGggZW5jb2Rpbmcg YXJndW1lbnRzIHdoaWNoIGRvIGNoZWNrIHRoZSByZXN1bHRpbmcgaW50ZXJuYWwgYW5kIGV4dGVy bmFsIGVuY29kaW5ncyBvZiB0aGUgSU8gb2JqZWN0LCBidXQgbm9uZSBvZiB0aG9zZSB0ZXN0IHRo ZXNlIGNvcm5lciBjYXNlcy4KCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KQnVnICMxODk5NTogSU8jc2V0X2VuY29kaW5nIHNvbWV0aW1lcyBzZXQgYW4gSU8ncyBpbnRl cm5hbCBlbmNvZGluZyB0byB0aGUgZGVmYXVsdCBleHRlcm5hbCBlbmNvZGluZwpodHRwczovL2J1 Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMTg5OTUjY2hhbmdlLTk5MTQ1CgoqIEF1dGhvcjogamF2 YW50aHJvcHVzIChKZXJlbXkgQm9wcCkKKiBTdGF0dXM6IE9wZW4KKiBQcmlvcml0eTogTm9ybWFs CiogcnVieSAtdjogcnVieSAzLjEuMnAyMCAoMjAyMi0wNC0xMiByZXZpc2lvbiA0NDkxYmI3NDBh KSBbeDg2XzY0LWxpbnV4XQoqIEJhY2twb3J0OiAyLjc6IFVOS05PV04sIDMuMDogVU5LTk9XTiwg My4xOiBVTktOT1dOCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KVGhp cyBzY3JpcHQgZGVtb25zdHJhdGVzIHRoZSBiZWhhdmlvcjoKCmBgYHJ1YnkKZGVmIHNob3coaW8p CiAgcHJpbnRmKAogICAgImV4dGVybmFsIGVuY29kaW5nOiAlLTI1cCAgaW50ZXJuYWwgZW5jb2Rp bmc6ICUtMjVwXG4iLAogICAgaW8uZXh0ZXJuYWxfZW5jb2RpbmcsCiAgICBpby5pbnRlcm5hbF9l bmNvZGluZwogICkKZW5kCgpFbmNvZGluZy5kZWZhdWx0X2V4dGVybmFsID0gJ2lzby04ODU5LTEn CkVuY29kaW5nLmRlZmF1bHRfaW50ZXJuYWwgPSAnaXNvLTg4NTktMicKCkZpbGUub3BlbignL2Rl di9udWxsJykgZG8gfGZ8CiAgZi5zZXRfZW5jb2RpbmcoJ3V0Zi04JywgbmlsKQogIHNob3coZikg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZi5pbnRlcm5hbF9lbmNvZGluZyBpcyBpc28t ODg1OS0yLCBhcyBleHBlY3RlZAoKICBmLnNldF9lbmNvZGluZygndXRmLTgnLCAnaW52YWxpZCcp CiAgc2hvdyhmKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBmLmludGVybmFsX2VuY29k aW5nIGlzIG5vdyBpc28tODg1OS0xIQoKICBFbmNvZGluZy5kZWZhdWx0X2V4dGVybmFsID0gJ2lz by04ODU5LTMnCiAgRW5jb2RpbmcuZGVmYXVsdF9pbnRlcm5hbCA9ICdpc28tODg1OS00JwogIHNo b3coZikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZi5pbnRlcm5hbF9lbmNvZGluZyBp cyBub3cgaXNvLTg4NTktMyEKZW5kCmBgYAoKSW4gdGhlIDFzdCBjYXNlLCB3ZSBzZWUgdGhhdCB0 aGUgSU8ncyBpbnRlcm5hbCBlbmNvZGluZyBpcyBzZXQgdG8gdGhlIGN1cnJlbnQgc2V0dGluZyBv ZiBFbmNvZGluZy5kZWZhdWx0X2ludGVybmFsLiBJbiB0aGUgMm5kIGNhc2UsIHRoZSBJTydzIGlu dGVybmFsIGVuY29kaW5nIGlzIHNldCB0byBFbmNvZGluZy5kZWZhdWx0X2V4dGVybmFsIGluc3Rl YWQuIFRoZSAzcmQgY2FzZSBpcyBtb3JlIGludGVyZXN0aW5nIGJlY2F1c2UgaXQgc2hvd3MgdGhh dCB0aGUgSU8ncyBpbnRlcm5hbCBlbmNvZGluZyBpcyBhY3R1YWxseSBmb2xsb3dpbmcgdGhlIGN1 cnJlbnQgc2V0dGluZyBvZiBFbmNvZGluZy5kZWZhdWx0X2V4dGVybmFsLiBJdCBkaWRuJ3QganVz dCBjb3B5IGl0IHdoZW4gI3NldF9lbmNvZGluZyB3YXMgY2FsbGVkLiBJdCBjaGFuZ2VzIHdoZW5l dmVyIEVuY29kaW5nLmRlZmF1bHRfZXh0ZXJuYWwgY2hhbmdlcy4KCldoYXQgc2hvdWxkIHRoZSBj b3JyZWN0IGJlaGF2aW9yIGJlPwoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCgpV bnN1YnNjcmliZTogPG1haWx0bzpydWJ5LWNvcmUtcmVxdWVzdEBydWJ5LWxhbmcub3JnP3N1Ympl Y3Q9dW5zdWJzY3JpYmU+CjxodHRwOi8vbGlzdHMucnVieS1sYW5nLm9yZy9jZ2ktYmluL21haWxt YW4vb3B0aW9ucy9ydWJ5LWNvcmU+Cg==