From: marko.makela Date: December 21 2010 9:39am Subject: bzr commit into mysql-5.1-innodb branch (marko.makela:3669) Bug#58912 List-Archive: http://lists.mysql.com/commits/127362 X-Bug: 58912 Message-Id: <201012210940.oBL8ZSXv028824@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0224353565==" --===============0224353565== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline I0F0IGZpbGU6Ly8vaG9tZS9tYXJrby9pbm5vYmFzZS9kZXYvbXlzcWwyYS81LjEtaW5ub2RiLyBi YXNlZCBvbiByZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAxMjE0MDkzODE5LXdiMm9m Zm1rZ3pjejI3MjUKCiAzNjY5IE1hcmtvIE3DpGtlbMOkCTIwMTAtMTItMjEKICAgICAgQnVnIzU4 OTEyIElubm9EQiB1bm5lY2Vzc2FyaWx5IGF2b2lkcyB1cGRhdGUtaW4tcGxhY2Ugb24gY29sdW1u IHByZWZpeCBpbmRleGVzCiAgICAgIAogICAgICByb3dfdXBkX2NoYW5nZXNfb3JkX2ZpZWxkX2Jp bmFyeSgpOiBEbyBub3QgcmV0dXJuIFRSVUUgaWYgdGhlIHVwZGF0ZQogICAgICB2ZWN0b3IgY2hh bmdlcyBhIGNvbHVtbiB0aGF0IGlzIGNvdmVyZWQgYnkgYSBwcmVmaXggaW5kZXgsIGJ1dCBkb2Vz CiAgICAgIG5vdCBjaGFuZ2UgdGhlIGNvbHVtbiBwcmVmaXguIEFkZCB0aGUgcm93X2V4dF90IHBh cmFtZXRlciBmb3IKICAgICAgZGV0ZXJtaW5pbmcgd2hldGhlciB0aGUgcHJlZml4ZXMgb2YgZXh0 ZXJuYWxseSBzdG9yZWQgY29sdW1ucyBtYXRjaC4KICAgICAgCiAgICAgIGRmaWVsZF9kYXRhc19h cmVfYmluYXJ5X2VxdWFsKCk6IEFkZCB0aGUgcGFyYW1ldGVyIGxlbiwgZm9yIGNvbXBhcmluZwog ICAgICBjb2x1bW4gcHJlZml4ZXMgd2hlbiBsZW4gPiAwLgogICAgICAKICAgICAgaW5ub2RiLnRl c3Q6IEFkZCBhIHRlc3QgY2FzZSB3aGVyZSB0aGUgcGF0Y2ggb2YgQnVnICM1NTI4NCBmYWlsZWQK ICAgICAgd2l0aG91dCB0aGlzIGZpeC4KICAgICAgCiAgICAgIHJiOjUzNyBhcHByb3ZlZCBieSBK aW1teSBZYW5nCgogICAgbW9kaWZpZWQ6CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvaW5ub2RiX3Bs dWdpbi9yL2lubm9kYi5yZXN1bHQKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGJfcGx1Z2lu L3QvaW5ub2RiLnRlc3QKICAgICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2luL0NoYW5nZUxvZwogICAg ICBzdG9yYWdlL2lubm9kYl9wbHVnaW4vYnRyL2J0cjBjdXIuYwogICAgICBzdG9yYWdlL2lubm9k Yl9wbHVnaW4vaW5jbHVkZS9kYXRhMGRhdGEuaAogICAgICBzdG9yYWdlL2lubm9kYl9wbHVnaW4v aW5jbHVkZS9kYXRhMGRhdGEuaWMKICAgICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2luY2x1ZGUv cm93MHVwZC5oCiAgICAgIHN0b3JhZ2UvaW5ub2RiX3BsdWdpbi9yb3cvcm93MHB1cmdlLmMKICAg ICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2luL3Jvdy9yb3cwdW1vZC5jCiAgICAgIHN0b3JhZ2UvaW5u b2RiX3BsdWdpbi9yb3cvcm93MHVwZC5jCj09PSBtb2RpZmllZCBmaWxlICdteXNxbC10ZXN0L3N1 aXRlL2lubm9kYl9wbHVnaW4vci9pbm5vZGIucmVzdWx0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRl L2lubm9kYl9wbHVnaW4vci9pbm5vZGIucmVzdWx0CXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5j b20tMjAxMDEyMTQwOTM4MTktd2Iyb2ZmbWtnemN6MjcyNQorKysgYi9teXNxbC10ZXN0L3N1aXRl L2lubm9kYl9wbHVnaW4vci9pbm5vZGIucmVzdWx0CXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUu Y29tLTIwMTAxMjIxMDkzOTE5LW1jbW1nZDR6cHNlOTU2N2QKQEAgLTEsNSArMSw4IEBACiBkcm9w IHRhYmxlIGlmIGV4aXN0cyB0MSx0Mix0Myx0NDsKIGRyb3AgZGF0YWJhc2UgaWYgZXhpc3RzIG15 c3FsdGVzdDsKK0NSRUFURSBUQUJMRSBidWc1ODkxMiAoYSBCTE9CLCBiIFRFWFQsIFBSSU1BUlkg S0VZKGEoMSkpKSBFTkdJTkU9SW5ub0RCOworSU5TRVJUIElOVE8gYnVnNTg5MTIgVkFMVUVTKFJF UEVBVCgnYScsODAwMCksUkVQRUFUKCdiJyw4MDAwKSk7CitVUERBVEUgYnVnNTg5MTIgU0VUIGE9 UkVQRUFUKCdhJyw3OTk5KTsKIGNyZWF0ZSB0YWJsZSB0MSAoaWQgaW50IHVuc2lnbmVkIG5vdCBu dWxsIGF1dG9faW5jcmVtZW50LCBjb2RlIHRpbnlpbnQgdW5zaWduZWQgbm90IG51bGwsIG5hbWUg Y2hhcigyMCkgbm90IG51bGwsIHByaW1hcnkga2V5IChpZCksIGtleSAoY29kZSksIHVuaXF1ZSAo bmFtZSkpIGVuZ2luZT1pbm5vZGI7CiBpbnNlcnQgaW50byB0MSAoY29kZSwgbmFtZSkgdmFsdWVz ICgxLCAnVGltJyksICgxLCAnTW9udHknKSwgKDIsICdEYXZpZCcpLCAoMiwgJ0VyaWsnKSwgKDMs ICdTYXNoYScpLCAoMywgJ0plcmVteScpLCAoNCwgJ01hdHQnKTsKIHNlbGVjdCBpZCwgY29kZSwg bmFtZSBmcm9tIHQxIG9yZGVyIGJ5IGlkOwpAQCAtMTY3NiwxMCArMTY3OSwxMCBAQCB2YXJpYWJs ZV92YWx1ZSAtIEBpbm5vZGJfcm93c19kZWxldGVkX29yCiA3MQogU0VMRUNUIHZhcmlhYmxlX3Zh bHVlIC0gQGlubm9kYl9yb3dzX2luc2VydGVkX29yaWcgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEu Z2xvYmFsX3N0YXR1cyBXSEVSRSBMT1dFUih2YXJpYWJsZV9uYW1lKSA9ICdpbm5vZGJfcm93c19p bnNlcnRlZCc7CiB2YXJpYWJsZV92YWx1ZSAtIEBpbm5vZGJfcm93c19pbnNlcnRlZF9vcmlnCi0x MDY2CisxMDY3CiBTRUxFQ1QgdmFyaWFibGVfdmFsdWUgLSBAaW5ub2RiX3Jvd3NfdXBkYXRlZF9v cmlnIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLmdsb2JhbF9zdGF0dXMgV0hFUkUgTE9XRVIodmFy aWFibGVfbmFtZSkgPSAnaW5ub2RiX3Jvd3NfdXBkYXRlZCc7CiB2YXJpYWJsZV92YWx1ZSAtIEBp bm5vZGJfcm93c191cGRhdGVkX29yaWcKLTg2NQorODY2CiBTRUxFQ1QgdmFyaWFibGVfdmFsdWUg LSBAaW5ub2RiX3Jvd19sb2NrX3dhaXRzX29yaWcgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuZ2xv YmFsX3N0YXR1cyBXSEVSRSBMT1dFUih2YXJpYWJsZV9uYW1lKSA9ICdpbm5vZGJfcm93X2xvY2tf d2FpdHMnOwogdmFyaWFibGVfdmFsdWUgLSBAaW5ub2RiX3Jvd19sb2NrX3dhaXRzX29yaWcKIDAK QEAgLTMyMzksMyArMzI0Miw0IEBAIFZhcmlhYmxlX25hbWUJVmFsdWUKIEhhbmRsZXJfdXBkYXRl CTEKIFZhcmlhYmxlX25hbWUJVmFsdWUKIEhhbmRsZXJfZGVsZXRlCTEKK0RST1AgVEFCTEUgYnVn NTg5MTI7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGJfcGx1Z2lu L3QvaW5ub2RiLnRlc3QnCi0tLSBhL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiX3BsdWdpbi90L2lu bm9kYi50ZXN0CXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEyMTQwOTM4MTktd2Iy b2ZmbWtnemN6MjcyNQorKysgYi9teXNxbC10ZXN0L3N1aXRlL2lubm9kYl9wbHVnaW4vdC9pbm5v ZGIudGVzdAlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEwMTIyMTA5MzkxOS1tY21t Z2Q0enBzZTk1NjdkCkBAIC00Myw2ICs0MywxNSBAQCBkcm9wIHRhYmxlIGlmIGV4aXN0cyB0MSx0 Mix0Myx0NDsKIGRyb3AgZGF0YWJhc2UgaWYgZXhpc3RzIG15c3FsdGVzdDsKIC0tZW5hYmxlX3dh cm5pbmdzCiAKKyMgQnVnIzU4OTEyIElubm9EQiB1bm5lY2Vzc2FyaWx5IGF2b2lkcyB1cGRhdGUt aW4tcGxhY2Ugb24gY29sdW1uIHByZWZpeGVzCitDUkVBVEUgVEFCTEUgYnVnNTg5MTIgKGEgQkxP QiwgYiBURVhULCBQUklNQVJZIEtFWShhKDEpKSkgRU5HSU5FPUlubm9EQjsKK0lOU0VSVCBJTlRP IGJ1ZzU4OTEyIFZBTFVFUyhSRVBFQVQoJ2EnLDgwMDApLFJFUEVBVCgnYicsODAwMCkpOworVVBE QVRFIGJ1ZzU4OTEyIFNFVCBhPVJFUEVBVCgnYScsNzk5OSk7CisjIFRoZSBhYm92ZSBzdGF0ZW1l bnRzIHVzZWQgdG8gdHJpZ2dlciBhIGZhaWx1cmUgZHVyaW5nIHB1cmdlIHdoZW4KKyMgQnVnIzU1 Mjg0IHdhcyBmaXhlZCB3aGlsZSBCdWcjNTg5MTIgd2FzIG5vdC4gRGVmZXIgdGhlIERST1AgVEFC TEUsCisjIHNvIHRoYXQgcHVyZ2UgZ2V0cyBhIGNoYW5jZSB0byBydW4gKGFuZCBhIGRvdWJsZSBm cmVlIG9mIHRoZQorIyBvZmYtcGFnZSBjb2x1bW4gY2FuIGJlIGRldGVjdGVkLCBpZiBvbmUgaXMg dG8gb2NjdXIuKQorCiAjCiAjIFNtYWxsIGJhc2ljIHRlc3Qgd2l0aCBpZ25vcmUKICMKQEAgLTI1 NDEsNiArMjU1MCw5IEBAIFNFVCBHTE9CQUwgaW5ub2RiX3RocmVhZF9jb25jdXJyZW5jeSA9IEAK IAogLS0gZW5hYmxlX3F1ZXJ5X2xvZwogCisjIENsZWFuIHVwIGFmdGVyIHRoZSBCdWcjNTUyODQv QnVnIzU4OTEyIHRlc3QgY2FzZS4KK0RST1AgVEFCTEUgYnVnNTg5MTI7CisKICMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjCiAjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIwogIyBQbGVhc2UsIERPIE5PVCBUT1VDSCB0aGlzIGZpbGUgYXMg d2VsbCBhcyB0aGUgaW5ub2RiLnJlc3VsdCBmaWxlLiAgICMKCj09PSBtb2RpZmllZCBmaWxlICdz dG9yYWdlL2lubm9kYl9wbHVnaW4vQ2hhbmdlTG9nJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVn aW4vQ2hhbmdlTG9nCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEyMTQwOTM4MTkt d2Iyb2ZmbWtnemN6MjcyNQorKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vQ2hhbmdlTG9nCXJl dmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTAxMjIxMDkzOTE5LW1jbW1nZDR6cHNlOTU2 N2QKQEAgLTEsOCArMSwxOCBAQAorMjAxMC0xMi0yMQlUaGUgSW5ub0RCIFRlYW0KKworCSogaW5j bHVkZS9kYXRhMGRhdGEuaCwgaW5jbHVkZS9kYXRhMGRhdGEuaWMsIGluY2x1ZGUvcm93MHVwZC5o LAorCWJ0ci9idHIwY3VyLmMsIHJvdy9yb3cwcHVyZ2UuYywgcm93L3JvdzB1bW9kLmMsIHJvdy9y b3cwdXBkLmMsCisJaW5ub2RiLnJlc3VsdCwgaW5ub2RiLnRlc3Q6CisJRml4IEJ1ZyM1ODkxMiBJ bm5vREIgdW5uZWNlc3NhcmlseSBhdm9pZHMgdXBkYXRlLWluLXBsYWNlCisJb24gY29sdW1uIHBy ZWZpeCBpbmRleGVzCisKIDIwMTAtMTItMDkJVGhlIElubm9EQiBUZWFtCisKIAkqIGJ1Zi9idWYw bHJ1LmM6CiAJRml4IEJ1ZyM1NzYwMCBvdXRwdXQgb2YgSS9PIHN1bVslbHVdIGNhbiBnbyBuZWdh dGl2ZQogCiAyMDEwLTExLTExCVRoZSBJbm5vREIgVGVhbQorCiAJKiB0aHIvdGhyMGxvYy5jLCB0 cngvdHJ4MGlfcy5jOgogCUZpeCBCdWcjNTc4MDIgRW1wdHkgQVNTRVJUSU9OIHBhcmFtZXRlciBw YXNzZWQgdG8gdGhlIEhBU0hfU0VBUkNIIG1hY3JvCiAKCj09PSBtb2RpZmllZCBmaWxlICdzdG9y YWdlL2lubm9kYl9wbHVnaW4vYnRyL2J0cjBjdXIuYycKLS0tIGEvc3RvcmFnZS9pbm5vZGJfcGx1 Z2luL2J0ci9idHIwY3VyLmMJcmV2aWQ6dmFzaWwuZGltb3ZAb3JhY2xlLmNvbS0yMDEwMTIxNDA5 MzgxOS13YjJvZmZta2d6Y3oyNzI1CisrKyBiL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9idHIvYnRy MGN1ci5jCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTAxMjIxMDkzOTE5LW1jbW1n ZDR6cHNlOTU2N2QKQEAgLTE3NTYsNyArMTc1Niw4IEBAIGJ0cl9jdXJfdXBkYXRlX2luX3BsYWNl KAogCQlOT1QgY2FsbCBpdCBpZiBpbmRleCBpcyBzZWNvbmRhcnkgKi8KIAogCQlpZiAoIWRpY3Rf aW5kZXhfaXNfY2x1c3QoaW5kZXgpCi0JCSAgICB8fCByb3dfdXBkX2NoYW5nZXNfb3JkX2ZpZWxk X2JpbmFyeShOVUxMLCBpbmRleCwgdXBkYXRlKSkgeworCQkgICAgfHwgcm93X3VwZF9jaGFuZ2Vz X29yZF9maWVsZF9iaW5hcnkoTlVMTCwgTlVMTCwKKwkJCQkJCQlpbmRleCwgdXBkYXRlKSkgewog CiAJCQkvKiBSZW1vdmUgcG9zc2libGUgaGFzaCBpbmRleCBwb2ludGVyIHRvIHRoaXMgcmVjb3Jk ICovCiAJCQlidHJfc2VhcmNoX3VwZGF0ZV9oYXNoX29uX2RlbGV0ZShjdXJzb3IpOwoKPT09IG1v ZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9pbmNsdWRlL2RhdGEwZGF0YS5oJwot LS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVkZS9kYXRhMGRhdGEuaAlyZXZpZDp2YXNp bC5kaW1vdkBvcmFjbGUuY29tLTIwMTAxMjE0MDkzODE5LXdiMm9mZm1rZ3pjejI3MjUKKysrIGIv c3RvcmFnZS9pbm5vZGJfcGx1Z2luL2luY2x1ZGUvZGF0YTBkYXRhLmgJcmV2aWQ6bWFya28ubWFr ZWxhQG9yYWNsZS5jb20tMjAxMDEyMjEwOTM5MTktbWNtbWdkNHpwc2U5NTY3ZApAQCAtMTU0LDE0 ICsxNTQsMTkgQEAgZGZpZWxkX2R1cCgKIAlkZmllbGRfdCoJZmllbGQsCS8qITwgaW4vb3V0OiBk YXRhIGZpZWxkICovCiAJbWVtX2hlYXBfdCoJaGVhcCk7CS8qITwgaW46IG1lbW9yeSBoZWFwIHdo ZXJlIGFsbG9jYXRlZCAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKLVRlc3RzIGlmIGRhdGEgbGVuZ3Ro IGFuZCBjb250ZW50IGlzIGVxdWFsIGZvciB0d28gZGZpZWxkcy4KLUByZXR1cm4JVFJVRSBpZiBl cXVhbCAqLworVGVzdHMgaWYgdHdvIGRhdGEgZmllbGRzIGFyZSBlcXVhbC4KK0lmIGxlbj09MCwg dGVzdHMgdGhlIGRhdGEgbGVuZ3RoIGFuZCBjb250ZW50IGZvciBlcXVhbGl0eS4KK0lmIGxlbj4w LCB0ZXN0cyB0aGUgZmlyc3QgbGVuIGJ5dGVzIG9mIHRoZSBjb250ZW50IGZvciBlcXVhbGl0eS4K K0ByZXR1cm4JVFJVRSBpZiBib3RoIGZpZWxkcyBhcmUgTlVMTCBvciBpZiB0aGV5IGFyZSBlcXVh bCAqLwogVU5JVl9JTkxJTkUKIGlib29sCiBkZmllbGRfZGF0YXNfYXJlX2JpbmFyeV9lcXVhbCgK IC8qPT09PT09PT09PT09PT09PT09PT09PT09PT0qLwogCWNvbnN0IGRmaWVsZF90KglmaWVsZDEs CS8qITwgaW46IGZpZWxkICovCi0JY29uc3QgZGZpZWxkX3QqCWZpZWxkMik7LyohPCBpbjogZmll bGQgKi8KKwljb25zdCBkZmllbGRfdCoJZmllbGQyLAkvKiE8IGluOiBmaWVsZCAqLworCXVsaW50 CQlsZW4pCS8qITwgaW46IG1heGltdW0gcHJlZml4IHRvIGNvbXBhcmUsCisJCQkJb3IgMCB0byBj b21wYXJlIHRoZSB3aG9sZSBmaWVsZCBsZW5ndGggKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxs LCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUZXN0cyBpZiBkZmll bGQgZGF0YSBsZW5ndGggYW5kIGNvbnRlbnQgaXMgZXF1YWwgdG8gdGhlIGdpdmVuLgogQHJldHVy bglUUlVFIGlmIGVxdWFsICovCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vZGJfcGx1 Z2luL2luY2x1ZGUvZGF0YTBkYXRhLmljJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5j bHVkZS9kYXRhMGRhdGEuaWMJcmV2aWQ6dmFzaWwuZGltb3ZAb3JhY2xlLmNvbS0yMDEwMTIxNDA5 MzgxOS13YjJvZmZta2d6Y3oyNzI1CisrKyBiL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9pbmNsdWRl L2RhdGEwZGF0YS5pYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEwMTIyMTA5Mzkx OS1tY21tZ2Q0enBzZTk1NjdkCkBAIC0yMjksMjAgKzIyOSwzMCBAQCBkZmllbGRfZHVwKAogfQog CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqLy8qKgotVGVzdHMgaWYgZGF0YSBsZW5ndGggYW5kIGNvbnRlbnQgaXMg ZXF1YWwgZm9yIHR3byBkZmllbGRzLgotQHJldHVybglUUlVFIGlmIGVxdWFsICovCitUZXN0cyBp ZiB0d28gZGF0YSBmaWVsZHMgYXJlIGVxdWFsLgorSWYgbGVuPT0wLCB0ZXN0cyB0aGUgZGF0YSBs ZW5ndGggYW5kIGNvbnRlbnQgZm9yIGVxdWFsaXR5LgorSWYgbGVuPjAsIHRlc3RzIHRoZSBmaXJz dCBsZW4gYnl0ZXMgb2YgdGhlIGNvbnRlbnQgZm9yIGVxdWFsaXR5LgorQHJldHVybglUUlVFIGlm IGJvdGggZmllbGRzIGFyZSBOVUxMIG9yIGlmIHRoZXkgYXJlIGVxdWFsICovCiBVTklWX0lOTElO RQogaWJvb2wKIGRmaWVsZF9kYXRhc19hcmVfYmluYXJ5X2VxdWFsKAogLyo9PT09PT09PT09PT09 PT09PT09PT09PT09PSovCiAJY29uc3QgZGZpZWxkX3QqCWZpZWxkMSwJLyohPCBpbjogZmllbGQg Ki8KLQljb25zdCBkZmllbGRfdCoJZmllbGQyKQkvKiE8IGluOiBmaWVsZCAqLworCWNvbnN0IGRm aWVsZF90KglmaWVsZDIsCS8qITwgaW46IGZpZWxkICovCisJdWxpbnQJCWxlbikJLyohPCBpbjog bWF4aW11bSBwcmVmaXggdG8gY29tcGFyZSwKKwkJCQlvciAwIHRvIGNvbXBhcmUgdGhlIHdob2xl IGZpZWxkIGxlbmd0aCAqLwogewotCXVsaW50CWxlbjsKKwl1bGludAlsZW4yID0gbGVuOwogCi0J bGVuID0gZmllbGQxLT5sZW47CisJaWYgKGZpZWxkMS0+bGVuID09IFVOSVZfU1FMX05VTEwgfHwg bGVuID09IDAgfHwgZmllbGQxLT5sZW4gPCBsZW4pIHsKKwkJbGVuID0gZmllbGQxLT5sZW47CisJ fQogCi0JcmV0dXJuKGxlbiA9PSBmaWVsZDItPmxlbgorCWlmIChmaWVsZDItPmxlbiA9PSBVTklW X1NRTF9OVUxMIHx8IGxlbjIgPT0gMCB8fCBmaWVsZDItPmxlbiA8IGxlbjIpIHsKKwkJbGVuMiA9 IGZpZWxkMi0+bGVuOworCX0KKworCXJldHVybihsZW4gPT0gbGVuMgogCSAgICAgICAmJiAobGVu ID09IFVOSVZfU1FMX05VTEwKIAkJICAgfHwgIW1lbWNtcChmaWVsZDEtPmRhdGEsIGZpZWxkMi0+ ZGF0YSwgbGVuKSkpOwogfQoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3BsdWdp bi9pbmNsdWRlL3JvdzB1cGQuaCcKLS0tIGEvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2luY2x1ZGUv cm93MHVwZC5oCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEyMTQwOTM4MTktd2Iy b2ZmbWtnemN6MjcyNQorKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVkZS9yb3cwdXBk LmgJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMDEyMjEwOTM5MTktbWNtbWdkNHpw c2U5NTY3ZApAQCAtMjg2LDEwICsyODYsMTMgQEAgcm93X3VwZF9jaGFuZ2VzX29yZF9maWVsZF9i aW5hcnkoCiAJCQkJcm93IGFuZCB0aGUgZGF0YSB2YWx1ZXMgaW4gdXBkYXRlIGFyZSBub3QKIAkJ CQlrbm93biB3aGVuIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkLCBlLmcuLCBhdAogCQkJCWNvbXBp bGUgdGltZSAqLworCWNvbnN0IHJvd19leHRfdCpleHQsCS8qITwgTlVMTCwgb3IgcHJlZml4ZXMg b2YgdGhlIGV4dGVybmFsbHkKKwkJCQlzdG9yZWQgY29sdW1ucyBpbiB0aGUgb2xkIHJvdyAqLwog CWRpY3RfaW5kZXhfdCoJaW5kZXgsCS8qITwgaW46IGluZGV4IG9mIHRoZSByZWNvcmQgKi8KLQlj b25zdCB1cGRfdCoJdXBkYXRlKTsvKiE8IGluOiB1cGRhdGUgdmVjdG9yIGZvciB0aGUgcm93OyBO T1RFOiB0aGUKKwljb25zdCB1cGRfdCoJdXBkYXRlKQkvKiE8IGluOiB1cGRhdGUgdmVjdG9yIGZv ciB0aGUgcm93OyBOT1RFOiB0aGUKIAkJCQlmaWVsZCBudW1iZXJzIGluIHRoaXMgTVVTVCBiZSBj bHVzdGVyZWQgaW5kZXgKIAkJCQlwb3NpdGlvbnMhICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVs bCgzLDQpLCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKIENoZWNrcyBpZiBhbiB1cGRh dGUgdmVjdG9yIGNoYW5nZXMgYW4gb3JkZXJpbmcgZmllbGQgb2YgYW4gaW5kZXggcmVjb3JkLgog VGhpcyBmdW5jdGlvbiBpcyBmYXN0IGlmIHRoZSB1cGRhdGUgdmVjdG9yIGlzIHNob3J0IG9yIHRo ZSBudW1iZXIgb2Ygb3JkZXJpbmcKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2lubm9kYl9w bHVnaW4vcm93L3JvdzBwdXJnZS5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3Jv dzBwdXJnZS5jCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEyMTQwOTM4MTktd2Iy b2ZmbWtnemN6MjcyNQorKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3JvdzBwdXJnZS5j CXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTAxMjIxMDkzOTE5LW1jbW1nZDR6cHNl OTU2N2QKQEAgLTQxMyw3ICs0MTMsNyBAQCByb3dfcHVyZ2VfdXBkX2V4aXN0X29yX2V4dGVybigK IAl3aGlsZSAobm9kZS0+aW5kZXggIT0gTlVMTCkgewogCQlpbmRleCA9IG5vZGUtPmluZGV4Owog Ci0JCWlmIChyb3dfdXBkX2NoYW5nZXNfb3JkX2ZpZWxkX2JpbmFyeShOVUxMLCBub2RlLT5pbmRl eCwKKwkJaWYgKHJvd191cGRfY2hhbmdlc19vcmRfZmllbGRfYmluYXJ5KE5VTEwsIE5VTEwsIG5v ZGUtPmluZGV4LAogCQkJCQkJICAgICBub2RlLT51cGRhdGUpKSB7CiAJCQkvKiBCdWlsZCB0aGUg b2xkZXIgdmVyc2lvbiBvZiB0aGUgaW5kZXggZW50cnkgKi8KIAkJCWVudHJ5ID0gcm93X2J1aWxk X2luZGV4X2VudHJ5KG5vZGUtPnJvdywgTlVMTCwKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdl L2lubm9kYl9wbHVnaW4vcm93L3JvdzB1bW9kLmMnCi0tLSBhL3N0b3JhZ2UvaW5ub2RiX3BsdWdp bi9yb3cvcm93MHVtb2QuYwlyZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAxMjE0MDkz ODE5LXdiMm9mZm1rZ3pjejI3MjUKKysrIGIvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL3Jvdy9yb3cw dW1vZC5jCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTAxMjIxMDkzOTE5LW1jbW1n ZDR6cHNlOTU2N2QKQEAgLTY2OCw4ICs2NjgsOCBAQCByb3dfdW5kb19tb2RfdXBkX2V4aXN0X3Nl YygKIAl3aGlsZSAobm9kZS0+aW5kZXggIT0gTlVMTCkgewogCQlpbmRleCA9IG5vZGUtPmluZGV4 OwogCi0JCWlmIChyb3dfdXBkX2NoYW5nZXNfb3JkX2ZpZWxkX2JpbmFyeShub2RlLT5yb3csIG5v ZGUtPmluZGV4LAotCQkJCQkJICAgICBub2RlLT51cGRhdGUpKSB7CisJCWlmIChyb3dfdXBkX2No YW5nZXNfb3JkX2ZpZWxkX2JpbmFyeSgKKwkJCSAgICBub2RlLT5yb3csIG5vZGUtPmV4dCwgbm9k ZS0+aW5kZXgsIG5vZGUtPnVwZGF0ZSkpIHsKIAogCQkJLyogQnVpbGQgdGhlIG5ld2VzdCB2ZXJz aW9uIG9mIHRoZSBpbmRleCBlbnRyeSAqLwogCQkJZW50cnkgPSByb3dfYnVpbGRfaW5kZXhfZW50 cnkobm9kZS0+cm93LCBub2RlLT5leHQsCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5v ZGJfcGx1Z2luL3Jvdy9yb3cwdXBkLmMnCi0tLSBhL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9yb3cv cm93MHVwZC5jCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEyMTQwOTM4MTktd2Iy b2ZmbWtnemN6MjcyNQorKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3JvdzB1cGQuYwly ZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEwMTIyMTA5MzkxOS1tY21tZ2Q0enBzZTk1 NjdkCkBAIC0xMTk4LDIwICsxMTk4LDIxIEBAIHJvd191cGRfY2hhbmdlc19vcmRfZmllbGRfYmlu YXJ5KAogCQkJCXJvdyBhbmQgdGhlIGRhdGEgdmFsdWVzIGluIHVwZGF0ZSBhcmUgbm90CiAJCQkJ a25vd24gd2hlbiB0aGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCwgZS5nLiwgYXQKIAkJCQljb21waWxl IHRpbWUgKi8KKwljb25zdCByb3dfZXh0X3QqZXh0LAkvKiE8IE5VTEwsIG9yIHByZWZpeGVzIG9m IHRoZSBleHRlcm5hbGx5CisJCQkJc3RvcmVkIGNvbHVtbnMgaW4gdGhlIG9sZCByb3cgKi8KIAlk aWN0X2luZGV4X3QqCWluZGV4LAkvKiE8IGluOiBpbmRleCBvZiB0aGUgcmVjb3JkICovCiAJY29u c3QgdXBkX3QqCXVwZGF0ZSkJLyohPCBpbjogdXBkYXRlIHZlY3RvciBmb3IgdGhlIHJvdzsgTk9U RTogdGhlCiAJCQkJZmllbGQgbnVtYmVycyBpbiB0aGlzIE1VU1QgYmUgY2x1c3RlcmVkIGluZGV4 CiAJCQkJcG9zaXRpb25zISAqLwogewotCXVsaW50CQluX3VuaXF1ZTsKLQl1bGludAkJbl91cGRf ZmllbGRzOwotCXVsaW50CQlpLCBqOwotCWRpY3RfaW5kZXhfdCoJY2x1c3RfaW5kZXg7CisJdWxp bnQJCQluX3VuaXF1ZTsKKwl1bGludAkJCWk7CisJY29uc3QgZGljdF9pbmRleF90KgljbHVzdF9p bmRleDsKIAotCXV0X2FkKHVwZGF0ZSAmJiBpbmRleCk7CisJdXRfYWQodXBkYXRlKTsKKwl1dF9h ZChpbmRleCk7CiAKIAluX3VuaXF1ZSA9IGRpY3RfaW5kZXhfZ2V0X25fdW5pcXVlKGluZGV4KTsK LQluX3VwZF9maWVsZHMgPSB1cGRfZ2V0X25fZmllbGRzKHVwZGF0ZSk7CiAKIAljbHVzdF9pbmRl eCA9IGRpY3RfdGFibGVfZ2V0X2ZpcnN0X2luZGV4KGluZGV4LT50YWJsZSk7CiAKQEAgLTEyMTks MzMgKzEyMjAsNzIgQEAgcm93X3VwZF9jaGFuZ2VzX29yZF9maWVsZF9iaW5hcnkoCiAKIAkJY29u c3QgZGljdF9maWVsZF90KglpbmRfZmllbGQ7CiAJCWNvbnN0IGRpY3RfY29sX3QqCWNvbDsKLQkJ dWxpbnQJCQljb2xfcG9zOwogCQl1bGludAkJCWNvbF9ubzsKKwkJY29uc3QgdXBkX2ZpZWxkX3Qq CXVwZF9maWVsZDsKKwkJY29uc3QgZGZpZWxkX3QqCQlkZmllbGQ7CisJCWRmaWVsZF90CQlkZmll bGRfZXh0OworCQl1bGludAkJCWRmaWVsZF9sZW47CisJCWNvbnN0IGJ5dGUqCQlidWY7CiAKIAkJ aW5kX2ZpZWxkID0gZGljdF9pbmRleF9nZXRfbnRoX2ZpZWxkKGluZGV4LCBpKTsKIAkJY29sID0g ZGljdF9maWVsZF9nZXRfY29sKGluZF9maWVsZCk7Ci0JCWNvbF9wb3MgPSBkaWN0X2NvbF9nZXRf Y2x1c3RfcG9zKGNvbCwgY2x1c3RfaW5kZXgpOwogCQljb2xfbm8gPSBkaWN0X2NvbF9nZXRfbm8o Y29sKTsKIAotCQlmb3IgKGogPSAwOyBqIDwgbl91cGRfZmllbGRzOyBqKyspIHsKKwkJdXBkX2Zp ZWxkID0gdXBkX2dldF9maWVsZF9ieV9maWVsZF9ubygKKwkJCXVwZGF0ZSwgZGljdF9jb2xfZ2V0 X2NsdXN0X3Bvcyhjb2wsIGNsdXN0X2luZGV4KSk7CiAKLQkJCWNvbnN0IHVwZF9maWVsZF90Kgl1 cGRfZmllbGQKLQkJCQk9IHVwZF9nZXRfbnRoX2ZpZWxkKHVwZGF0ZSwgaik7CisJCWlmICh1cGRf ZmllbGQgPT0gTlVMTCkgeworCQkJY29udGludWU7CisJCX0KIAotCQkJLyogTm90ZSB0aGF0IGlm IHRoZSBpbmRleCBmaWVsZCBpcyBhIGNvbHVtbiBwcmVmaXgKLQkJCXRoZW4gaXQgbWF5IGJlIHRo YXQgcm93IGRvZXMgbm90IGNvbnRhaW4gYW4gZXh0ZXJuYWxseQotCQkJc3RvcmVkIHBhcnQgb2Yg dGhlIGNvbHVtbiB2YWx1ZSwgYW5kIHdlIGNhbm5vdCBjb21wYXJlCi0JCQl0aGUgZGF0YXMgKi8K KwkJaWYgKHJvdyA9PSBOVUxMKSB7CisJCQl1dF9hZChleHQgPT0gTlVMTCk7CisJCQlyZXR1cm4o VFJVRSk7CisJCX0KIAotCQkJaWYgKGNvbF9wb3MgPT0gdXBkX2ZpZWxkLT5maWVsZF9ubwotCQkJ ICAgICYmIChyb3cgPT0gTlVMTAotCQkJCXx8IGluZF9maWVsZC0+cHJlZml4X2xlbiA+IDAKLQkJ CQl8fCAhZGZpZWxkX2RhdGFzX2FyZV9iaW5hcnlfZXF1YWwoCi0JCQkJCWR0dXBsZV9nZXRfbnRo X2ZpZWxkKHJvdywgY29sX25vKSwKLQkJCQkJJih1cGRfZmllbGQtPm5ld192YWwpKSkpIHsKKwkJ ZGZpZWxkID0gZHR1cGxlX2dldF9udGhfZmllbGQocm93LCBjb2xfbm8pOwogCi0JCQkJcmV0dXJu KFRSVUUpOworCQkvKiBUaGlzIHRyZWF0bWVudCBvZiBjb2x1bW4gcHJlZml4IGluZGV4ZXMgaXMg bG9vc2VseQorCQliYXNlZCBvbiByb3dfYnVpbGRfaW5kZXhfZW50cnkoKS4gKi8KKworCQlpZiAo VU5JVl9MSUtFTFkoaW5kX2ZpZWxkLT5wcmVmaXhfbGVuID09IDApCisJCSAgICB8fCBkZmllbGRf aXNfbnVsbChkZmllbGQpKSB7CisJCQkvKiBkbyBub3RoaW5nIHNwZWNpYWwgKi8KKwkJfSBlbHNl IGlmIChVTklWX0xJS0VMWV9OVUxMKGV4dCkpIHsKKwkJCS8qIFNlZSBpZiB0aGUgY29sdW1uIGlz IHN0b3JlZCBleHRlcm5hbGx5LiAqLworCQkJYnVmID0gcm93X2V4dF9sb29rdXAoZXh0LCBjb2xf bm8sICZkZmllbGRfbGVuKTsKKworCQkJdXRfYWQoY29sLT5vcmRfcGFydCk7CisKKwkJCWlmIChV TklWX0xJS0VMWV9OVUxMKGJ1ZikpIHsKKwkJCQlpZiAoVU5JVl9VTkxJS0VMWShidWYgPT0gZmll bGRfcmVmX3plcm8pKSB7CisJCQkJCS8qIFRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiwgYnV0CisJ CQkJCXdlIHRyeSB0byBmYWlsIHNhZmUgaGVyZS4gKi8KKwkJCQkJdXRfYWQoMCk7CisJCQkJCXJl dHVybihUUlVFKTsKKwkJCQl9CisKKwkJCQlnb3RvIGNvcHlfZGZpZWxkOwogCQkJfQorCQl9IGVs c2UgaWYgKGRmaWVsZF9pc19leHQoZGZpZWxkKSkgeworCQkJZGZpZWxkX2xlbiA9IGRmaWVsZF9n ZXRfbGVuKGRmaWVsZCk7CisJCQl1dF9hKGRmaWVsZF9sZW4gPiBCVFJfRVhURVJOX0ZJRUxEX1JF Rl9TSVpFKTsKKwkJCWRmaWVsZF9sZW4gLT0gQlRSX0VYVEVSTl9GSUVMRF9SRUZfU0laRTsKKwkJ CXV0X2EoZGljdF9pbmRleF9pc19jbHVzdChpbmRleCkKKwkJCSAgICAgfHwgaW5kX2ZpZWxkLT5w cmVmaXhfbGVuIDw9IGRmaWVsZF9sZW4pOworCQkJYnVmID0gZGZpZWxkX2dldF9kYXRhKGRmaWVs ZCk7Citjb3B5X2RmaWVsZDoKKwkJCXV0X2EoZGZpZWxkX2xlbiA+IDApOworCQkJZGZpZWxkX2Nv cHkoJmRmaWVsZF9leHQsIGRmaWVsZCk7CisJCQlkZmllbGRfc2V0X2RhdGEoJmRmaWVsZF9leHQs IGJ1ZiwgZGZpZWxkX2xlbik7CisJCQlkZmllbGQgPSAmZGZpZWxkX2V4dDsKKwkJfQorCisJCWlm ICghZGZpZWxkX2RhdGFzX2FyZV9iaW5hcnlfZXF1YWwoCisJCQkgICAgZGZpZWxkLCAmdXBkX2Zp ZWxkLT5uZXdfdmFsLAorCQkJICAgIGluZF9maWVsZC0+cHJlZml4X2xlbikpIHsKKworCQkJcmV0 dXJuKFRSVUUpOwogCQl9CiAJfQogCkBAIC0xMzI5LDcgKzEzNjksNyBAQCByb3dfdXBkX2NoYW5n ZXNfZmlyc3RfZmllbGRzX2JpbmFyeSgKIAkJCWlmIChjb2xfcG9zID09IHVwZF9maWVsZC0+Zmll bGRfbm8KIAkJCSAgICAmJiAhZGZpZWxkX2RhdGFzX2FyZV9iaW5hcnlfZXF1YWwoCiAJCQkJICAg IGR0dXBsZV9nZXRfbnRoX2ZpZWxkKGVudHJ5LCBpKSwKLQkJCQkgICAgJih1cGRfZmllbGQtPm5l d192YWwpKSkgeworCQkJCSAgICAmdXBkX2ZpZWxkLT5uZXdfdmFsLCAwKSkgewogCiAJCQkJcmV0 dXJuKFRSVUUpOwogCQkJfQpAQCAtMTU2OCw4ICsxNjA4LDggQEAgcm93X3VwZF9zZWNfc3RlcCgK IAl1dF9hZCghZGljdF9pbmRleF9pc19jbHVzdChub2RlLT5pbmRleCkpOwogCiAJaWYgKG5vZGUt PnN0YXRlID09IFVQRF9OT0RFX1VQREFURV9BTExfU0VDCi0JICAgIHx8IHJvd191cGRfY2hhbmdl c19vcmRfZmllbGRfYmluYXJ5KG5vZGUtPnJvdywgbm9kZS0+aW5kZXgsCi0JCQkJCQlub2RlLT51 cGRhdGUpKSB7CisJICAgIHx8IHJvd191cGRfY2hhbmdlc19vcmRfZmllbGRfYmluYXJ5KG5vZGUt PnJvdywgbm9kZS0+ZXh0LAorCQkJCQkJbm9kZS0+aW5kZXgsIG5vZGUtPnVwZGF0ZSkpIHsKIAkJ cmV0dXJuKHJvd191cGRfc2VjX2luZGV4X2VudHJ5KG5vZGUsIHRocikpOwogCX0KIApAQCAtMTk3 Myw3ICsyMDEzLDggQEAgZXhpdF9mdW5jOgogCiAJcm93X3VwZF9zdG9yZV9yb3cobm9kZSk7CiAK LQlpZiAocm93X3VwZF9jaGFuZ2VzX29yZF9maWVsZF9iaW5hcnkobm9kZS0+cm93LCBpbmRleCwg bm9kZS0+dXBkYXRlKSkgeworCWlmIChyb3dfdXBkX2NoYW5nZXNfb3JkX2ZpZWxkX2JpbmFyeShu b2RlLT5yb3csIG5vZGUtPmV4dCwgaW5kZXgsCisJCQkJCSAgICAgbm9kZS0+dXBkYXRlKSkgewog CiAJCS8qIFVwZGF0ZSBjYXVzZXMgYW4gb3JkZXJpbmcgZmllbGQgKG9yZGVyaW5nIGZpZWxkcyB3 aXRoaW4KIAkJdGhlIEItdHJlZSkgb2YgdGhlIGNsdXN0ZXJlZCBpbmRleCByZWNvcmQgdG8gY2hh bmdlOiBwZXJmb3JtCgo= --===============0224353565== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/marko.makela@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: marko.makela@stripped # target_branch: file:///home/marko/innobase/dev/mysql2a/5.1-innodb/ # testament_sha1: d5797b9447c5edd24e13b67689eb7b60f67ffc52 # timestamp: 2010-12-21 11:39:33 +0200 # base_revision_id: vasil.dimov@stripped\ # wb2offmkgzcz2725 # # Begin bundle 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 s/LakveBtgZmQWpL/i38f/F3JFOFCQ4f2uJg --===============0224353565==--