From: Run Paint Run Run Date: 2010-09-02T21:20:46+09:00 Subject: [ruby-core:32014] [Ruby 1.9-Bug#3783][Open] Replace Calls to rb_error_frozen() with rb_check_frozen() --mimepart_4c7f969d2eea1_ef64cf564e3336 Content-Type: text/plain Content-Transfer-Encoding: Quoted-printable Content-Disposition: inline Bug #3783: Replace Calls to rb_error_frozen() with rb_check_frozen() http://redmine.ruby-lang.org/issues/show/3783 Author: Run Paint Run Run Status: Open, Priority: Low Category: core ruby -v: ruby 1.9.3dev (2010-09-02 trunk 29167) [i686-linux] = This patch replaces lines of the form: if (OBJ_FROZEN(obj)) rb_error_frozen("object"); with: rb_check_frozen(obj); This is simpler, and produces error messages that are more consistent and= precise. (It feels wrong cluttering the bug tracker with things like this. Would t= hey be better posted to the list or sent as a "pull" request?) ---------------------------------------- http://redmine.ruby-lang.org --mimepart_4c7f969d2eea1_ef64cf564e3336 Content-Type: text/x-patch; name=rb_check_frozen.patch Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=rb_check_frozen.patch ZGlmZiAtLWdpdCBhL2FycmF5LmMgYi9hcnJheS5jCmluZGV4IDRlMDU4NWMu LjUzMzQ4ZWYgMTAwNjQ0Ci0tLSBhL2FycmF5LmMKKysrIGIvYXJyYXkuYwpA QCAtMjQyLDcgKzI0Miw3IEBAIHJiX2FyeV9zZXRfc2hhcmVkKFZBTFVFIGFy eSwgVkFMVUUgc2hhcmVkKQogc3RhdGljIGlubGluZSB2b2lkCiByYl9hcnlf bW9kaWZ5X2NoZWNrKFZBTFVFIGFyeSkKIHsKLSAgICBpZiAoT0JKX0ZST1pF TihhcnkpKSByYl9lcnJvcl9mcm96ZW4oImFycmF5Iik7CisgICAgcmJfY2hl Y2tfZnJvemVuKGFyeSk7CiAgICAgaWYgKCFPQkpfVU5UUlVTVEVEKGFyeSkg JiYgcmJfc2FmZV9sZXZlbCgpID49IDQpCiAJcmJfcmFpc2UocmJfZVNlY3Vy aXR5RXJyb3IsICJJbnNlY3VyZTogY2FuJ3QgbW9kaWZ5IGFycmF5Iik7CiB9 CmRpZmYgLS1naXQgYS9nYy5jIGIvZ2MuYwppbmRleCA5YmRlNDg3Li5mYjAy ZmU3IDEwMDY0NAotLS0gYS9nYy5jCisrKyBiL2djLmMKQEAgLTI2NzQsNyAr MjY3NCw3IEBAIHN0YXRpYyBWQUxVRQogdW5kZWZpbmVfZmluYWwoVkFMVUUg b3MsIFZBTFVFIG9iaikKIHsKICAgICByYl9vYmpzcGFjZV90ICpvYmpzcGFj ZSA9ICZyYl9vYmpzcGFjZTsKLSAgICBpZiAoT0JKX0ZST1pFTihvYmopKSBy Yl9lcnJvcl9mcm96ZW4oIm9iamVjdCIpOworICAgIHJiX2NoZWNrX2Zyb3pl bihvYmopOwogICAgIGlmIChmaW5hbGl6ZXJfdGFibGUpIHsKIAlzdF9kZWxl dGUoZmluYWxpemVyX3RhYmxlLCAoc3RfZGF0YV90Kikmb2JqLCAwKTsKICAg ICB9CkBAIC0yNjk4LDcgKzI2OTgsNyBAQCBkZWZpbmVfZmluYWwoaW50IGFy Z2MsIFZBTFVFICphcmd2LCBWQUxVRSBvcykKICAgICBWQUxVRSBvYmosIGJs b2NrLCB0YWJsZTsKIAogICAgIHJiX3NjYW5fYXJncyhhcmdjLCBhcmd2LCAi MTEiLCAmb2JqLCAmYmxvY2spOwotICAgIGlmIChPQkpfRlJPWkVOKG9iaikp IHJiX2Vycm9yX2Zyb3plbigib2JqZWN0Iik7CisgICAgcmJfY2hlY2tfZnJv emVuKG9iaik7CiAgICAgaWYgKGFyZ2MgPT0gMSkgewogCWJsb2NrID0gcmJf YmxvY2tfcHJvYygpOwogICAgIH0KZGlmZiAtLWdpdCBhL2hhc2guYyBiL2hh c2guYwppbmRleCA4YmJhNTg2Li4xYTBlNWY4IDEwMDY0NAotLS0gYS9oYXNo LmMKKysrIGIvaGFzaC5jCkBAIC0yNDgsNyArMjQ4LDcgQEAgcmJfaGFzaF9k dXAoVkFMVUUgaGFzaCkKIHN0YXRpYyB2b2lkCiByYl9oYXNoX21vZGlmeV9j aGVjayhWQUxVRSBoYXNoKQogewotICAgIGlmIChPQkpfRlJPWkVOKGhhc2gp KSByYl9lcnJvcl9mcm96ZW4oImhhc2giKTsKKyAgICByYl9jaGVja19mcm96 ZW4oaGFzaCk7CiAgICAgaWYgKCFPQkpfVU5UUlVTVEVEKGhhc2gpICYmIHJi X3NhZmVfbGV2ZWwoKSA+PSA0KQogCXJiX3JhaXNlKHJiX2VTZWN1cml0eUVy cm9yLCAiSW5zZWN1cmU6IGNhbid0IG1vZGlmeSBoYXNoIik7CiB9CmRpZmYg LS1naXQgYS9vYmplY3QuYyBiL29iamVjdC5jCmluZGV4IDM0Yjk1MjkuLjE1 NDMzOGIgMTAwNjQ0Ci0tLSBhL29iamVjdC5jCisrKyBiL29iamVjdC5jCkBA IC03MTIsOSArNzEyLDcgQEAgcmJfb2JqX3RhaW50KFZBTFVFIG9iaikKIHsK ICAgICByYl9zZWN1cmUoNCk7CiAgICAgaWYgKCFPQkpfVEFJTlRFRChvYmop KSB7Ci0JaWYgKE9CSl9GUk9aRU4ob2JqKSkgewotCSAgICByYl9lcnJvcl9m cm96ZW4oIm9iamVjdCIpOwotCX0KKwlyYl9jaGVja19mcm96ZW4ob2JqKTsK IAlPQkpfVEFJTlQob2JqKTsKICAgICB9CiAgICAgcmV0dXJuIG9iajsKQEAg LTczMyw5ICs3MzEsNyBAQCByYl9vYmpfdW50YWludChWQUxVRSBvYmopCiB7 CiAgICAgcmJfc2VjdXJlKDMpOwogICAgIGlmIChPQkpfVEFJTlRFRChvYmop KSB7Ci0JaWYgKE9CSl9GUk9aRU4ob2JqKSkgewotCSAgICByYl9lcnJvcl9m cm96ZW4oIm9iamVjdCIpOwotCX0KKwlyYl9jaGVja19mcm96ZW4ob2JqKTsK IAlGTF9VTlNFVChvYmosIEZMX1RBSU5UKTsKICAgICB9CiAgICAgcmV0dXJu IG9iajsKQEAgLTc2OCw5ICs3NjQsNyBAQCByYl9vYmpfdW50cnVzdChWQUxV RSBvYmopCiB7CiAgICAgcmJfc2VjdXJlKDQpOwogICAgIGlmICghT0JKX1VO VFJVU1RFRChvYmopKSB7Ci0JaWYgKE9CSl9GUk9aRU4ob2JqKSkgewotCSAg ICByYl9lcnJvcl9mcm96ZW4oIm9iamVjdCIpOwotCX0KKwlyYl9jaGVja19m cm96ZW4ob2JqKTsKIAlPQkpfVU5UUlVTVChvYmopOwogICAgIH0KICAgICBy ZXR1cm4gb2JqOwpAQCAtNzg5LDkgKzc4Myw3IEBAIHJiX29ial90cnVzdChW QUxVRSBvYmopCiB7CiAgICAgcmJfc2VjdXJlKDMpOwogICAgIGlmIChPQkpf VU5UUlVTVEVEKG9iaikpIHsKLQlpZiAoT0JKX0ZST1pFTihvYmopKSB7Ci0J ICAgIHJiX2Vycm9yX2Zyb3plbigib2JqZWN0Iik7Ci0JfQorCXJiX2NoZWNr X2Zyb3plbihvYmopOwogCUZMX1VOU0VUKG9iaiwgRkxfVU5UUlVTVEVEKTsK ICAgICB9CiAgICAgcmV0dXJuIG9iajsKZGlmZiAtLWdpdCBhL3N0cmluZy5j IGIvc3RyaW5nLmMKaW5kZXggZjk2Yzc3MC4uMGRkMjM4OSAxMDA2NDQKLS0t IGEvc3RyaW5nLmMKKysrIGIvc3RyaW5nLmMKQEAgLTM1MCwxNCArMzUwLDYg QEAgc3RyX21vZF9jaGVjayhWQUxVRSBzLCBjb25zdCBjaGFyICpwLCBsb25n IGxlbikKICAgICB9CiB9CiAKLXN0YXRpYyBpbmxpbmUgdm9pZAotc3RyX2Zy b3plbl9jaGVjayhWQUxVRSBzKQotewotICAgIGlmIChPQkpfRlJPWkVOKHMp KSB7Ci0JcmJfcmFpc2UocmJfZVJ1bnRpbWVFcnJvciwgInN0cmluZyBmcm96 ZW4iKTsKLSAgICB9Ci19Ci0KIHNpemVfdAogcmJfc3RyX2NhcGFjaXR5KFZB TFVFIHN0cikKIHsKQEAgLTEyNDksNyArMTI0MSw3IEBAIHN0cl9tb2RpZmlh YmxlKFZBTFVFIHN0cikKICAgICBpZiAoRkxfVEVTVChzdHIsIFNUUl9UTVBM T0NLKSkgewogCXJiX3JhaXNlKHJiX2VSdW50aW1lRXJyb3IsICJjYW4ndCBt b2RpZnkgc3RyaW5nOyB0ZW1wb3JhcmlseSBsb2NrZWQiKTsKICAgICB9Ci0g ICAgaWYgKE9CSl9GUk9aRU4oc3RyKSkgcmJfZXJyb3JfZnJvemVuKCJzdHJp bmciKTsKKyAgICByYl9jaGVja19mcm96ZW4oc3RyKTsKICAgICBpZiAoIU9C Sl9VTlRSVVNURUQoc3RyKSAmJiByYl9zYWZlX2xldmVsKCkgPj0gNCkKIAly Yl9yYWlzZShyYl9lU2VjdXJpdHlFcnJvciwgIkluc2VjdXJlOiBjYW4ndCBt b2RpZnkgc3RyaW5nIik7CiB9CkBAIC0xMzM0LDcgKzEzMjYsNyBAQCB2b2lk CiByYl9zdHJfYXNzb2NpYXRlKFZBTFVFIHN0ciwgVkFMVUUgYWRkKQogewog ICAgIC8qIHNhbml0eSBjaGVjayAqLwotICAgIGlmIChPQkpfRlJPWkVOKHN0 cikpIHJiX2Vycm9yX2Zyb3plbigic3RyaW5nIik7CisgICAgcmJfY2hlY2tf ZnJvemVuKHN0cik7CiAgICAgaWYgKFNUUl9BU1NPQ19QKHN0cikpIHsKIAkv KiBhbHJlYWR5IGFzc29jaWF0ZWQgKi8KIAlyYl9hcnlfY29uY2F0KFJTVFJJ Tkcoc3RyKS0+YXMuaGVhcC5hdXguc2hhcmVkLCBhZGQpOwpAQCAtMzU0OSw3 ICszNTQxLDcgQEAgcmJfc3RyX3N1Yl9iYW5nKGludCBhcmdjLCBWQUxVRSAq YXJndiwgVkFMVUUgc3RyKQogICAgICAgICAgICAgICAgIHJlcGwgPSByYl9v YmpfYXNfc3RyaW5nKHJlcGwpOwogICAgICAgICAgICAgfQogCSAgICBzdHJf bW9kX2NoZWNrKHN0ciwgcCwgbGVuKTsKLQkgICAgc3RyX2Zyb3plbl9jaGVj ayhzdHIpOworCSAgICByYl9jaGVja19mcm96ZW4oc3RyKTsKIAl9CiAJZWxz ZSB7CiAJICAgIHJlcGwgPSByYl9yZWdfcmVnc3ViKHJlcGwsIHN0ciwgcmVn cywgcGF0KTsKZGlmZiAtLWdpdCBhL3N0cnVjdC5jIGIvc3RydWN0LmMKaW5k ZXggZjBhMzc3Yy4uNzhmODM2ZiAxMDA2NDQKLS0tIGEvc3RydWN0LmMKKysr IGIvc3RydWN0LmMKQEAgLTE1MSw3ICsxNTEsNyBAQCBzdGF0aWMgVkFMVUUg KCpjb25zdCByZWZfZnVuY1tdKShWQUxVRSkgPSB7CiBzdGF0aWMgdm9pZAog cmJfc3RydWN0X21vZGlmeShWQUxVRSBzKQogewotICAgIGlmIChPQkpfRlJP WkVOKHMpKSByYl9lcnJvcl9mcm96ZW4oIlN0cnVjdCIpOworICAgIHJiX2No ZWNrX2Zyb3plbihzKTsKICAgICBpZiAoIU9CSl9VTlRSVVNURUQocykgJiYg cmJfc2FmZV9sZXZlbCgpID49IDQpCiAgICAgICAgcmJfcmFpc2UocmJfZVNl Y3VyaXR5RXJyb3IsICJJbnNlY3VyZTogY2FuJ3QgbW9kaWZ5IFN0cnVjdCIp OwogfQpkaWZmIC0tZ2l0IGEvdHJhbnNjb2RlLmMgYi90cmFuc2NvZGUuYwpp bmRleCBjNzE4MTgyLi5mNWE1NWU2IDEwMDY0NAotLS0gYS90cmFuc2NvZGUu YworKysgYi90cmFuc2NvZGUuYwpAQCAtMjcxNCw5ICsyNzE0LDcgQEAgc3Ry X2VuY29kZV9iYW5nKGludCBhcmdjLCBWQUxVRSAqYXJndiwgVkFMVUUgc3Ry KQogICAgIFZBTFVFIG5ld3N0cjsKICAgICBpbnQgZW5jaWR4OwogCi0gICAg aWYgKE9CSl9GUk9aRU4oc3RyKSkgeyAvKiBpbiBmdXR1cmUsIG1heSB1c2Ug c3RyX2Zyb3plbl9jaGVjayBmcm9tIHN0cmluZy5jLCBidXQgdGhhdCdzIGN1 cnJlbnRseSBzdGF0aWMgKi8KLQlyYl9yYWlzZShyYl9lUnVudGltZUVycm9y LCAic3RyaW5nIGZyb3plbiIpOwotICAgIH0KKyAgICByYl9jaGVja19mcm96 ZW4oc3RyKTsKIAogICAgIG5ld3N0ciA9IHN0cjsKICAgICBlbmNpZHggPSBz dHJfdHJhbnNjb2RlKGFyZ2MsIGFyZ3YsICZuZXdzdHIpOwpkaWZmIC0tZ2l0 IGEvdmFyaWFibGUuYyBiL3ZhcmlhYmxlLmMKaW5kZXggNTMzM2FhMi4uMTZj YTg2MiAxMDA2NDQKLS0tIGEvdmFyaWFibGUuYworKysgYi92YXJpYWJsZS5j CkBAIC0xMDQyLDcgKzEwNDIsNyBAQCByYl9pdmFyX3NldChWQUxVRSBvYmos IElEIGlkLCBWQUxVRSB2YWwpCiAKICAgICBpZiAoIU9CSl9VTlRSVVNURUQo b2JqKSAmJiByYl9zYWZlX2xldmVsKCkgPj0gNCkKIAlyYl9yYWlzZShyYl9l U2VjdXJpdHlFcnJvciwgIkluc2VjdXJlOiBjYW4ndCBtb2RpZnkgaW5zdGFu Y2UgdmFyaWFibGUiKTsKLSAgICBpZiAoT0JKX0ZST1pFTihvYmopKSByYl9l cnJvcl9mcm96ZW4oIm9iamVjdCIpOworICAgIHJiX2NoZWNrX2Zyb3plbihv YmopOwogICAgIHN3aXRjaCAoVFlQRShvYmopKSB7CiAgICAgICBjYXNlIFRf T0JKRUNUOgogICAgICAgICBpdl9pbmRleF90YmwgPSBST0JKRUNUX0lWX0lO REVYX1RCTChvYmopOwpAQCAtMTMwNCw3ICsxMzA0LDcgQEAgcmJfb2JqX3Jl bW92ZV9pbnN0YW5jZV92YXJpYWJsZShWQUxVRSBvYmosIFZBTFVFIG5hbWUp CiAKICAgICBpZiAoIU9CSl9VTlRSVVNURUQob2JqKSAmJiByYl9zYWZlX2xl dmVsKCkgPj0gNCkKIAlyYl9yYWlzZShyYl9lU2VjdXJpdHlFcnJvciwgIklu c2VjdXJlOiBjYW4ndCBtb2RpZnkgaW5zdGFuY2UgdmFyaWFibGUiKTsKLSAg ICBpZiAoT0JKX0ZST1pFTihvYmopKSByYl9lcnJvcl9mcm96ZW4oIm9iamVj dCIpOworICAgIHJiX2NoZWNrX2Zyb3plbihvYmopOwogICAgIGlmICghcmJf aXNfaW5zdGFuY2VfaWQoaWQpKSB7CiAJcmJfbmFtZV9lcnJvcihpZCwgImAl cycgaXMgbm90IGFsbG93ZWQgYXMgYW4gaW5zdGFuY2UgdmFyaWFibGUgbmFt ZSIsIHJiX2lkMm5hbWUoaWQpKTsKICAgICB9CkBAIC0xNjQ4LDggKzE2NDgs NyBAQCByYl9jb25zdF9yZW1vdmUoVkFMVUUgbW9kLCBJRCBpZCkKIAogICAg IGlmICghT0JKX1VOVFJVU1RFRChtb2QpICYmIHJiX3NhZmVfbGV2ZWwoKSA+ PSA0KQogCXJiX3JhaXNlKHJiX2VTZWN1cml0eUVycm9yLCAiSW5zZWN1cmU6 IGNhbid0IHJlbW92ZSBjb25zdGFudCIpOwotICAgIGlmIChPQkpfRlJPWkVO KG1vZCkpIHJiX2Vycm9yX2Zyb3plbigiY2xhc3MvbW9kdWxlIik7Ci0KKyAg ICByYl9jaGVja19mcm96ZW4obW9kKTsKICAgICBpZiAoIVJDTEFTU19JVl9U QkwobW9kKSB8fCAhc3RfZGVsZXRlKFJDTEFTU19JVl9UQkwobW9kKSwgJm4s ICZ2KSkgewogCWlmIChyYl9jb25zdF9kZWZpbmVkX2F0KG1vZCwgaWQpKSB7 CiAJICAgIHJiX25hbWVfZXJyb3IoaWQsICJjYW5ub3QgcmVtb3ZlICVzOjol cyIsCkBAIC0xODE0LDE0ICsxODEzLDcgQEAgbW9kX2F2X3NldChWQUxVRSBr bGFzcywgSUQgaWQsIFZBTFVFIHZhbCwgaW50IGlzY29uc3QpCiAKICAgICBp ZiAoIU9CSl9VTlRSVVNURUQoa2xhc3MpICYmIHJiX3NhZmVfbGV2ZWwoKSA+ PSA0KQogCXJiX3JhaXNlKHJiX2VTZWN1cml0eUVycm9yLCAiSW5zZWN1cmU6 IGNhbid0IHNldCAlcyIsIGRlc3QpOwotICAgIGlmIChPQkpfRlJPWkVOKGts YXNzKSkgewotCWlmIChCVUlMVElOX1RZUEUoa2xhc3MpID09IFRfTU9EVUxF KSB7Ci0JICAgIHJiX2Vycm9yX2Zyb3plbigibW9kdWxlIik7Ci0JfQotCWVs c2UgewotCSAgICByYl9lcnJvcl9mcm96ZW4oImNsYXNzIik7Ci0JfQotICAg IH0KKyAgICByYl9jaGVja19mcm96ZW4oa2xhc3MpOwogICAgIGlmICghUkNM QVNTX0lWX1RCTChrbGFzcykpIHsKIAlSQ0xBU1NfSVZfVEJMKGtsYXNzKSA9 IHN0X2luaXRfbnVtdGFibGUoKTsKICAgICB9CkBAIC0yMDY5LDggKzIwNjEs NyBAQCByYl9tb2RfcmVtb3ZlX2N2YXIoVkFMVUUgbW9kLCBWQUxVRSBuYW1l KQogICAgIH0KICAgICBpZiAoIU9CSl9VTlRSVVNURUQobW9kKSAmJiByYl9z YWZlX2xldmVsKCkgPj0gNCkKIAlyYl9yYWlzZShyYl9lU2VjdXJpdHlFcnJv ciwgIkluc2VjdXJlOiBjYW4ndCByZW1vdmUgY2xhc3MgdmFyaWFibGUiKTsK LSAgICBpZiAoT0JKX0ZST1pFTihtb2QpKSByYl9lcnJvcl9mcm96ZW4oImNs YXNzL21vZHVsZSIpOwotCisgICAgcmJfY2hlY2tfZnJvemVuKG1vZCk7CiAg ICAgaWYgKFJDTEFTU19JVl9UQkwobW9kKSAmJiBzdF9kZWxldGUoUkNMQVNT X0lWX1RCTChtb2QpLCAmbiwgJnZhbCkpIHsKIAlyZXR1cm4gKFZBTFVFKXZh bDsKICAgICB9CmRpZmYgLS1naXQgYS92bS5jIGIvdm0uYwppbmRleCA1ZDI0 OWU1Li44ZWNkODljIDEwMDY0NAotLS0gYS92bS5jCisrKyBiL3ZtLmMKQEAg LTE4NjIsMTAgKzE4NjIsNyBAQCB2bV9kZWZpbmVfbWV0aG9kKHJiX3RocmVh ZF90ICp0aCwgVkFMVUUgb2JqLCBJRCBpZCwgVkFMVUUgaXNlcXZhbCwKIAkJ ICAgICByYl9pZDJuYW1lKGlkKSwgcmJfb2JqX2NsYXNzbmFtZShvYmopKTsK IAl9CiAKLQlpZiAoT0JKX0ZST1pFTihvYmopKSB7Ci0JICAgIHJiX2Vycm9y X2Zyb3plbigib2JqZWN0Iik7Ci0JfQotCisJcmJfY2hlY2tfZnJvemVuKG9i aik7CiAJa2xhc3MgPSByYl9zaW5nbGV0b25fY2xhc3Mob2JqKTsKIAlub2V4 ID0gTk9FWF9QVUJMSUM7CiAgICAgfQpkaWZmIC0tZ2l0IGEvdm1faW5zbmhl bHBlci5jIGIvdm1faW5zbmhlbHBlci5jCmluZGV4IDk4NWEyZmIuLjk3NjE0 N2YgMTAwNjQ0Ci0tLSBhL3ZtX2luc25oZWxwZXIuYworKysgYi92bV9pbnNu aGVscGVyLmMKQEAgLTEyOTAsOSArMTI5MCw4IEBAIHZtX3NldGl2YXIoVkFM VUUgb2JqLCBJRCBpZCwgVkFMVUUgdmFsLCBJQyBpYykKICAgICBpZiAoIU9C Sl9VTlRSVVNURUQob2JqKSAmJiByYl9zYWZlX2xldmVsKCkgPj0gNCkgewog CXJiX3JhaXNlKHJiX2VTZWN1cml0eUVycm9yLCAiSW5zZWN1cmU6IGNhbid0 IG1vZGlmeSBpbnN0YW5jZSB2YXJpYWJsZSIpOwogICAgIH0KLSAgICBpZiAo T0JKX0ZST1pFTihvYmopKSB7Ci0JcmJfZXJyb3JfZnJvemVuKCJvYmplY3Qi KTsKLSAgICB9CisgICAgCisgICAgcmJfY2hlY2tfZnJvemVuKG9iaik7CiAK ICAgICBpZiAoVFlQRShvYmopID09IFRfT0JKRUNUKSB7CiAJVkFMVUUga2xh c3MgPSBSQkFTSUMob2JqKS0+a2xhc3M7CmRpZmYgLS1naXQgYS92bV9tZXRo b2QuYyBiL3ZtX21ldGhvZC5jCmluZGV4IDUwZjBiMTIuLjhhZjUyOWUgMTAw NjQ0Ci0tLSBhL3ZtX21ldGhvZC5jCisrKyBiL3ZtX21ldGhvZC5jCkBAIC0y MTEsMTAgKzIxMSw4IEBAIHJiX21ldGhvZF9lbnRyeV9tYWtlKFZBTFVFIGts YXNzLCBJRCBtaWQsIHJiX21ldGhvZF90eXBlX3QgdHlwZSwKIAkJcmJfY2xh c3MybmFtZShyYl9pdmFyX2dldChrbGFzcywgYXR0YWNoZWQpKSk7CiAJbWlk ID0gSURfQUxMT0NBVE9SOwogICAgIH0KLSAgICBpZiAoT0JKX0ZST1pFTihr bGFzcykpIHsKLQlyYl9lcnJvcl9mcm96ZW4oImNsYXNzL21vZHVsZSIpOwot ICAgIH0KIAorICAgIHJiX2NoZWNrX2Zyb3plbihrbGFzcyk7CiAgICAgbXRi bCA9IFJDTEFTU19NX1RCTChrbGFzcyk7CiAKICAgICAvKiBjaGVjayByZS1k ZWZpbml0aW9uICovCkBAIC00NjMsOCArNDYxLDcgQEAgcmVtb3ZlX21ldGhv ZChWQUxVRSBrbGFzcywgSUQgbWlkKQogICAgIGlmIChyYl9zYWZlX2xldmVs KCkgPj0gNCAmJiAhT0JKX1VOVFJVU1RFRChrbGFzcykpIHsKIAlyYl9yYWlz ZShyYl9lU2VjdXJpdHlFcnJvciwgIkluc2VjdXJlOiBjYW4ndCByZW1vdmUg bWV0aG9kIik7CiAgICAgfQotICAgIGlmIChPQkpfRlJPWkVOKGtsYXNzKSkK LQlyYl9lcnJvcl9mcm96ZW4oImNsYXNzL21vZHVsZSIpOworICAgIHJiX2No ZWNrX2Zyb3plbihrbGFzcyk7CiAgICAgaWYgKG1pZCA9PSBvYmplY3RfaWQg fHwgbWlkID09IGlkX19zZW5kX18gfHwgbWlkID09IGlkSW5pdGlhbGl6ZSkg ewogCXJiX3dhcm4oInJlbW92aW5nIGAlcycgbWF5IGNhdXNlIHNlcmlvdXMg cHJvYmxlbXMiLCByYl9pZDJuYW1lKG1pZCkpOwogICAgIH0K --mimepart_4c7f969d2eea1_ef64cf564e3336--