patch: crash upon invalid id3
lucida <[email protected]> Sun, 16 Nov 2003 10:21:12 -0800
| Newsgroups | gmane.comp.multimedia.beep-media-player.devel |
|---|---|
| Message-ID | <1069006871.8237.8.camel@fancyworld> |
--=-kXY0wA6cURKZzq9wAOgu Content-Type: text/plain Content-Transfer-Encoding: 7bit When a mp3 file contains an invalid(a g_locale_to_utf8 convert would fail in this case) id3 title field, the bmp would crash. This fix will use filename as title text instead of crappy id3 title if possible. Another one-line patch for prefswin.c sets the correct sample text for the "select playlist font" dialog. lucida --=-kXY0wA6cURKZzq9wAOgu Content-Disposition: attachment; filename=id3fix.diff Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name=id3fix.diff; charset= ZGlmZiAtcnVOIGJtcC9iZWVwL2VxdWFsaXplci5jIGJtcC5jdXJyZW50L2JlZXAvZXF1YWxpemVy LmMNCi0tLSBibXAvYmVlcC9lcXVhbGl6ZXIuYwkyMDAzLTExLTE2IDEwOjA4OjQ3LjAwMDAwMDAw MCAtMDgwMA0KKysrIGJtcC5jdXJyZW50L2JlZXAvZXF1YWxpemVyLmMJMjAwMy0xMS0xNiAxMDow ODo1OS4wMDAwMDAwMDAgLTA4MDANCkBAIC02OTMsNyArNjkzLDcgQEANCiBzdGF0aWMgdm9pZCBl cXVhbGl6ZXJ3aW5fY3JlYXRlX2d0ayh2b2lkKQ0KIHsNCiAJZXF1YWxpemVyd2luID0gZ3RrX3dp bmRvd19uZXcoR1RLX1dJTkRPV19UT1BMRVZFTCk7DQotCWd0a193aW5kb3dfc2V0X3RyYW5zaWVu dF9mb3IoR1RLX1dJTkRPVyhtYWlud2luKSxHVEtfV0lORE9XKGVxdWFsaXplcndpbikpOw0KKy8v CWd0a193aW5kb3dfc2V0X3RyYW5zaWVudF9mb3IoR1RLX1dJTkRPVyhtYWlud2luKSxHVEtfV0lO RE9XKGVxdWFsaXplcndpbikpOw0KIAlkb2NrX2FkZF93aW5kb3coZG9ja193aW5kb3dfbGlzdCwg ZXF1YWxpemVyd2luKTsNCiAJZ3RrX3dpZGdldF9zZXRfYXBwX3BhaW50YWJsZShlcXVhbGl6ZXJ3 aW4sIFRSVUUpOw0KIAlndGtfd2luZG93X3NldF90aXRsZShHVEtfV0lORE9XKGVxdWFsaXplcndp biksIF8oImJlZXAgOjogZXF1YWxpemVyIikpOw0KZGlmZiAtcnVOIGJtcC9iZWVwL3BsYXlsaXN0 LmMgYm1wLmN1cnJlbnQvYmVlcC9wbGF5bGlzdC5jDQotLS0gYm1wL2JlZXAvcGxheWxpc3QuYwky MDAzLTExLTE2IDEwOjA4OjQ3LjAwMDAwMDAwMCAtMDgwMA0KKysrIGJtcC5jdXJyZW50L2JlZXAv cGxheWxpc3QuYwkyMDAzLTExLTE2IDEwOjA4OjU5LjAwMDAwMDAwMCAtMDgwMA0KQEAgLTEwODMs NyArMTA4Myw3IEBADQogDQogY2hhciAqcGxheWxpc3RfZ2V0X2luZm9fdGV4dCh2b2lkKQ0KIHsN Ci0JY2hhciAqdGV4dCwgKnRpdGxlLCAqdG1wLCAqbnVtYmVycywgKmxlbmd0aDsNCisJY2hhciAq dGV4dCwgKnRpdGxlLCAqdG1wLCAqbnVtYmVycywgKmxlbmd0aCwgKnV0Zjh0aXRsZTsNCiANCiAJ UExfTE9DSygpOw0KIAlpZiAoIXBsYXlsaXN0X3Bvc2l0aW9uKQ0KQEAgLTEwOTcsNiArMTA5Nyw4 IEBADQogCWVsc2UNCiAJCXRpdGxlID0gZ19wYXRoX2dldF9iYXNlbmFtZShwbGF5bGlzdF9wb3Np dGlvbi0+ZmlsZW5hbWUpOw0KIA0KKwlpZiAoIWdfbG9jYWxlX3RvX3V0ZjgodGl0bGUsIC0xLCBO VUxMLCBOVUxMLCBOVUxMKSkgDQorCQl0aXRsZSA9IGdfcGF0aF9nZXRfYmFzZW5hbWUocGxheWxp c3RfcG9zaXRpb24tPmZpbGVuYW1lKTsNCiAJLyoNCiAJICogSWYgdGhlIHVzZXIgZG9uJ3Qgd2Fu dCBudW1iZXJzIGluIHRoZSBwbGF5bGlzdCwgZG9uJ3QNCiAJICogZGlzcGxheSB0aGVtIGluIG90 aGVyIHBhcnRzIG9mIFhNTVMNCkBAIC0xNDQ5LDcgKzE0NTEsNyBAQA0KIA0KIGdjaGFyICogcGxh eWxpc3RfZ2V0X3Nvbmd0aXRsZShnaW50IHBvcykNCiB7DQotCWNoYXIgKnRpdGxlID0gTlVMTCwg KmZpbGVuYW1lOw0KKwljaGFyICp0aXRsZSA9IE5VTEwsICpmaWxlbmFtZSwgKnV0Zjh0aXRsZTsN CiAJUGxheWxpc3RFbnRyeSAqZW50cnk7DQogCUdMaXN0ICpub2RlOw0KIA0KQEAgLTE0ODIsMTAg KzE0ODQsMTUgQEANCiAJCVBMX1VOTE9DSygpOw0KIAl9DQogDQorDQogCWlmICh0aXRsZSA9PSBO VUxMKQ0KIAkJdGl0bGUgPSBnX3N0cmR1cChnX2Jhc2VuYW1lKGZpbGVuYW1lKSk7DQotDQorCQ0K Kwl1dGY4dGl0bGUgPSBnX2xvY2FsZV90b191dGY4KHRpdGxlLCAtMSwgTlVMTCwgTlVMTCwgTlVM TCk7DQorCWlmICggdXRmOHRpdGxlID09IE5VTEwpIHRpdGxlID0gZ19zdHJkdXAoZ19iYXNlbmFt ZShmaWxlbmFtZSkpOw0KKy8vCXByaW50ZigiJXNcbiIsIHRpdGxlKTsNCiAJZ19mcmVlKGZpbGVu YW1lKTsNCisJZ19mcmVlKHV0Zjh0aXRsZSk7DQogDQogCXJldHVybiB0aXRsZTsNCiB9DQpkaWZm IC1ydU4gYm1wL2JlZXAvcGxheWxpc3RfbGlzdC5jIGJtcC5jdXJyZW50L2JlZXAvcGxheWxpc3Rf bGlzdC5jDQotLS0gYm1wL2JlZXAvcGxheWxpc3RfbGlzdC5jCTIwMDMtMTEtMTYgMTA6MDg6NDcu MDAwMDAwMDAwIC0wODAwDQorKysgYm1wLmN1cnJlbnQvYmVlcC9wbGF5bGlzdF9saXN0LmMJMjAw My0xMS0xNiAxMDowODo1OS4wMDAwMDAwMDAgLTA4MDANCkBAIC00MzMsNiArNDMxLDkgQEANCiAJ CWVsc2UNCiAJCQl0aXRsZSA9IGdfYmFzZW5hbWUoZW50cnktPmZpbGVuYW1lKTsNCiANCisJCWlm ICghZ19sb2NhbGVfdG9fdXRmOCh0aXRsZSwgLTEsIE5VTEwsIE5VTEwsIE5VTEwpKSANCisJCQl0 aXRsZSA9IGdfYmFzZW5hbWUoZW50cnktPmZpbGVuYW1lKTsNCisNCiAJCXBvcyA9IHBsYXlsaXN0 X2dldF9xdWV1ZV9wb3NpdGlvbihlbnRyeSk7DQogCQkNCiAJCWlmIChwb3MgIT0gLTEpDQpkaWZm IC1ydU4gYm1wL2JlZXAvcHJlZnN3aW4uYyBibXAuY3VycmVudC9iZWVwL3ByZWZzd2luLmMNCi0t LSBibXAvYmVlcC9wcmVmc3dpbi5jCTIwMDMtMTEtMTYgMTA6MDg6NDcuMDAwMDAwMDAwIC0wODAw DQorKysgYm1wLmN1cnJlbnQvYmVlcC9wcmVmc3dpbi5jCTIwMDMtMTEtMTYgMTA6MDg6NTkuMDAw MDAwMDAwIC0wODAwDQpAQCAtNDQxLDcgKzQ0MSw3IEBADQogDQogCWZvbnRzZWwgPSBndGtfZm9u dF9zZWxlY3Rpb25fZGlhbG9nX25ldyhfKCJTZWxlY3QgcGxheWxpc3QgZm9udDoiKSk7DQogDQot CWd0a19mb250X3NlbGVjdGlvbl9kaWFsb2dfc2V0X3ByZXZpZXdfdGV4dChHVEtfRk9OVF9TRUxF Q1RJT05fRElBTE9HKGZvbnRzZWwpLHBsYXlsaXN0X2dldF9zb25ndGl0bGUoZ2V0X3BsYXlsaXN0 X3Bvc2l0aW9uKCkpKTsNCisJZ3RrX2ZvbnRfc2VsZWN0aW9uX2RpYWxvZ19zZXRfcHJldmlld190 ZXh0KEdUS19GT05UX1NFTEVDVElPTl9ESUFMT0coZm9udHNlbCksZ19sb2NhbGVfdG9fdXRmOChw bGF5bGlzdF9nZXRfc29uZ3RpdGxlKGdldF9wbGF5bGlzdF9wb3NpdGlvbigpKSwgLTEsIE5VTEws IE5VTEwsIE5VTEwpKTsNCiAJZ3RrX2ZvbnRfc2VsZWN0aW9uX2RpYWxvZ19zZXRfZm9udF9uYW1l KEdUS19GT05UX1NFTEVDVElPTl9ESUFMT0coZm9udHNlbCksIGNmZy5wbGF5bGlzdF9mb250KTsN CiANCiAJcmVzcG9uc2UgPSBndGtfZGlhbG9nX3J1bihHVEtfRElBTE9HKGZvbnRzZWwpKTsNCg== --=-kXY0wA6cURKZzq9wAOgu--