gh-117807: Handle invalid UTF-8 in mimetypes map files (GH-151216)
serhiy-storchaka <[email protected]> Tue, 04 Aug 2026 12:47:12 -0400 (EDT)
| Newsgroups | gmane.comp.python.cvs |
|---|---|
| Message-ID | <[email protected]> |
aHR0cHM6Ly9naXRodWIuY29tL3B5dGhvbi9jcHl0aG9uL2NvbW1pdC8zMGFjMjNlM2U0MTNjMmQz OGI4MDY5MWIxYzgwZTNjZDc0YTIyNjM5DQpjb21taXQ6IDMwYWMyM2UzZTQxM2MyZDM4YjgwNjkx YjFjODBlM2NkNzRhMjI2MzkNCmJyYW5jaDogbWFpbg0KYXV0aG9yOiBIYXJqb3RoIEtoYXJhIDxo YXJqb3RoLmtoYXJhQGdtYWlsLmNvbT4NCmNvbW1pdHRlcjogc2VyaGl5LXN0b3JjaGFrYSA8c3Rv cmNoYWthQGdtYWlsLmNvbT4NCmRhdGU6IDIwMjYtMDgtMDRUMTk6NDc6MDIrMDM6MDANCnN1bW1h cnk6DQoNCmdoLTExNzgwNzogSGFuZGxlIGludmFsaWQgVVRGLTggaW4gbWltZXR5cGVzIG1hcCBm aWxlcyAoR0gtMTUxMjE2KQ0KDQpmaWxlczoNCkEgTWlzYy9ORVdTLmQvbmV4dC9MaWJyYXJ5LzIw MjYtMDYtMTAtMDAtMDAtMDEuZ2gtaXNzdWUtMTE3ODA3LkN4MTE3OC5yc3QNCk0gTGliL21pbWV0 eXBlcy5weQ0KTSBMaWIvdGVzdC90ZXN0X21pbWV0eXBlcy5weQ0KDQpkaWZmIC0tZ2l0IGEvTGli L21pbWV0eXBlcy5weSBiL0xpYi9taW1ldHlwZXMucHkNCmluZGV4IDQzMzllZjVhNjEzOTdkLi4x ZDZiMzNmZTg1NGM5NCAxMDA2NDQNCi0tLSBhL0xpYi9taW1ldHlwZXMucHkNCisrKyBiL0xpYi9t aW1ldHlwZXMucHkNCkBAIC0yNTAsNyArMjUwLDcgQEAgZGVmIHJlYWQoc2VsZiwgZmlsZW5hbWUs IHN0cmljdD1UcnVlKToNCiAgICAgICAgIGxpc3Qgb2Ygc3RhbmRhcmQgdHlwZXMsIGVsc2UgdG8g dGhlIGxpc3Qgb2Ygbm9uLXN0YW5kYXJkDQogICAgICAgICB0eXBlcy4NCiAgICAgICAgICIiIg0K LSAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoNCisg ICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgZW5jb2Rpbmc9J3V0Zi04JywgZXJyb3JzPSdzdXJy b2dhdGVlc2NhcGUnKSBhcyBmcDoNCiAgICAgICAgICAgICBzZWxmLnJlYWRmcChmcCwgc3RyaWN0 KQ0KIA0KICAgICBkZWYgcmVhZGZwKHNlbGYsIGZwLCBzdHJpY3Q9VHJ1ZSk6DQpAQCAtNDQ0LDcg KzQ0NCw3IEBAIGRlZiBpbml0KGZpbGVzPU5vbmUpOg0KIA0KIGRlZiByZWFkX21pbWVfdHlwZXMo ZmlsZSk6DQogICAgIHRyeToNCi0gICAgICAgIGYgPSBvcGVuKGZpbGUsIGVuY29kaW5nPSd1dGYt OCcpDQorICAgICAgICBmID0gb3BlbihmaWxlLCBlbmNvZGluZz0ndXRmLTgnLCBlcnJvcnM9J3N1 cnJvZ2F0ZWVzY2FwZScpDQogICAgIGV4Y2VwdCBPU0Vycm9yOg0KICAgICAgICAgcmV0dXJuIE5v bmUNCiAgICAgd2l0aCBmOg0KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbWltZXR5cGVzLnB5 IGIvTGliL3Rlc3QvdGVzdF9taW1ldHlwZXMucHkNCmluZGV4IDE5OTgzZmEzZmE3NjI4Li4xZTBm NjY2NGFmMGQwNiAxMDA2NDQNCi0tLSBhL0xpYi90ZXN0L3Rlc3RfbWltZXR5cGVzLnB5DQorKysg Yi9MaWIvdGVzdC90ZXN0X21pbWV0eXBlcy5weQ0KQEAgLTY3LDkgKzY3LDUwIEBAIGRlZiB0ZXN0 X3JlYWRfbWltZV90eXBlcyhzZWxmKToNCiAgICAgICAgIHdpdGggdW5pdHRlc3QubW9jay5wYXRj aC5vYmplY3QobWltZXR5cGVzLCAnb3BlbicsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJldHVybl92YWx1ZT1mcCkgYXMgbW9ja19vcGVuOg0KICAgICAgICAgICAg IG1pbWVfZGljdCA9IG1pbWV0eXBlcy5yZWFkX21pbWVfdHlwZXMoZmlsZW5hbWUpDQotICAgICAg ICAgICAgbW9ja19vcGVuLmFzc2VydF9jYWxsZWRfd2l0aChmaWxlbmFtZSwgZW5jb2Rpbmc9J3V0 Zi04JykNCisgICAgICAgICAgICBtb2NrX29wZW4uYXNzZXJ0X2NhbGxlZF93aXRoKGZpbGVuYW1l LCBlbmNvZGluZz0ndXRmLTgnLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZXJyb3JzPSdzdXJyb2dhdGVlc2NhcGUnKQ0KICAgICAgICAgZXEobWltZV9kaWN0WyIu RnJhbsOnYWlzIl0sICJhcHBsaWNhdGlvbi9uby1tYW5zLWxhbmQiKQ0KIA0KKyAgICBkZWYgdGVz dF9yZWFkX21pbWVfdHlwZXNfaW52YWxpZF91dGY4X2NvbW1lbnQoc2VsZik6DQorICAgICAgICB3 aXRoIG9zX2hlbHBlci50ZW1wX2RpcigpIGFzIGRpcmVjdG9yeToNCisgICAgICAgICAgICBkYXRh ID0gKGIiIyBub24tVVRGLTggY29tbWVudDogXHg4M1xuIg0KKyAgICAgICAgICAgICAgICAgICAg YiJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QgcHl1bml0XG4iKQ0KKyAgICAgICAgICAgIGZpbGUg PSBvcy5wYXRoLmpvaW4oZGlyZWN0b3J5LCAic2FtcGxlLm1pbWV0eXBlIikNCisgICAgICAgICAg ICB3aXRoIG9wZW4oZmlsZSwgIndiIikgYXMgZjoNCisgICAgICAgICAgICAgICAgZi53cml0ZShk YXRhKQ0KKw0KKyAgICAgICAgICAgIG1pbWVfZGljdCA9IG1pbWV0eXBlcy5yZWFkX21pbWVfdHlw ZXMoZmlsZSkNCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKA0KKyAgICAgICAgICAgICAg ICBtaW1lX2RpY3RbIi5weXVuaXQiXSwgIngtYXBwbGljYXRpb24veC11bml0dGVzdCIpDQorDQor ICAgICAgICAgICAgZGIgPSBtaW1ldHlwZXMuTWltZVR5cGVzKCkNCisgICAgICAgICAgICBkYi5y ZWFkKGZpbGUpDQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgNCisgICAgICAgICAgICAg ICAgZGIuZ3Vlc3NfZmlsZV90eXBlKCJzYW1wbGUucHl1bml0IilbMF0sDQorICAgICAgICAgICAg ICAgICJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QiKQ0KKw0KKyAgICAgICAgICAgIG1pbWV0eXBl cy5pbml0KGZpbGVzPVtmaWxlXSkNCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKA0KKyAg ICAgICAgICAgICAgICBtaW1ldHlwZXMuZ3Vlc3NfZmlsZV90eXBlKCJzYW1wbGUucHl1bml0Iilb MF0sDQorICAgICAgICAgICAgICAgICJ4LWFwcGxpY2F0aW9uL3gtdW5pdHRlc3QiKQ0KKw0KKyAg ICBkZWYgdGVzdF9yZWFkX21pbWVfdHlwZXNfaW52YWxpZF91dGY4X3R5cGUoc2VsZik6DQorICAg ICAgICAjIEEgbm9uLVVURi04IGJ5dGUgaW4gYSB0eXBlIG9yIGV4dGVuc2lvbiAobm90IG9ubHkg aW4gYSBjb21tZW50KSBpcw0KKyAgICAgICAgIyBwcmVzZXJ2ZWQgdmlhIHN1cnJvZ2F0ZWVzY2Fw ZSwgc28gdGhlIG1hcHBpbmcgaXMgbm90IGNvcnJ1cHRlZC4NCisgICAgICAgIHdpdGggb3NfaGVs cGVyLnRlbXBfZGlyKCkgYXMgZGlyZWN0b3J5Og0KKyAgICAgICAgICAgIGRhdGEgPSAoYiJ4LWFw cGxpY2F0aW9uL3gtdW5pdHRlc3QgcHl1bml0XG4iDQorICAgICAgICAgICAgICAgICAgICBiImFw cGxpY2F0aW9uL2JhZFx4ODMgYmFkZXh0XHg4M1xuIikNCisgICAgICAgICAgICBmaWxlID0gb3Mu cGF0aC5qb2luKGRpcmVjdG9yeSwgInNhbXBsZS5taW1ldHlwZSIpDQorICAgICAgICAgICAgd2l0 aCBvcGVuKGZpbGUsICJ3YiIpIGFzIGY6DQorICAgICAgICAgICAgICAgIGYud3JpdGUoZGF0YSkN CisNCisgICAgICAgICAgICBiYWRfdHlwZSA9IGIiYXBwbGljYXRpb24vYmFkXHg4MyIuZGVjb2Rl KCJ1dGYtOCIsICJzdXJyb2dhdGVlc2NhcGUiKQ0KKyAgICAgICAgICAgIGJhZF9leHQgPSBiIi5i YWRleHRceDgzIi5kZWNvZGUoInV0Zi04IiwgInN1cnJvZ2F0ZWVzY2FwZSIpDQorDQorICAgICAg ICAgICAgbWltZV9kaWN0ID0gbWltZXR5cGVzLnJlYWRfbWltZV90eXBlcyhmaWxlKQ0KKyAgICAg ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWltZV9kaWN0WyIucHl1bml0Il0sICJ4LWFwcGxpY2F0 aW9uL3gtdW5pdHRlc3QiKQ0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWltZV9kaWN0 W2JhZF9leHRdLCBiYWRfdHlwZSkNCisNCiAgICAgZGVmIHRlc3RfaW5pdF9yZWluaXRpYWxpemVz KHNlbGYpOg0KICAgICAgICAgIyBJc3N1ZSA0OTM2OiBtYWtlIHN1cmUgYW4gaW5pdCBzdGFydHMg Y2xlYW4NCiAgICAgICAgICMgRmlyc3QsIHB1dCBzb21lIHBvaXNvbiBpbnRvIHRoZSB0eXBlcyB0 YWJsZQ0KZGlmZiAtLWdpdCBhL01pc2MvTkVXUy5kL25leHQvTGlicmFyeS8yMDI2LTA2LTEwLTAw LTAwLTAxLmdoLWlzc3VlLTExNzgwNy5DeDExNzgucnN0IGIvTWlzYy9ORVdTLmQvbmV4dC9MaWJy YXJ5LzIwMjYtMDYtMTAtMDAtMDAtMDEuZ2gtaXNzdWUtMTE3ODA3LkN4MTE3OC5yc3QNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMDAwMC4uZDZhODc0YTg0ODY3YTINCi0t LSAvZGV2L251bGwNCisrKyBiL01pc2MvTkVXUy5kL25leHQvTGlicmFyeS8yMDI2LTA2LTEwLTAw LTAwLTAxLmdoLWlzc3VlLTExNzgwNy5DeDExNzgucnN0DQpAQCAtMCwwICsxLDIgQEANCitGaXgg Om1vZDpgbWltZXR5cGVzYCBpbml0aWFsaXphdGlvbiBmcm9tIE1JTUUgbWFwIGZpbGVzIGNvbnRh aW5pbmcgaW52YWxpZA0KK1VURi04IGJ5dGVzLg0KDQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpQeXRob24tY2hlY2tpbnMgbWFpbGluZyBsaXN0IC0tIHB5 dGhvbi1jaGVja2luc0BweXRob24ub3JnClRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8g cHl0aG9uLWNoZWNraW5zLWxlYXZlQHB5dGhvbi5vcmcKaHR0cHM6Ly9tYWlsLnB5dGhvbi5vcmcv bWFpbG1hbjMvL2xpc3RzL3B5dGhvbi1jaGVja2lucy5weXRob24ub3JnCk1lbWJlciBhZGRyZXNz OiBweXRob24tcHl0aG9uLWNoZWNraW5zQG0uZ21hbmUtbXgub3JnCg==