[3.13] gh-117807: Handle invalid UTF-8 in mimetypes map files (GH-151216) (GH-155185)
serhiy-storchaka <[email protected]> Tue, 04 Aug 2026 13:12:13 -0400 (EDT)
| Newsgroups | gmane.comp.python.cvs |
|---|---|
| Message-ID | <[email protected]> |
aHR0cHM6Ly9naXRodWIuY29tL3B5dGhvbi9jcHl0aG9uL2NvbW1pdC9kMjBlMWNjYjY2MGRhYWNm NDdkMWRjMjlmOGI1NjdlZTdlZDE4MWNlDQpjb21taXQ6IGQyMGUxY2NiNjYwZGFhY2Y0N2QxZGMy OWY4YjU2N2VlN2VkMTgxY2UNCmJyYW5jaDogMy4xMw0KYXV0aG9yOiBNaXNzIElzbGluZ3RvbiAo Ym90KSA8MzE0ODg5MDkrbWlzcy1pc2xpbmd0b25AdXNlcnMubm9yZXBseS5naXRodWIuY29tPg0K Y29tbWl0dGVyOiBzZXJoaXktc3RvcmNoYWthIDxzdG9yY2hha2FAZ21haWwuY29tPg0KZGF0ZTog MjAyNi0wOC0wNFQxNzoxMjowMVoNCnN1bW1hcnk6DQoNClszLjEzXSBnaC0xMTc4MDc6IEhhbmRs ZSBpbnZhbGlkIFVURi04IGluIG1pbWV0eXBlcyBtYXAgZmlsZXMgKEdILTE1MTIxNikgKEdILTE1 NTE4NSkNCg0KKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgMzBhYzIzZTNlNDEzYzJkMzhiODA2 OTFiMWM4MGUzY2Q3NGEyMjYzOSkNCg0KQ28tYXV0aG9yZWQtYnk6IEhhcmpvdGggS2hhcmEgPGhh cmpvdGgua2hhcmFAZ21haWwuY29tPg0KDQpmaWxlczoNCkEgTWlzYy9ORVdTLmQvbmV4dC9MaWJy YXJ5LzIwMjYtMDYtMTAtMDAtMDAtMDEuZ2gtaXNzdWUtMTE3ODA3LkN4MTE3OC5yc3QNCk0gTGli L21pbWV0eXBlcy5weQ0KTSBMaWIvdGVzdC90ZXN0X21pbWV0eXBlcy5weQ0KDQpkaWZmIC0tZ2l0 IGEvTGliL21pbWV0eXBlcy5weSBiL0xpYi9taW1ldHlwZXMucHkNCmluZGV4IDJhZjdjNGI3Yjgw ODIyLi4zZmE5Y2NmNTIxYjEyZCAxMDA2NDQNCi0tLSBhL0xpYi9taW1ldHlwZXMucHkNCisrKyBi L0xpYi9taW1ldHlwZXMucHkNCkBAIC0yMjYsNyArMjI2LDcgQEAgZGVmIHJlYWQoc2VsZiwgZmls ZW5hbWUsIHN0cmljdD1UcnVlKToNCiAgICAgICAgIGxpc3Qgb2Ygc3RhbmRhcmQgdHlwZXMsIGVs c2UgdG8gdGhlIGxpc3Qgb2Ygbm9uLXN0YW5kYXJkDQogICAgICAgICB0eXBlcy4NCiAgICAgICAg ICIiIg0KLSAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBm cDoNCisgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgZW5jb2Rpbmc9J3V0Zi04JywgZXJyb3Jz PSdzdXJyb2dhdGVlc2NhcGUnKSBhcyBmcDoNCiAgICAgICAgICAgICBzZWxmLnJlYWRmcChmcCwg c3RyaWN0KQ0KIA0KICAgICBkZWYgcmVhZGZwKHNlbGYsIGZwLCBzdHJpY3Q9VHJ1ZSk6DQpAQCAt NDE0LDcgKzQxNCw3IEBAIGRlZiBpbml0KGZpbGVzPU5vbmUpOg0KIA0KIGRlZiByZWFkX21pbWVf dHlwZXMoZmlsZSk6DQogICAgIHRyeToNCi0gICAgICAgIGYgPSBvcGVuKGZpbGUsIGVuY29kaW5n PSd1dGYtOCcpDQorICAgICAgICBmID0gb3BlbihmaWxlLCBlbmNvZGluZz0ndXRmLTgnLCBlcnJv cnM9J3N1cnJvZ2F0ZWVzY2FwZScpDQogICAgIGV4Y2VwdCBPU0Vycm9yOg0KICAgICAgICAgcmV0 dXJuIE5vbmUNCiAgICAgd2l0aCBmOg0KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbWltZXR5 cGVzLnB5IGIvTGliL3Rlc3QvdGVzdF9taW1ldHlwZXMucHkNCmluZGV4IDZiYmI1MmM5NTlhZjY5 Li41NDM0NWZlZDM1MzEzOCAxMDA2NDQNCi0tLSBhL0xpYi90ZXN0L3Rlc3RfbWltZXR5cGVzLnB5 DQorKysgYi9MaWIvdGVzdC90ZXN0X21pbWV0eXBlcy5weQ0KQEAgLTY1LDkgKzY1LDUwIEBAIGRl ZiB0ZXN0X3JlYWRfbWltZV90eXBlcyhzZWxmKToNCiAgICAgICAgIHdpdGggdW5pdHRlc3QubW9j ay5wYXRjaC5vYmplY3QobWltZXR5cGVzLCAnb3BlbicsDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJldHVybl92YWx1ZT1mcCkgYXMgbW9ja19vcGVuOg0KICAgICAg ICAgICAgIG1pbWVfZGljdCA9IG1pbWV0eXBlcy5yZWFkX21pbWVfdHlwZXMoZmlsZW5hbWUpDQot ICAgICAgICAgICAgbW9ja19vcGVuLmFzc2VydF9jYWxsZWRfd2l0aChmaWxlbmFtZSwgZW5jb2Rp bmc9J3V0Zi04JykNCisgICAgICAgICAgICBtb2NrX29wZW4uYXNzZXJ0X2NhbGxlZF93aXRoKGZp bGVuYW1lLCBlbmNvZGluZz0ndXRmLTgnLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZXJyb3JzPSdzdXJyb2dhdGVlc2NhcGUnKQ0KICAgICAgICAgZXEobWltZV9k aWN0WyIuRnJhbsOnYWlzIl0sICJhcHBsaWNhdGlvbi9uby1tYW5zLWxhbmQiKQ0KIA0KKyAgICBk ZWYgdGVzdF9yZWFkX21pbWVfdHlwZXNfaW52YWxpZF91dGY4X2NvbW1lbnQoc2VsZik6DQorICAg ICAgICB3aXRoIG9zX2hlbHBlci50ZW1wX2RpcigpIGFzIGRpcmVjdG9yeToNCisgICAgICAgICAg ICBkYXRhID0gKGIiIyBub24tVVRGLTggY29tbWVudDogXHg4M1xuIg0KKyAgICAgICAgICAgICAg ICAgICAgYiJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QgcHl1bml0XG4iKQ0KKyAgICAgICAgICAg IGZpbGUgPSBvcy5wYXRoLmpvaW4oZGlyZWN0b3J5LCAic2FtcGxlLm1pbWV0eXBlIikNCisgICAg ICAgICAgICB3aXRoIG9wZW4oZmlsZSwgIndiIikgYXMgZjoNCisgICAgICAgICAgICAgICAgZi53 cml0ZShkYXRhKQ0KKw0KKyAgICAgICAgICAgIG1pbWVfZGljdCA9IG1pbWV0eXBlcy5yZWFkX21p bWVfdHlwZXMoZmlsZSkNCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKA0KKyAgICAgICAg ICAgICAgICBtaW1lX2RpY3RbIi5weXVuaXQiXSwgIngtYXBwbGljYXRpb24veC11bml0dGVzdCIp DQorDQorICAgICAgICAgICAgZGIgPSBtaW1ldHlwZXMuTWltZVR5cGVzKCkNCisgICAgICAgICAg ICBkYi5yZWFkKGZpbGUpDQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgNCisgICAgICAg ICAgICAgICAgZGIuZ3Vlc3NfZmlsZV90eXBlKCJzYW1wbGUucHl1bml0IilbMF0sDQorICAgICAg ICAgICAgICAgICJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QiKQ0KKw0KKyAgICAgICAgICAgIG1p bWV0eXBlcy5pbml0KGZpbGVzPVtmaWxlXSkNCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFs KA0KKyAgICAgICAgICAgICAgICBtaW1ldHlwZXMuZ3Vlc3NfZmlsZV90eXBlKCJzYW1wbGUucHl1 bml0IilbMF0sDQorICAgICAgICAgICAgICAgICJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QiKQ0K Kw0KKyAgICBkZWYgdGVzdF9yZWFkX21pbWVfdHlwZXNfaW52YWxpZF91dGY4X3R5cGUoc2VsZik6 DQorICAgICAgICAjIEEgbm9uLVVURi04IGJ5dGUgaW4gYSB0eXBlIG9yIGV4dGVuc2lvbiAobm90 IG9ubHkgaW4gYSBjb21tZW50KSBpcw0KKyAgICAgICAgIyBwcmVzZXJ2ZWQgdmlhIHN1cnJvZ2F0 ZWVzY2FwZSwgc28gdGhlIG1hcHBpbmcgaXMgbm90IGNvcnJ1cHRlZC4NCisgICAgICAgIHdpdGgg b3NfaGVscGVyLnRlbXBfZGlyKCkgYXMgZGlyZWN0b3J5Og0KKyAgICAgICAgICAgIGRhdGEgPSAo YiJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QgcHl1bml0XG4iDQorICAgICAgICAgICAgICAgICAg ICBiImFwcGxpY2F0aW9uL2JhZFx4ODMgYmFkZXh0XHg4M1xuIikNCisgICAgICAgICAgICBmaWxl ID0gb3MucGF0aC5qb2luKGRpcmVjdG9yeSwgInNhbXBsZS5taW1ldHlwZSIpDQorICAgICAgICAg ICAgd2l0aCBvcGVuKGZpbGUsICJ3YiIpIGFzIGY6DQorICAgICAgICAgICAgICAgIGYud3JpdGUo ZGF0YSkNCisNCisgICAgICAgICAgICBiYWRfdHlwZSA9IGIiYXBwbGljYXRpb24vYmFkXHg4MyIu ZGVjb2RlKCJ1dGYtOCIsICJzdXJyb2dhdGVlc2NhcGUiKQ0KKyAgICAgICAgICAgIGJhZF9leHQg PSBiIi5iYWRleHRceDgzIi5kZWNvZGUoInV0Zi04IiwgInN1cnJvZ2F0ZWVzY2FwZSIpDQorDQor ICAgICAgICAgICAgbWltZV9kaWN0ID0gbWltZXR5cGVzLnJlYWRfbWltZV90eXBlcyhmaWxlKQ0K KyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWltZV9kaWN0WyIucHl1bml0Il0sICJ4LWFw cGxpY2F0aW9uL3gtdW5pdHRlc3QiKQ0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlt ZV9kaWN0W2JhZF9leHRdLCBiYWRfdHlwZSkNCisNCiAgICAgZGVmIHRlc3RfaW5pdF9yZWluaXRp YWxpemVzKHNlbGYpOg0KICAgICAgICAgIyBJc3N1ZSA0OTM2OiBtYWtlIHN1cmUgYW4gaW5pdCBz dGFydHMgY2xlYW4NCiAgICAgICAgICMgRmlyc3QsIHB1dCBzb21lIHBvaXNvbiBpbnRvIHRoZSB0 eXBlcyB0YWJsZQ0KZGlmZiAtLWdpdCBhL01pc2MvTkVXUy5kL25leHQvTGlicmFyeS8yMDI2LTA2 LTEwLTAwLTAwLTAxLmdoLWlzc3VlLTExNzgwNy5DeDExNzgucnN0IGIvTWlzYy9ORVdTLmQvbmV4 dC9MaWJyYXJ5LzIwMjYtMDYtMTAtMDAtMDAtMDEuZ2gtaXNzdWUtMTE3ODA3LkN4MTE3OC5yc3QN Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMDAwMC4uZDZhODc0YTg0ODY3 YTINCi0tLSAvZGV2L251bGwNCisrKyBiL01pc2MvTkVXUy5kL25leHQvTGlicmFyeS8yMDI2LTA2 LTEwLTAwLTAwLTAxLmdoLWlzc3VlLTExNzgwNy5DeDExNzgucnN0DQpAQCAtMCwwICsxLDIgQEAN CitGaXggOm1vZDpgbWltZXR5cGVzYCBpbml0aWFsaXphdGlvbiBmcm9tIE1JTUUgbWFwIGZpbGVz IGNvbnRhaW5pbmcgaW52YWxpZA0KK1VURi04IGJ5dGVzLg0KDQpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpQeXRob24tY2hlY2tpbnMgbWFpbGluZyBsaXN0 IC0tIHB5dGhvbi1jaGVja2luc0BweXRob24ub3JnClRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1h aWwgdG8gcHl0aG9uLWNoZWNraW5zLWxlYXZlQHB5dGhvbi5vcmcKaHR0cHM6Ly9tYWlsLnB5dGhv bi5vcmcvbWFpbG1hbjMvL2xpc3RzL3B5dGhvbi1jaGVja2lucy5weXRob24ub3JnCk1lbWJlciBh ZGRyZXNzOiBweXRob24tcHl0aG9uLWNoZWNraW5zQG0uZ21hbmUtbXgub3JnCg==