From: Annamalai Gurusami Date: March 9 2012 9:33am Subject: bzr push into mysql-5.1 branch (annamalai.gurusami:3703 to 3704) Bug#11766634 List-Archive: http://lists.mysql.com/commits/143145 X-Bug: 11766634 Message-Id: <201203090933.q299XeLe029490@acsmt357.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 IDM3MDQgQW5uYW1hbGFpIEd1cnVzYW1pCTIwMTItMDMtMDkKICAgICAgQnVnICMxMTc2NjYzNCA1 OTc4MzogSW5ub0RCIGRhdGEgZ3Jvd3MgdW5leHBlY3RlZGx5IHdoZW4gaW5zZXJ0aW5nLAogICAg ICB0cnVuY2F0aW5nLCBpbnNlcnRpbmcgdGhlIHNhbWUgc2V0IG9mIHJvd3MuIFdoZW4gYSB0YWJs ZSBpcyAKICAgICAgcmUtY3JlYXRlZCB3aXRoIHRoZSBzYW1lIHNldCBvZiByb3dzLCB0aGUgZGF0 YSBmaWxlIHNpemUgbXVzdAogICAgICBub3QgZ3Jvdy4gIAogICAgICAKICAgICAgcmI6OTY4CiAg ICAgIEFwcHJvdmVkIGJ5IE1hcmtvLiAKCiAgICBhZGRlZDoKICAgICAgbXlzcWwtdGVzdC9zdWl0 ZS9pbm5vZGIvci9pbm5vZGJfYnVnMTE3NjY2MzQucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3Vp dGUvaW5ub2RiL3QvaW5ub2RiX2J1ZzExNzY2NjM0LnRlc3QKICAgICAgbXlzcWwtdGVzdC9zdWl0 ZS9pbm5vZGJfcGx1Z2luL3IvaW5ub2RiX2J1ZzExNzY2NjM0LnJlc3VsdAogICAgICBteXNxbC10 ZXN0L3N1aXRlL2lubm9kYl9wbHVnaW4vdC9pbm5vZGJfYnVnMTE3NjY2MzQudGVzdAogICAgbW9k aWZpZWQ6CiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvZnNwL2ZzcDBmc3AuYwogICAgICBzdG9yYWdl L2lubm9kYl9wbHVnaW4vZnNwL2ZzcDBmc3AuYwogMzcwMyBNYXJrbyBNw6RrZWzDpAkyMDEyLTAz LTA4CiAgICAgIEZpeCBhIGNvbXBpbGVyIHdhcm5pbmcgYWJvdXQgcG9zc2libHkgdW5pbml0aWFp emxpZWQgdmFyaWFibGUuCgogICAgbW9kaWZpZWQ6CiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvYnRy L2J0cjBwY3VyLmMKICAgICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2J0ci9idHIwcGN1ci5jCj09 PSBhZGRlZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2lubm9kYi9yL2lubm9kYl9idWcxMTc2NjYz NC5yZXN1bHQnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiX2J1ZzExNzY2 NjM0LnJlc3VsdAkxOTcwLTAxLTAxIDAwOjAwOjAwICswMDAwCisrKyBiL215c3FsLXRlc3Qvc3Vp dGUvaW5ub2RiL3IvaW5ub2RiX2J1ZzExNzY2NjM0LnJlc3VsdAlyZXZpZDphbm5hbWFsYWkuZ3Vy dXNhbWlAb3JhY2xlLmNvbS0yMDEyMDMwOTA1MzcxNi1peHgycGYyamNjZG80cTI0CkBAIC0wLDAg KzEsNiBAQAorY3JlYXRlIHRhYmxlIHQxIChmMSBjaGFyKDI1NSkpIGVuZ2luZSBpbm5vZGI7Citp YmRhdGExIHNpemU6IDI3MjYyOTc2IGJ5dGVzCitkcm9wIHRhYmxlIHQxOworY3JlYXRlIHRhYmxl IHQxIChmMSBjaGFyKDI1NSkpIGVuZ2luZSBpbm5vZGI7CitpYmRhdGExIHNpemU6IDI3MjYyOTc2 IGJ5dGVzCitkcm9wIHRhYmxlIHQxOwoKPT09IGFkZGVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUv aW5ub2RiL3QvaW5ub2RiX2J1ZzExNzY2NjM0LnRlc3QnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUv aW5ub2RiL3QvaW5ub2RiX2J1ZzExNzY2NjM0LnRlc3QJMTk3MC0wMS0wMSAwMDowMDowMCArMDAw MAorKysgYi9teXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYl9idWcxMTc2NjYzNC50ZXN0 CXJldmlkOmFubmFtYWxhaS5ndXJ1c2FtaUBvcmFjbGUuY29tLTIwMTIwMzA5MDUzNzE2LWl4eDJw ZjJqY2NkbzRxMjQKQEAgLTAsMCArMSw1MSBAQAorIyBCdWcgMTE3NjY2MzQgNTk3ODM6IElubm9E QiBkYXRhIGdyb3dzIHVuZXhwZWN0ZWRseSB3aGVuIGluc2VydGluZywKKyMgdHJ1bmNhdGluZywg aW5zZXJ0aW5nIHRoZSBzYW1lIHNldCBvZiByb3dzLgorIworIyBTY2VuYXJpbzoKKyMgY3JlYXRl IHRhYmxlIHQxLiAgSW5zZXJ0ICRyZWNzIHJlY29yZHMuICBjaGVjayBzaXplIG9mIGliZGF0YTEu CisjIGRyb3AgdGFibGUgdDEuICBjcmVhdGUgdGFibGUgdDEuICBJbnNlcnQgdGhlIHNhbWUgc2V0 IG9mICRyZWNzCisjIHJlY29yZHMuICBUaGUgc2l6ZSBvZiBpYmRhdGExIG11c3Qgbm90IGluY3Jl YXNlLgorIworCistLSBzb3VyY2UgaW5jbHVkZS9ub3RfZW1iZWRkZWQuaW5jCistLSBzb3VyY2Ug aW5jbHVkZS9oYXZlX2lubm9kYi5pbmMKKworY3JlYXRlIHRhYmxlIHQxIChmMSBjaGFyKDI1NSkp IGVuZ2luZSBpbm5vZGI7CitsZXQgJE1ZU1FMRF9EQVRBRElSPWBzZWxlY3QgQEBkYXRhZGlyYDsK K2xldCBJQkRBVEExPSRNWVNRTERfREFUQURJUi9pYmRhdGExOworCitsZXQgJHJlY3MgPSAzNjI2 MjsKKworLS1kaXNhYmxlX3F1ZXJ5X2xvZworbGV0ICRjID0gJHJlY3M7Cit3aGlsZSAoJGMpCit7 CisgIGluc2VydCBpbnRvIHQxIHZhbHVlcyAoJ0hlbGxvIFdvcmxkJyk7CisgIGRlYyAkYzsKK30K Ky0tZW5hYmxlX3F1ZXJ5X2xvZworCitwZXJsOworbXkgJGZpbGVzaXplID0gLXMgJEVOVnsnSUJE QVRBMSd9OworcHJpbnQgImliZGF0YTEgc2l6ZTogJGZpbGVzaXplIGJ5dGVzXG4iOworRU9GCisK K2Ryb3AgdGFibGUgdDE7CitjcmVhdGUgdGFibGUgdDEgKGYxIGNoYXIoMjU1KSkgZW5naW5lIGlu bm9kYjsKKworLS1kaXNhYmxlX3F1ZXJ5X2xvZworbGV0ICRjID0gJHJlY3M7Cit3aGlsZSAoJGMp Cit7CisgIGluc2VydCBpbnRvIHQxIHZhbHVlcyAoJ0hlbGxvIFdvcmxkJyk7CisgIGRlYyAkYzsK K30KKy0tZW5hYmxlX3F1ZXJ5X2xvZworCitwZXJsOworbXkgJGZpbGVzaXplID0gLXMgJEVOVnsn SUJEQVRBMSd9OworcHJpbnQgImliZGF0YTEgc2l6ZTogJGZpbGVzaXplIGJ5dGVzXG4iOworRU9G CisKK2Ryb3AgdGFibGUgdDE7CisKCj09PSBhZGRlZCBmaWxlICdteXNxbC10ZXN0L3N1aXRlL2lu bm9kYl9wbHVnaW4vci9pbm5vZGJfYnVnMTE3NjY2MzQucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0 L3N1aXRlL2lubm9kYl9wbHVnaW4vci9pbm5vZGJfYnVnMTE3NjY2MzQucmVzdWx0CTE5NzAtMDEt MDEgMDA6MDA6MDAgKzAwMDAKKysrIGIvbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGJfcGx1Z2luL3Iv aW5ub2RiX2J1ZzExNzY2NjM0LnJlc3VsdAlyZXZpZDphbm5hbWFsYWkuZ3VydXNhbWlAb3JhY2xl LmNvbS0yMDEyMDMwOTA1MzcxNi1peHgycGYyamNjZG80cTI0CkBAIC0wLDAgKzEsNiBAQAorY3Jl YXRlIHRhYmxlIHQxIChmMSBjaGFyKDI1NSkpIGVuZ2luZSBpbm5vZGI7CitpYmRhdGExIHNpemU6 IDI3MjYyOTc2IGJ5dGVzCitkcm9wIHRhYmxlIHQxOworY3JlYXRlIHRhYmxlIHQxIChmMSBjaGFy KDI1NSkpIGVuZ2luZSBpbm5vZGI7CitpYmRhdGExIHNpemU6IDI3MjYyOTc2IGJ5dGVzCitkcm9w IHRhYmxlIHQxOwoKPT09IGFkZGVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiX3BsdWdp bi90L2lubm9kYl9idWcxMTc2NjYzNC50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2lubm9k Yl9wbHVnaW4vdC9pbm5vZGJfYnVnMTE3NjY2MzQudGVzdAkxOTcwLTAxLTAxIDAwOjAwOjAwICsw MDAwCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiX3BsdWdpbi90L2lubm9kYl9idWcxMTc2 NjYzNC50ZXN0CXJldmlkOmFubmFtYWxhaS5ndXJ1c2FtaUBvcmFjbGUuY29tLTIwMTIwMzA5MDUz NzE2LWl4eDJwZjJqY2NkbzRxMjQKQEAgLTAsMCArMSw1MSBAQAorIyBCdWcgMTE3NjY2MzQgNTk3 ODM6IElubm9EQiBkYXRhIGdyb3dzIHVuZXhwZWN0ZWRseSB3aGVuIGluc2VydGluZywKKyMgdHJ1 bmNhdGluZywgaW5zZXJ0aW5nIHRoZSBzYW1lIHNldCBvZiByb3dzLgorIworIyBTY2VuYXJpbzoK KyMgY3JlYXRlIHRhYmxlIHQxLiAgSW5zZXJ0ICRyZWNzIHJlY29yZHMuICBjaGVjayBzaXplIG9m IGliZGF0YTEuCisjIGRyb3AgdGFibGUgdDEuICBjcmVhdGUgdGFibGUgdDEuICBJbnNlcnQgdGhl IHNhbWUgc2V0IG9mICRyZWNzCisjIHJlY29yZHMuICBUaGUgc2l6ZSBvZiBpYmRhdGExIG11c3Qg bm90IGluY3JlYXNlLgorIworCistLSBzb3VyY2UgaW5jbHVkZS9ub3RfZW1iZWRkZWQuaW5jCist LSBzb3VyY2UgaW5jbHVkZS9oYXZlX2lubm9kYl9wbHVnaW4uaW5jCisKK2NyZWF0ZSB0YWJsZSB0 MSAoZjEgY2hhcigyNTUpKSBlbmdpbmUgaW5ub2RiOworbGV0ICRNWVNRTERfREFUQURJUj1gc2Vs ZWN0IEBAZGF0YWRpcmA7CitsZXQgSUJEQVRBMT0kTVlTUUxEX0RBVEFESVIvaWJkYXRhMTsKKwor bGV0ICRyZWNzID0gMzYyNjI7CisKKy0tZGlzYWJsZV9xdWVyeV9sb2cKK2xldCAkYyA9ICRyZWNz Oword2hpbGUgKCRjKQoreworICBpbnNlcnQgaW50byB0MSB2YWx1ZXMgKCdIZWxsbyBXb3JsZCcp OworICBkZWMgJGM7Cit9CistLWVuYWJsZV9xdWVyeV9sb2cKKworcGVybDsKK215ICRmaWxlc2l6 ZSA9IC1zICRFTlZ7J0lCREFUQTEnfTsKK3ByaW50ICJpYmRhdGExIHNpemU6ICRmaWxlc2l6ZSBi eXRlc1xuIjsKK0VPRgorCitkcm9wIHRhYmxlIHQxOworY3JlYXRlIHRhYmxlIHQxIChmMSBjaGFy KDI1NSkpIGVuZ2luZSBpbm5vZGI7CisKKy0tZGlzYWJsZV9xdWVyeV9sb2cKK2xldCAkYyA9ICRy ZWNzOword2hpbGUgKCRjKQoreworICBpbnNlcnQgaW50byB0MSB2YWx1ZXMgKCdIZWxsbyBXb3Js ZCcpOworICBkZWMgJGM7Cit9CistLWVuYWJsZV9xdWVyeV9sb2cKKworcGVybDsKK215ICRmaWxl c2l6ZSA9IC1zICRFTlZ7J0lCREFUQTEnfTsKK3ByaW50ICJpYmRhdGExIHNpemU6ICRmaWxlc2l6 ZSBieXRlc1xuIjsKK0VPRgorCitkcm9wIHRhYmxlIHQxOworCgo9PT0gbW9kaWZpZWQgZmlsZSAn c3RvcmFnZS9pbm5vYmFzZS9mc3AvZnNwMGZzcC5jJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL2Zz cC9mc3AwZnNwLmMJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjAzMDgxNTEwMTAt aWI4a2J4ZTJhajdiZjBwMAorKysgYi9zdG9yYWdlL2lubm9iYXNlL2ZzcC9mc3AwZnNwLmMJcmV2 aWQ6YW5uYW1hbGFpLmd1cnVzYW1pQG9yYWNsZS5jb20tMjAxMjAzMDkwNTM3MTYtaXh4MnBmMmpj Y2RvNHEyNApAQCAtMjQ1LDEzICsyNDUsMTMgQEAgZnNlZ19uX3Jlc2VydmVkX3BhZ2VzX2xvdygK IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioKIE1hcmtzIGEgcGFnZSB1c2VkLiBUaGUgcGFnZSBtdXN0IHJlc2lk ZSB3aXRoaW4gdGhlIGV4dGVudHMgb2YgdGhlIGdpdmVuCiBzZWdtZW50LiAqLwotc3RhdGljCitz dGF0aWMgX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpCiB2b2lkCiBmc2VnX21hcmtfcGFnZV91c2Vk KAogLyo9PT09PT09PT09PT09PT09Ki8KIAlmc2VnX2lub2RlX3QqCXNlZ19pbm9kZSwvKiBpbjog c2VnbWVudCBpbm9kZSAqLwotCXVsaW50CQlzcGFjZSwJLyogaW46IHNwYWNlIGlkICovCiAJdWxp bnQJCXBhZ2UsCS8qIGluOiBwYWdlIG9mZnNldCAqLworCXhkZXNfdCoJCWRlc2NyLAkvKiBpbjog ZXh0ZW50IGRlc2NyaXB0b3IgKi8KIAltdHJfdCoJCW10cik7CS8qIGluOiBtdHIgKi8KIC8qKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKgogUmV0dXJucyB0aGUgZmlyc3QgZXh0ZW50IGRlc2NyaXB0b3IgZm9yIGEg c2VnbWVudC4gV2UgdGhpbmsgb2YgdGhlIGV4dGVudApAQCAtNjM1LDEwICs2MzUsOCBAQCB4ZGVz X2NhbGNfZGVzY3JpcHRvcl9pbmRleCgKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogR2V0cyBwb2ludGVy IHRvIGEgdGhlIGV4dGVudCBkZXNjcmlwdG9yIG9mIGEgcGFnZS4gVGhlIHBhZ2Ugd2hlcmUgdGhl IGV4dGVudAotZGVzY3JpcHRvciByZXNpZGVzIGlzIHgtbG9ja2VkLiBJZiB0aGUgcGFnZSBvZmZz ZXQgaXMgZXF1YWwgdG8gdGhlIGZyZWUgbGltaXQKLW9mIHRoZSBzcGFjZSwgYWRkcyBuZXcgZXh0 ZW50cyBmcm9tIGFib3ZlIHRoZSBmcmVlIGxpbWl0IHRvIHRoZSBzcGFjZSBmcmVlCi1saXN0LCBp ZiBub3QgZnJlZSBsaW1pdCA9PSBzcGFjZSBzaXplLiBUaGlzIGFkZGluZyBpcyBuZWNlc3Nhcnkg dG8gbWFrZSB0aGUKLWRlc2NyaXB0b3IgZGVmaW5lZCwgYXMgdGhleSBhcmUgdW5pbml0aWFsaXpl ZCBhYm92ZSB0aGUgZnJlZSBsaW1pdC4gKi8KK2Rlc2NyaXB0b3IgcmVzaWRlcyBpcyB4LWxvY2tl ZC4gVGhpcyBmdW5jdGlvbiBubyBsb25nZXIgZXh0ZW5kcyB0aGUgZGF0YQorZmlsZS4gKi8KIFVO SVZfSU5MSU5FCiB4ZGVzX3QqCiB4ZGVzX2dldF9kZXNjcmlwdG9yX3dpdGhfc3BhY2VfaGRyKApA QCAtNjY2LDE5ICs2NjQsMTAgQEAgeGRlc19nZXRfZGVzY3JpcHRvcl93aXRoX3NwYWNlX2hkcigK IAlsaW1pdCA9IG10cl9yZWFkX3VsaW50KHNwX2hlYWRlciArIEZTUF9GUkVFX0xJTUlULCBNTE9H XzRCWVRFUywgbXRyKTsKIAlzaXplICA9IG10cl9yZWFkX3VsaW50KHNwX2hlYWRlciArIEZTUF9T SVpFLCBNTE9HXzRCWVRFUywgbXRyKTsKIAotCS8qIElmIG9mZnNldCBpcyA+PSBzaXplIG9yID4g bGltaXQsIHJldHVybiBOVUxMICovCi0KLQlpZiAoKG9mZnNldCA+PSBzaXplKSB8fCAob2Zmc2V0 ID4gbGltaXQpKSB7Ci0KKwlpZiAoKG9mZnNldCA+PSBzaXplKSB8fCAob2Zmc2V0ID49IGxpbWl0 KSkgewogCQlyZXR1cm4oTlVMTCk7CiAJfQogCi0JLyogSWYgb2Zmc2V0IGlzID09IGxpbWl0LCBm aWxsIGZyZWUgbGlzdCBvZiB0aGUgc3BhY2UuICovCi0KLQlpZiAob2Zmc2V0ID09IGxpbWl0KSB7 Ci0JCWZzcF9maWxsX2ZyZWVfbGlzdChGQUxTRSwgc3BhY2UsIHNwX2hlYWRlciwgbXRyKTsKLQl9 Ci0KIAlkZXNjcl9wYWdlX25vID0geGRlc19jYWxjX2Rlc2NyaXB0b3JfcGFnZShvZmZzZXQpOwog CiAJaWYgKGRlc2NyX3BhZ2Vfbm8gPT0gMCkgewpAQCAtMjU1Miw3ICsyNTQxLDcgQEAgZnNlZ19h bGxvY19mcmVlX3BhZ2VfbG93KAogCQl1dF9hZCh4ZGVzX2dldF9iaXQocmV0X2Rlc2NyLCBYREVT X0ZSRUVfQklULAogCQkJCSAgIHJldF9wYWdlICUgRlNQX0VYVEVOVF9TSVpFLCBtdHIpID09IFRS VUUpOwogCi0JCWZzZWdfbWFya19wYWdlX3VzZWQoc2VnX2lub2RlLCBzcGFjZSwgcmV0X3BhZ2Us IG10cik7CisJCWZzZWdfbWFya19wYWdlX3VzZWQoc2VnX2lub2RlLCByZXRfcGFnZSwgcmV0X2Rl c2NyLCBtdHIpOwogCX0KIAogCXJldHVybihyZXRfcGFnZSk7CkBAIC0yOTQ2LDIyICsyOTM1LDE3 IEBAIGZzcF9nZXRfYXZhaWxhYmxlX3NwYWNlX2luX2ZyZWVfZXh0ZW50cygKIC8qKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioKIE1hcmtzIGEgcGFnZSB1c2VkLiBUaGUgcGFnZSBtdXN0IHJlc2lkZSB3aXRoaW4gdGhl IGV4dGVudHMgb2YgdGhlIGdpdmVuCiBzZWdtZW50LiAqLwotc3RhdGljCitzdGF0aWMgX19hdHRy aWJ1dGVfXygobm9ubnVsbCkpCiB2b2lkCiBmc2VnX21hcmtfcGFnZV91c2VkKAogLyo9PT09PT09 PT09PT09PT09Ki8KIAlmc2VnX2lub2RlX3QqCXNlZ19pbm9kZSwvKiBpbjogc2VnbWVudCBpbm9k ZSAqLwotCXVsaW50CQlzcGFjZSwJLyogaW46IHNwYWNlIGlkICovCiAJdWxpbnQJCXBhZ2UsCS8q IGluOiBwYWdlIG9mZnNldCAqLworCXhkZXNfdCoJCWRlc2NyLCAgLyogaW46IGV4dGVudCBkZXNj cmlwdG9yICovCiAJbXRyX3QqCQltdHIpCS8qIGluOiBtdHIgKi8KIHsKLQl4ZGVzX3QqCWRlc2Ny OwogCXVsaW50CW5vdF9mdWxsX25fdXNlZDsKIAotCXV0X2FkKHNlZ19pbm9kZSAmJiBtdHIpOwot Ci0JZGVzY3IgPSB4ZGVzX2dldF9kZXNjcmlwdG9yKHNwYWNlLCBwYWdlLCBtdHIpOwotCiAJdXRf YWQobXRyX3JlYWRfdWxpbnQoc2VnX2lub2RlICsgRlNFR19JRCwgTUxPR180QllURVMsIG10cikK IAkgICAgICA9PSBtdHJfcmVhZF91bGludChkZXNjciArIFhERVNfSUQsIE1MT0dfNEJZVEVTLCBt dHIpKTsKIAoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9mc3AvZnNw MGZzcC5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vZnNwL2ZzcDBmc3AuYwlyZXZpZDpt YXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEyMDMwODE1MTAxMC1pYjhrYnhlMmFqN2JmMHAwCisr KyBiL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9mc3AvZnNwMGZzcC5jCXJldmlkOmFubmFtYWxhaS5n dXJ1c2FtaUBvcmFjbGUuY29tLTIwMTIwMzA5MDUzNzE2LWl4eDJwZjJqY2NkbzRxMjQKQEAgLTI3 MywxNSArMjczLDEzIEBAIGZzZWdfbl9yZXNlcnZlZF9wYWdlc19sb3coCiAvKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov LyoqCiBNYXJrcyBhIHBhZ2UgdXNlZC4gVGhlIHBhZ2UgbXVzdCByZXNpZGUgd2l0aGluIHRoZSBl eHRlbnRzIG9mIHRoZSBnaXZlbgogc2VnbWVudC4gKi8KLXN0YXRpYworc3RhdGljIF9fYXR0cmli dXRlX18oKG5vbm51bGwpKQogdm9pZAogZnNlZ19tYXJrX3BhZ2VfdXNlZCgKIC8qPT09PT09PT09 PT09PT09PSovCiAJZnNlZ19pbm9kZV90KglzZWdfaW5vZGUsLyohPCBpbjogc2VnbWVudCBpbm9k ZSAqLwotCXVsaW50CQlzcGFjZSwJLyohPCBpbjogc3BhY2UgaWQgKi8KLQl1bGludAkJemlwX3Np emUsLyohPCBpbjogY29tcHJlc3NlZCBwYWdlIHNpemUgaW4gYnl0ZXMKLQkJCQlvciAwIGZvciB1 bmNvbXByZXNzZWQgcGFnZXMgKi8KIAl1bGludAkJcGFnZSwJLyohPCBpbjogcGFnZSBvZmZzZXQg Ki8KKwl4ZGVzX3QqCQlkZXNjciwgLyogZXh0ZW50IGRlc2NyaXB0b3IgKi8KIAltdHJfdCoJCW10 cik7CS8qITwgaW46IG10ciAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBSZXR1cm5zIHRoZSBmaXJz dCBleHRlbnQgZGVzY3JpcHRvciBmb3IgYSBzZWdtZW50LiBXZSB0aGluayBvZiB0aGUgZXh0ZW50 CkBAIC03MDUsMTIgKzcwMywxMCBAQCB4ZGVzX2NhbGNfZGVzY3JpcHRvcl9pbmRleCgKIAogLyoq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqLy8qKgogR2V0cyBwb2ludGVyIHRvIGEgdGhlIGV4dGVudCBkZXNjcmlwdG9yIG9m IGEgcGFnZS4gVGhlIHBhZ2Ugd2hlcmUgdGhlIGV4dGVudAotZGVzY3JpcHRvciByZXNpZGVzIGlz IHgtbG9ja2VkLiBJZiB0aGUgcGFnZSBvZmZzZXQgaXMgZXF1YWwgdG8gdGhlIGZyZWUgbGltaXQK LW9mIHRoZSBzcGFjZSwgYWRkcyBuZXcgZXh0ZW50cyBmcm9tIGFib3ZlIHRoZSBmcmVlIGxpbWl0 IHRvIHRoZSBzcGFjZSBmcmVlCi1saXN0LCBpZiBub3QgZnJlZSBsaW1pdCA9PSBzcGFjZSBzaXpl LiBUaGlzIGFkZGluZyBpcyBuZWNlc3NhcnkgdG8gbWFrZSB0aGUKLWRlc2NyaXB0b3IgZGVmaW5l ZCwgYXMgdGhleSBhcmUgdW5pbml0aWFsaXplZCBhYm92ZSB0aGUgZnJlZSBsaW1pdC4KK2Rlc2Ny aXB0b3IgcmVzaWRlcyBpcyB4LWxvY2tlZC4gVGhpcyBmdW5jdGlvbiBubyBsb25nZXIgZXh0ZW5k cyB0aGUgZGF0YQorZmlsZS4KIEByZXR1cm4gcG9pbnRlciB0byB0aGUgZXh0ZW50IGRlc2NyaXB0 b3IsIE5VTEwgaWYgdGhlIHBhZ2UgZG9lcyBub3QKLWV4aXN0IGluIHRoZSBzcGFjZSBvciBpZiB0 aGUgb2Zmc2V0IGV4Y2VlZHMgdGhlIGZyZWUgbGltaXQgKi8KK2V4aXN0IGluIHRoZSBzcGFjZSBv ciBpZiB0aGUgb2Zmc2V0IGlzID49IHRoZSBmcmVlIGxpbWl0ICovCiBVTklWX0lOTElORSBfX2F0 dHJpYnV0ZV9fKChub25udWxsLCB3YXJuX3VudXNlZF9yZXN1bHQpKQogeGRlc190KgogeGRlc19n ZXRfZGVzY3JpcHRvcl93aXRoX3NwYWNlX2hkcigKQEAgLTc0MCwxOSArNzM2LDEwIEBAIHhkZXNf Z2V0X2Rlc2NyaXB0b3Jfd2l0aF9zcGFjZV9oZHIoCiAJemlwX3NpemUgPSBkaWN0X3RhYmxlX2Zs YWdzX3RvX3ppcF9zaXplKAogCQltYWNoX3JlYWRfZnJvbV80KHNwX2hlYWRlciArIEZTUF9TUEFD RV9GTEFHUykpOwogCi0JLyogSWYgb2Zmc2V0IGlzID49IHNpemUgb3IgPiBsaW1pdCwgcmV0dXJu IE5VTEwgKi8KLQotCWlmICgob2Zmc2V0ID49IHNpemUpIHx8IChvZmZzZXQgPiBsaW1pdCkpIHsK LQorCWlmICgob2Zmc2V0ID49IHNpemUpIHx8IChvZmZzZXQgPj0gbGltaXQpKSB7CiAJCXJldHVy bihOVUxMKTsKIAl9CiAKLQkvKiBJZiBvZmZzZXQgaXMgPT0gbGltaXQsIGZpbGwgZnJlZSBsaXN0 IG9mIHRoZSBzcGFjZS4gKi8KLQotCWlmIChvZmZzZXQgPT0gbGltaXQpIHsKLQkJZnNwX2ZpbGxf ZnJlZV9saXN0KEZBTFNFLCBzcGFjZSwgc3BfaGVhZGVyLCBtdHIpOwotCX0KLQogCWRlc2NyX3Bh Z2Vfbm8gPSB4ZGVzX2NhbGNfZGVzY3JpcHRvcl9wYWdlKHppcF9zaXplLCBvZmZzZXQpOwogCiAJ aWYgKGRlc2NyX3BhZ2Vfbm8gPT0gMCkgewpAQCAtMjg3Nyw3ICsyODY0LDcgQEAgZ290X2hpbnRl ZF9wYWdlOgogCQl1dF9hZCh4ZGVzX2dldF9iaXQocmV0X2Rlc2NyLCBYREVTX0ZSRUVfQklULAog CQkJCSAgIHJldF9wYWdlICUgRlNQX0VYVEVOVF9TSVpFLCBtdHIpID09IFRSVUUpOwogCi0JCWZz ZWdfbWFya19wYWdlX3VzZWQoc2VnX2lub2RlLCBzcGFjZSwgemlwX3NpemUsIHJldF9wYWdlLCBt dHIpOworCQlmc2VnX21hcmtfcGFnZV91c2VkKHNlZ19pbm9kZSwgcmV0X3BhZ2UsIHJldF9kZXNj ciwgbXRyKTsKIAl9CiAKIAlyZXR1cm4oZnNwX3BhZ2VfY3JlYXRlKApAQCAtMzI4MywyNyArMzI3 MCwyMSBAQCBmc3BfZ2V0X2F2YWlsYWJsZV9zcGFjZV9pbl9mcmVlX2V4dGVudHMoCiAvKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKiovLyoqCiBNYXJrcyBhIHBhZ2UgdXNlZC4gVGhlIHBhZ2UgbXVzdCByZXNpZGUgd2l0aGlu IHRoZSBleHRlbnRzIG9mIHRoZSBnaXZlbgogc2VnbWVudC4gKi8KLXN0YXRpYworc3RhdGljIF9f YXR0cmlidXRlX18oKG5vbm51bGwpKQogdm9pZAogZnNlZ19tYXJrX3BhZ2VfdXNlZCgKIC8qPT09 PT09PT09PT09PT09PSovCiAJZnNlZ19pbm9kZV90KglzZWdfaW5vZGUsLyohPCBpbjogc2VnbWVu dCBpbm9kZSAqLwotCXVsaW50CQlzcGFjZSwJLyohPCBpbjogc3BhY2UgaWQgKi8KLQl1bGludAkJ emlwX3NpemUsLyohPCBpbjogY29tcHJlc3NlZCBwYWdlIHNpemUgaW4gYnl0ZXMKLQkJCQlvciAw IGZvciB1bmNvbXByZXNzZWQgcGFnZXMgKi8KIAl1bGludAkJcGFnZSwJLyohPCBpbjogcGFnZSBv ZmZzZXQgKi8KKwl4ZGVzX3QqCQlkZXNjciwgLyogZXh0ZW50IGRlc2NyaXB0b3IgKi8KIAltdHJf dCoJCW10cikJLyohPCBpbjogbXRyICovCiB7Ci0JeGRlc190KglkZXNjcjsKIAl1bGludAlub3Rf ZnVsbF9uX3VzZWQ7CiAKLQl1dF9hZChzZWdfaW5vZGUgJiYgbXRyKTsKIAl1dF9hZCghKChwYWdl X29mZnNldChzZWdfaW5vZGUpIC0gRlNFR19BUlJfT0ZGU0VUKSAlIEZTRUdfSU5PREVfU0laRSkp OwogCXV0X2FkKG1hY2hfcmVhZF9mcm9tXzQoc2VnX2lub2RlICsgRlNFR19NQUdJQ19OKQogCSAg ICAgID09IEZTRUdfTUFHSUNfTl9WQUxVRSk7CiAKLQlkZXNjciA9IHhkZXNfZ2V0X2Rlc2NyaXB0 b3Ioc3BhY2UsIHppcF9zaXplLCBwYWdlLCBtdHIpOwotCiAJdXRfYWQobXRyX3JlYWRfdWxpbnQo c2VnX2lub2RlICsgRlNFR19JRCwgTUxPR180QllURVMsIG10cikKIAkgICAgICA9PSBtdHJfcmVh ZF91bGludChkZXNjciArIFhERVNfSUQsIE1MT0dfNEJZVEVTLCBtdHIpKTsKIAoKTm8gYnVuZGxl IChyZWFzb246IHVzZWxlc3MgZm9yIHB1c2ggZW1haWxzKS4=