From: marko.makela Date: February 2 2011 1:51pm Subject: bzr commit into mysql-5.1-innodb branch (marko.makela:3700) Bug#55284 List-Archive: http://lists.mysql.com/commits/130224 X-Bug: 55284 Message-Id: <201102021351.p12CQjTD004010@rcsinet13.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1249143749==" --===============1249143749== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline I0F0IGZpbGU6Ly8vaG9tZS9tYXJrby9pbm5vYmFzZS9kZXYvbXlzcWwyYS81LjEtaW5ub2RiLyBi YXNlZCBvbiByZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMDIwMjEyMTI0OS1sZmgx bWloZjg3MjV2dng3CgogMzcwMCBNYXJrbyBNw6RrZWzDpAkyMDExLTAyLTAyCiAgICAgIEJ1ZyAj NTUyODQgZGlhZ25vc3RpY3M6IEludHJvZHVjZSBVTklWX0JMT0JfTElHSFRfREVCVUcsIGVuYWJs ZWQgYnkgVU5JVl9ERUJVRwogICAgICAKICAgICAgYnRyX3JlY19nZXRfZmllbGRfcmVmX29mZnMo KSwgYnRyX3JlY19nZXRfZmllbGRfcmVmKCk6IE5ldyBmdW5jdGlvbnMuCiAgICAgIEdldCB0aGUg cG9pbnRlciB0byBhbiBleHRlcm5hbGx5IHN0b3JlZCBmaWVsZC4KICAgICAgCiAgICAgIGJ0cl9j dXJfc2V0X293bmVyc2hpcF9vZl9leHRlcm5fZmllbGQoKTogQXNzZXJ0IHRoYXQgdGhlIEJMT0Ig aGFzIG5vdAogICAgICBhbHJlYWR5IGJlZW4gZGlzb3duZWQuCiAgICAgIAogICAgICBidHJfc3Rv cmVfYmlnX3JlY19leHRlcm5fZmllbGRzKCk6IFJlbmFtZSB0bwogICAgICBidHJfc3RvcmVfYmln X3JlY19leHRlcm5fZmllbGRzX2Z1bmMoKSBhbmQgYWRkIHRoZSBkZWJ1ZyBwYXJhbWV0ZXIKICAg ICAgdXBkYXRlX2luX3BsYWNlLiBBbGwgcG9pbnRlcnMgdG8gZXh0ZXJuYWxseSBzdG9yZWQgY29s dW1ucyBpbiB0aGUKICAgICAgcmVjb3JkIG11c3QgZWl0aGVyIGJlIHplcm8gb3IgdGhleSBtdXN0 IGJlIHBvaW50ZXJzIHRvIGluaGVyaXRlZAogICAgICBjb2x1bW5zLCBvd25lZCBieSB0aGlzIHJl Y29yZCBvciBhbiBlYXJsaWVyIHJlY29yZCB2ZXJzaW9uLiBGb3IgYW55CiAgICAgIEJMT0IgdGhh dCBpcyBzdG9yZWQsIHRoZSBCTE9CIHBvaW50ZXIgbXVzdCBwcmV2aW91c2x5IGhhdmUgYmVlbgog ICAgICB6ZXJvLiBXaGVuIHRoZSBmdW5jdGlvbiBjb21wbGV0ZXMsIGFsbCBCTE9CIHBvaW50ZXJz IG11c3QgYmUgbm9uemVybwogICAgICBhbmQgb3duZWQgYnkgdGhlIHJlY29yZC4KICAgICAgCiAg ICAgIHJiOi8vNTQ5IGFwcHJvdmVkIGJ5IEppbW15IFlhbmcKCiAgICBtb2RpZmllZDoKICAgICAg c3RvcmFnZS9pbm5vZGJfcGx1Z2luL2J0ci9idHIwY3VyLmMKICAgICAgc3RvcmFnZS9pbm5vZGJf cGx1Z2luL2luY2x1ZGUvYnRyMGN1ci5oCiAgICAgIHN0b3JhZ2UvaW5ub2RiX3BsdWdpbi9pbmNs dWRlL3VuaXYuaQogICAgICBzdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3JvdzBpbnMuYwogICAg ICBzdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3JvdzB1cGQuYwo9PT0gbW9kaWZpZWQgZmlsZSAn c3RvcmFnZS9pbm5vZGJfcGx1Z2luL2J0ci9idHIwY3VyLmMnCi0tLSBhL3N0b3JhZ2UvaW5ub2Ri X3BsdWdpbi9idHIvYnRyMGN1ci5jCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTEw MjAyMTIxMjQ5LWxmaDFtaWhmODcyNXZ2eDcKKysrIGIvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2J0 ci9idHIwY3VyLmMJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMTAyMDIxMzUxMDgt azVxcXZyaTEzYnc4NWRzdgpAQCAtMTg2LDcgKzE4Niw3IEBAIHN0YXRpYwogdWxpbnQKIGJ0cl9y ZWNfZ2V0X2V4dGVybmFsbHlfc3RvcmVkX2xlbigKIC8qPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ki8KLQlyZWNfdCoJCXJlYywJLyohPCBpbjogcmVjb3JkICovCisJY29uc3QgcmVjX3Qq CXJlYywJLyohPCBpbjogcmVjb3JkICovCiAJY29uc3QgdWxpbnQqCW9mZnNldHMpOy8qITwgaW46 IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICovCiAjZW5kaWYgLyogIVVOSVZf SE9UQkFDS1VQICovCiAKQEAgLTM0ODQsMzQgKzM0ODQsNjIgQEAgYnRyX2VzdGltYXRlX251bWJl cl9vZl9kaWZmZXJlbnRfa2V5X3ZhbAogLyo9PT09PT09PT09PT09PT09PT0gRVhURVJOQUwgU1RP UkFHRSBPRiBCSUcgRklFTERTID09PT09PT09PT09PT09PT09PT0qLwogCiAvKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCitHZXRz IHRoZSBvZmZzZXQgb2YgdGhlIHBvaW50ZXIgdG8gdGhlIGV4dGVybmFsbHkgc3RvcmVkIHBhcnQg b2YgYSBmaWVsZC4KK0ByZXR1cm4Jb2Zmc2V0IG9mIHRoZSBwb2ludGVyIHRvIHRoZSBleHRlcm5h bGx5IHN0b3JlZCBwYXJ0ICovCitzdGF0aWMKK3VsaW50CitidHJfcmVjX2dldF9maWVsZF9yZWZf b2ZmcygKKy8qPT09PT09PT09PT09PT09PT09PT09PT0qLworCWNvbnN0IHVsaW50KglvZmZzZXRz LC8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICovCisJdWxpbnQJ CW4pCS8qITwgaW46IGluZGV4IG9mIHRoZSBleHRlcm5hbCBmaWVsZCAqLworeworCXVsaW50CWZp ZWxkX3JlZl9vZmZzOworCXVsaW50CWxvY2FsX2xlbjsKKworCXV0X2EocmVjX29mZnNfbnRoX2V4 dGVybihvZmZzZXRzLCBuKSk7CisJZmllbGRfcmVmX29mZnMgPSByZWNfZ2V0X250aF9maWVsZF9v ZmZzKG9mZnNldHMsIG4sICZsb2NhbF9sZW4pOworCXV0X2EobG9jYWxfbGVuICE9IFVOSVZfU1FM X05VTEwpOworCXV0X2EobG9jYWxfbGVuID49IEJUUl9FWFRFUk5fRklFTERfUkVGX1NJWkUpOwor CisJcmV0dXJuKGZpZWxkX3JlZl9vZmZzICsgbG9jYWxfbGVuIC0gQlRSX0VYVEVSTl9GSUVMRF9S RUZfU0laRSk7Cit9CisKKy8qKiBHZXRzIGEgcG9pbnRlciB0byB0aGUgZXh0ZXJuYWxseSBzdG9y ZWQgcGFydCBvZiBhIGZpZWxkLgorQHBhcmFtIHJlYwlyZWNvcmQKK0BwYXJhbSBvZmZzZXRzCXJl Y19nZXRfb2Zmc2V0cyhyZWMpCitAcGFyYW0gbglpbmRleCBvZiB0aGUgZXh0ZXJuYWxseSBzdG9y ZWQgZmllbGQKK0ByZXR1cm4gcG9pbnRlciB0byB0aGUgZXh0ZXJuYWxseSBzdG9yZWQgcGFydCAq LworI2RlZmluZSBidHJfcmVjX2dldF9maWVsZF9yZWYocmVjLCBvZmZzZXRzLCBuKQkJCVwKKwko KHJlYykgKyBidHJfcmVjX2dldF9maWVsZF9yZWZfb2ZmcyhvZmZzZXRzLCBuKSkKKworLyoqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8q KgogR2V0cyB0aGUgZXh0ZXJuYWxseSBzdG9yZWQgc2l6ZSBvZiBhIHJlY29yZCwgaW4gdW5pdHMg b2YgYSBkYXRhYmFzZSBwYWdlLgogQHJldHVybglleHRlcm5hbGx5IHN0b3JlZCBwYXJ0LCBpbiB1 bml0cyBvZiBhIGRhdGFiYXNlIHBhZ2UgKi8KIHN0YXRpYwogdWxpbnQKIGJ0cl9yZWNfZ2V0X2V4 dGVybmFsbHlfc3RvcmVkX2xlbigKIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8K LQlyZWNfdCoJCXJlYywJLyohPCBpbjogcmVjb3JkICovCisJY29uc3QgcmVjX3QqCXJlYywJLyoh PCBpbjogcmVjb3JkICovCiAJY29uc3QgdWxpbnQqCW9mZnNldHMpLyohPCBpbjogYXJyYXkgcmV0 dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KIHsKIAl1bGludAluX2ZpZWxkczsKLQlieXRl KglkYXRhOwotCXVsaW50CWxvY2FsX2xlbjsKLQl1bGludAlleHRlcm5fbGVuOwogCXVsaW50CXRv dGFsX2V4dGVybl9sZW4gPSAwOwogCXVsaW50CWk7CiAKIAl1dF9hZCghcmVjX29mZnNfY29tcChv ZmZzZXRzKSB8fCAhcmVjX2dldF9ub2RlX3B0cl9mbGFnKHJlYykpOworCisJaWYgKCFyZWNfb2Zm c19hbnlfZXh0ZXJuKG9mZnNldHMpKSB7CisJCXJldHVybigwKTsKKwl9CisKIAluX2ZpZWxkcyA9 IHJlY19vZmZzX25fZmllbGRzKG9mZnNldHMpOwogCiAJZm9yIChpID0gMDsgaSA8IG5fZmllbGRz OyBpKyspIHsKIAkJaWYgKHJlY19vZmZzX250aF9leHRlcm4ob2Zmc2V0cywgaSkpIHsKIAotCQkJ ZGF0YSA9IHJlY19nZXRfbnRoX2ZpZWxkKHJlYywgb2Zmc2V0cywgaSwgJmxvY2FsX2xlbik7Ci0K LQkJCWxvY2FsX2xlbiAtPSBCVFJfRVhURVJOX0ZJRUxEX1JFRl9TSVpFOwotCi0JCQlleHRlcm5f bGVuID0gbWFjaF9yZWFkX2Zyb21fNChkYXRhICsgbG9jYWxfbGVuCi0JCQkJCQkgICAgICArIEJU Ul9FWFRFUk5fTEVOICsgNCk7CisJCQl1bGludAlleHRlcm5fbGVuID0gbWFjaF9yZWFkX2Zyb21f NCgKKwkJCQlidHJfcmVjX2dldF9maWVsZF9yZWYocmVjLCBvZmZzZXRzLCBpKQorCQkJCSsgQlRS X0VYVEVSTl9MRU4gKyA0KTsKIAogCQkJdG90YWxfZXh0ZXJuX2xlbiArPSB1dF9jYWxjX2FsaWdu KGV4dGVybl9sZW4sCiAJCQkJCQkJICBVTklWX1BBR0VfU0laRSk7CkBAIC0zNTQxLDcgKzM1Njks NyBAQCBidHJfY3VyX3NldF9vd25lcnNoaXBfb2ZfZXh0ZXJuX2ZpZWxkKAogCXVsaW50CWJ5dGVf dmFsOwogCiAJZGF0YSA9IHJlY19nZXRfbnRoX2ZpZWxkKHJlYywgb2Zmc2V0cywgaSwgJmxvY2Fs X2xlbik7Ci0KKwl1dF9hZChyZWNfb2Zmc19udGhfZXh0ZXJuKG9mZnNldHMsIGkpKTsKIAl1dF9h KGxvY2FsX2xlbiA+PSBCVFJfRVhURVJOX0ZJRUxEX1JFRl9TSVpFKTsKIAogCWxvY2FsX2xlbiAt PSBCVFJfRVhURVJOX0ZJRUxEX1JFRl9TSVpFOwpAQCAtMzU1MSw2ICszNTc5LDkgQEAgYnRyX2N1 cl9zZXRfb3duZXJzaGlwX29mX2V4dGVybl9maWVsZCgKIAlpZiAodmFsKSB7CiAJCWJ5dGVfdmFs ID0gYnl0ZV92YWwgJiAofkJUUl9FWFRFUk5fT1dORVJfRkxBRyk7CiAJfSBlbHNlIHsKKyNpZiBk ZWZpbmVkIFVOSVZfREVCVUcgfHwgZGVmaW5lZCBVTklWX0JMT0JfTElHSFRfREVCVUcKKwkJdXRf YSghKGJ5dGVfdmFsICYgQlRSX0VYVEVSTl9PV05FUl9GTEFHKSk7CisjZW5kaWYgLyogVU5JVl9E RUJVRyB8fCBVTklWX0JMT0JfTElHSFRfREVCVUcgKi8KIAkJYnl0ZV92YWwgPSBieXRlX3ZhbCB8 IEJUUl9FWFRFUk5fT1dORVJfRkxBRzsKIAl9CiAKQEAgLTM3ODgsOCArMzgxOSw4IEBAIGZpbGUg c2VnbWVudCBvZiB0aGUgaW5kZXggdHJlZS4KIEByZXR1cm4JREJfU1VDQ0VTUyBvciBEQl9PVVRf T0ZfRklMRV9TUEFDRSAqLwogVU5JVl9JTlRFUk4KIHVsaW50Ci1idHJfc3RvcmVfYmlnX3JlY19l eHRlcm5fZmllbGRzKAotLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KK2J0cl9zdG9y ZV9iaWdfcmVjX2V4dGVybl9maWVsZHNfZnVuYygKKy8qPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09Ki8KIAlkaWN0X2luZGV4X3QqCWluZGV4LAkJLyohPCBpbjogaW5kZXggb2YgcmVj OyB0aGUgaW5kZXggdHJlZQogCQkJCQlNVVNUIGJlIFgtbGF0Y2hlZCAqLwogCWJ1Zl9ibG9ja190 KglyZWNfYmxvY2ssCS8qITwgaW4vb3V0OiBibG9jayBjb250YWluaW5nIHJlYyAqLwpAQCAtMzc5 OCwxMSArMzgyOSwxNyBAQCBidHJfc3RvcmVfYmlnX3JlY19leHRlcm5fZmllbGRzKAogCQkJCQl0 aGUgImV4dGVybmFsIHN0b3JhZ2UiIGZsYWdzIGluIG9mZnNldHMKIAkJCQkJd2lsbCBub3QgY29y cmVzcG9uZCB0byByZWMgd2hlbgogCQkJCQl0aGlzIGZ1bmN0aW9uIHJldHVybnMgKi8KLQliaWdf cmVjX3QqCWJpZ19yZWNfdmVjLAkvKiE8IGluOiB2ZWN0b3IgY29udGFpbmluZyBmaWVsZHMKKyNp ZmRlZiBVTklWX0RFQlVHCisJbXRyX3QqCQlsb2NhbF9tdHIsCS8qITwgaW46IG10ciBjb250YWlu aW5nIHRoZQorCQkJCQlsYXRjaCB0byByZWMgYW5kIHRvIHRoZSB0cmVlICovCisjZW5kaWYgLyog VU5JVl9ERUJVRyAqLworI2lmIGRlZmluZWQgVU5JVl9ERUJVRyB8fCBkZWZpbmVkIFVOSVZfQkxP Ql9MSUdIVF9ERUJVRworCWlib29sCQl1cGRhdGVfaW5fcGxhY2UsLyohIGluOiBUUlVFIGlmIHRo ZSByZWNvcmQgaXMgdXBkYXRlZAorCQkJCQlpbiBwbGFjZSAobm90IGRlbGV0ZStpbnNlcnQpICov CisjZW5kaWYgLyogVU5JVl9ERUJVRyB8fCBVTklWX0JMT0JfTElHSFRfREVCVUcgKi8KKwljb25z dCBiaWdfcmVjX3QqYmlnX3JlY192ZWMpCS8qITwgaW46IHZlY3RvciBjb250YWluaW5nIGZpZWxk cwogCQkJCQl0byBiZSBzdG9yZWQgZXh0ZXJuYWxseSAqLwotCW10cl90KgkJbG9jYWxfbXRyIF9f YXR0cmlidXRlX18oKHVudXNlZCkpKSAvKiE8IGluOiBtdHIKLQkJCQkJY29udGFpbmluZyB0aGUg bGF0Y2ggdG8gcmVjIGFuZCB0byB0aGUKLQkJCQkJdHJlZSAqLworCiB7CiAJdWxpbnQJcmVjX3Bh Z2Vfbm87CiAJYnl0ZSoJZmllbGRfcmVmOwpAQCAtMzgyMCw2ICszODU3LDcgQEAgYnRyX3N0b3Jl X2JpZ19yZWNfZXh0ZXJuX2ZpZWxkcygKIAl6X3N0cmVhbSBjX3N0cmVhbTsKIAogCXV0X2FkKHJl Y19vZmZzX3ZhbGlkYXRlKHJlYywgaW5kZXgsIG9mZnNldHMpKTsKKwl1dF9hZChyZWNfb2Zmc19h bnlfZXh0ZXJuKG9mZnNldHMpKTsKIAl1dF9hZChtdHJfbWVtb19jb250YWlucyhsb2NhbF9tdHIs IGRpY3RfaW5kZXhfZ2V0X2xvY2soaW5kZXgpLAogCQkJCU1UUl9NRU1PX1hfTE9DSykpOwogCXV0 X2FkKG10cl9tZW1vX2NvbnRhaW5zKGxvY2FsX210ciwgcmVjX2Jsb2NrLCBNVFJfTUVNT19QQUdF X1hfRklYKSk7CkBAIC0zODUxLDIxICszODg5LDM3IEBAIGJ0cl9zdG9yZV9iaWdfcmVjX2V4dGVy bl9maWVsZHMoCiAJCXV0X2EoZXJyID09IFpfT0spOwogCX0KIAorI2lmIGRlZmluZWQgVU5JVl9E RUJVRyB8fCBkZWZpbmVkIFVOSVZfQkxPQl9MSUdIVF9ERUJVRworCS8qIEFsbCBwb2ludGVycyB0 byBleHRlcm5hbGx5IHN0b3JlZCBjb2x1bW5zIGluIHRoZSByZWNvcmQKKwltdXN0IGVpdGhlciBi ZSB6ZXJvIG9yIHRoZXkgbXVzdCBiZSBwb2ludGVycyB0byBpbmhlcml0ZWQKKwljb2x1bW5zLCBv d25lZCBieSB0aGlzIHJlY29yZCBvciBhbiBlYXJsaWVyIHJlY29yZCB2ZXJzaW9uLiAqLworCWZv ciAoaSA9IDA7IGkgPCByZWNfb2Zmc19uX2ZpZWxkcyhvZmZzZXRzKTsgaSsrKSB7CisJCWlmICgh cmVjX29mZnNfbnRoX2V4dGVybihvZmZzZXRzLCBpKSkgeworCQkJY29udGludWU7CisJCX0KKwkJ ZmllbGRfcmVmID0gYnRyX3JlY19nZXRfZmllbGRfcmVmKHJlYywgb2Zmc2V0cywgaSk7CisKKwkJ dXRfYSghKGZpZWxkX3JlZltCVFJfRVhURVJOX0xFTl0gJiBCVFJfRVhURVJOX09XTkVSX0ZMQUcp KTsKKwkJLyogRWl0aGVyIHRoaXMgbXVzdCBiZSBhbiB1cGRhdGUgaW4gcGxhY2UsCisJCW9yIHRo ZSBCTE9CIG11c3QgYmUgaW5oZXJpdGVkLCBvciB0aGUgQkxPQiBwb2ludGVyCisJCW11c3QgYmUg emVybyAod2lsbCBiZSB3cml0dGVuIGluIHRoaXMgZnVuY3Rpb24pLiAqLworCQl1dF9hKHVwZGF0 ZV9pbl9wbGFjZQorCQkgICAgIHx8IChmaWVsZF9yZWZbQlRSX0VYVEVSTl9MRU5dICYgQlRSX0VY VEVSTl9JTkhFUklURURfRkxBRykKKwkJICAgICB8fCAhbWVtY21wKGZpZWxkX3JlZiwgZmllbGRf cmVmX3plcm8sCisJCQkJQlRSX0VYVEVSTl9GSUVMRF9SRUZfU0laRSkpOworCX0KKyNlbmRpZiAv KiBVTklWX0RFQlVHIHx8IFVOSVZfQkxPQl9MSUdIVF9ERUJVRyAqLwogCS8qIFdlIGhhdmUgdG8g Y3JlYXRlIGEgZmlsZSBzZWdtZW50IHRvIHRoZSB0YWJsZXNwYWNlCiAJZm9yIGVhY2ggZmllbGQg YW5kIHB1dCB0aGUgcG9pbnRlciB0byB0aGUgZmllbGQgaW4gcmVjICovCiAKIAlmb3IgKGkgPSAw OyBpIDwgYmlnX3JlY192ZWMtPm5fZmllbGRzOyBpKyspIHsKLQkJdXRfYWQocmVjX29mZnNfbnRo X2V4dGVybihvZmZzZXRzLAotCQkJCQkgIGJpZ19yZWNfdmVjLT5maWVsZHNbaV0uZmllbGRfbm8p KTsKLQkJewotCQkJdWxpbnQJbG9jYWxfbGVuOwotCQkJZmllbGRfcmVmID0gcmVjX2dldF9udGhf ZmllbGQoCi0JCQkJcmVjLCBvZmZzZXRzLCBiaWdfcmVjX3ZlYy0+ZmllbGRzW2ldLmZpZWxkX25v LAotCQkJCSZsb2NhbF9sZW4pOwotCQkJdXRfYShsb2NhbF9sZW4gPj0gQlRSX0VYVEVSTl9GSUVM RF9SRUZfU0laRSk7Ci0JCQlsb2NhbF9sZW4gLT0gQlRSX0VYVEVSTl9GSUVMRF9SRUZfU0laRTsK LQkJCWZpZWxkX3JlZiArPSBsb2NhbF9sZW47Ci0JCX0KKwkJZmllbGRfcmVmID0gYnRyX3JlY19n ZXRfZmllbGRfcmVmKAorCQkJcmVjLCBvZmZzZXRzLCBiaWdfcmVjX3ZlYy0+ZmllbGRzW2ldLmZp ZWxkX25vKTsKKyNpZiBkZWZpbmVkIFVOSVZfREVCVUcgfHwgZGVmaW5lZCBVTklWX0JMT0JfTElH SFRfREVCVUcKKwkJLyogQSB6ZXJvIEJMT0IgcG9pbnRlciBzaG91bGQgaGF2ZSBiZWVuIGluaXRp YWxseSBpbnNlcnRlZC4gKi8KKwkJdXRfYSghbWVtY21wKGZpZWxkX3JlZiwgZmllbGRfcmVmX3pl cm8sCisJCQkgICAgIEJUUl9FWFRFUk5fRklFTERfUkVGX1NJWkUpKTsKKyNlbmRpZiAvKiBVTklW X0RFQlVHIHx8IFVOSVZfQkxPQl9MSUdIVF9ERUJVRyAqLwogCQlleHRlcm5fbGVuID0gYmlnX3Jl Y192ZWMtPmZpZWxkc1tpXS5sZW47CiAJCVVOSVZfTUVNX0FTU0VSVF9SVyhiaWdfcmVjX3ZlYy0+ ZmllbGRzW2ldLmRhdGEsCiAJCQkJICAgZXh0ZXJuX2xlbik7CkBAIC00MTQ3LDYgKzQyMDEsMjMg QEAgbmV4dF96aXBfcGFnZToKIAkJbWVtX2hlYXBfZnJlZShoZWFwKTsKIAl9CiAKKyNpZiBkZWZp bmVkIFVOSVZfREVCVUcgfHwgZGVmaW5lZCBVTklWX0JMT0JfTElHSFRfREVCVUcKKwkvKiBBbGwg cG9pbnRlcnMgdG8gZXh0ZXJuYWxseSBzdG9yZWQgY29sdW1ucyBpbiB0aGUgcmVjb3JkCisJbXVz dCBiZSB2YWxpZC4gKi8KKwlmb3IgKGkgPSAwOyBpIDwgcmVjX29mZnNfbl9maWVsZHMob2Zmc2V0 cyk7IGkrKykgeworCQlpZiAoIXJlY19vZmZzX250aF9leHRlcm4ob2Zmc2V0cywgaSkpIHsKKwkJ CWNvbnRpbnVlOworCQl9CisKKwkJZmllbGRfcmVmID0gYnRyX3JlY19nZXRfZmllbGRfcmVmKHJl Yywgb2Zmc2V0cywgaSk7CisKKwkJLyogVGhlIHBvaW50ZXIgbXVzdCBub3QgYmUgemVyby4gKi8K KwkJdXRfYSgwICE9IG1lbWNtcChmaWVsZF9yZWYsIGZpZWxkX3JlZl96ZXJvLAorCQkJCSBCVFJf RVhURVJOX0ZJRUxEX1JFRl9TSVpFKSk7CisJCS8qIFRoZSBjb2x1bW4gbXVzdCBub3QgYmUgZGlz b3duZWQgYnkgdGhpcyByZWNvcmQuICovCisJCXV0X2EoIShmaWVsZF9yZWZbQlRSX0VYVEVSTl9M RU5dICYgQlRSX0VYVEVSTl9PV05FUl9GTEFHKSk7CisJfQorI2VuZGlmIC8qIFVOSVZfREVCVUcg fHwgVU5JVl9CTE9CX0xJR0hUX0RFQlVHICovCiAJcmV0dXJuKERCX1NVQ0NFU1MpOwogfQogCkBA IC00MjI4LDIzICs0Mjk5LDEzIEBAIGJ0cl9mcmVlX2V4dGVybmFsbHlfc3RvcmVkX2ZpZWxkKAog CXVsaW50CQlwYWdlX25vOwogCXVsaW50CQluZXh0X3BhZ2Vfbm87CiAJbXRyX3QJCW10cjsKLSNp ZmRlZiBVTklWX0RFQlVHCisKIAl1dF9hZChtdHJfbWVtb19jb250YWlucyhsb2NhbF9tdHIsIGRp Y3RfaW5kZXhfZ2V0X2xvY2soaW5kZXgpLAogCQkJCU1UUl9NRU1PX1hfTE9DSykpOwogCXV0X2Fk KG10cl9tZW1vX2NvbnRhaW5zX3BhZ2UobG9jYWxfbXRyLCBmaWVsZF9yZWYsCiAJCQkJICAgICBN VFJfTUVNT19QQUdFX1hfRklYKSk7CiAJdXRfYWQoIXJlYyB8fCByZWNfb2Zmc192YWxpZGF0ZShy ZWMsIGluZGV4LCBvZmZzZXRzKSk7Ci0KLQlpZiAocmVjKSB7Ci0JCXVsaW50CWxvY2FsX2xlbjsK LQkJY29uc3QgYnl0ZSoJZiA9IHJlY19nZXRfbnRoX2ZpZWxkKHJlYywgb2Zmc2V0cywKLQkJCQkJ CSAgICAgIGksICZsb2NhbF9sZW4pOwotCQl1dF9hKGxvY2FsX2xlbiA+PSBCVFJfRVhURVJOX0ZJ RUxEX1JFRl9TSVpFKTsKLQkJbG9jYWxfbGVuIC09IEJUUl9FWFRFUk5fRklFTERfUkVGX1NJWkU7 Ci0JCWYgKz0gbG9jYWxfbGVuOwotCQl1dF9hZChmID09IGZpZWxkX3JlZik7Ci0JfQotI2VuZGlm IC8qIFVOSVZfREVCVUcgKi8KKwl1dF9hZCghcmVjIHx8IGZpZWxkX3JlZiA9PSBidHJfcmVjX2dl dF9maWVsZF9yZWYocmVjLCBvZmZzZXRzLCBpKSk7CiAKIAlpZiAoVU5JVl9VTkxJS0VMWSghbWVt Y21wKGZpZWxkX3JlZiwgZmllbGRfcmVmX3plcm8sCiAJCQkJICBCVFJfRVhURVJOX0ZJRUxEX1JF Rl9TSVpFKSkpIHsKQEAgLTQ0MDksMTMgKzQ0NzAsOCBAQCBidHJfcmVjX2ZyZWVfZXh0ZXJuYWxs eV9zdG9yZWRfZmllbGRzKAogCiAJZm9yIChpID0gMDsgaSA8IG5fZmllbGRzOyBpKyspIHsKIAkJ aWYgKHJlY19vZmZzX250aF9leHRlcm4ob2Zmc2V0cywgaSkpIHsKLQkJCXVsaW50CWxlbjsKLQkJ CWJ5dGUqCWRhdGEKLQkJCQk9IHJlY19nZXRfbnRoX2ZpZWxkKHJlYywgb2Zmc2V0cywgaSwgJmxl bik7Ci0JCQl1dF9hKGxlbiA+PSBCVFJfRVhURVJOX0ZJRUxEX1JFRl9TSVpFKTsKLQogCQkJYnRy X2ZyZWVfZXh0ZXJuYWxseV9zdG9yZWRfZmllbGQoCi0JCQkJaW5kZXgsIGRhdGEgKyBsZW4gLSBC VFJfRVhURVJOX0ZJRUxEX1JFRl9TSVpFLAorCQkJCWluZGV4LCBidHJfcmVjX2dldF9maWVsZF9y ZWYocmVjLCBvZmZzZXRzLCBpKSwKIAkJCQlyZWMsIG9mZnNldHMsIHBhZ2VfemlwLCBpLCByYl9j dHgsIG10cik7CiAJCX0KIAl9Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vZGJfcGx1 Z2luL2luY2x1ZGUvYnRyMGN1ci5oJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVk ZS9idHIwY3VyLmgJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMTAyMDIxMjEyNDkt bGZoMW1paGY4NzI1dnZ4NworKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVkZS9idHIw Y3VyLmgJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMTAyMDIxMzUxMDgtazVxcXZy aTEzYnc4NWRzdgpAQCAtNTEyLDggKzUxMiw4IEBAIGZpbGUgc2VnbWVudCBvZiB0aGUgaW5kZXgg dHJlZS4KIEByZXR1cm4JREJfU1VDQ0VTUyBvciBEQl9PVVRfT0ZfRklMRV9TUEFDRSAqLwogVU5J Vl9JTlRFUk4KIHVsaW50Ci1idHJfc3RvcmVfYmlnX3JlY19leHRlcm5fZmllbGRzKAotLyo9PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ki8KK2J0cl9zdG9yZV9iaWdfcmVjX2V4dGVybl9maWVs ZHNfZnVuYygKKy8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KIAlkaWN0X2lu ZGV4X3QqCWluZGV4LAkJLyohPCBpbjogaW5kZXggb2YgcmVjOyB0aGUgaW5kZXggdHJlZQogCQkJ CQlNVVNUIGJlIFgtbGF0Y2hlZCAqLwogCWJ1Zl9ibG9ja190KglyZWNfYmxvY2ssCS8qITwgaW4v b3V0OiBibG9jayBjb250YWluaW5nIHJlYyAqLwpAQCAtNTIyLDEwICs1MjIsNDIgQEAgYnRyX3N0 b3JlX2JpZ19yZWNfZXh0ZXJuX2ZpZWxkcygKIAkJCQkJdGhlICJleHRlcm5hbCBzdG9yYWdlIiBm bGFncyBpbiBvZmZzZXRzCiAJCQkJCXdpbGwgbm90IGNvcnJlc3BvbmQgdG8gcmVjIHdoZW4KIAkJ CQkJdGhpcyBmdW5jdGlvbiByZXR1cm5zICovCi0JYmlnX3JlY190KgliaWdfcmVjX3ZlYywJLyoh PCBpbjogdmVjdG9yIGNvbnRhaW5pbmcgZmllbGRzCisjaWZkZWYgVU5JVl9ERUJVRworCW10cl90 KgkJbG9jYWxfbXRyLAkvKiE8IGluOiBtdHIgY29udGFpbmluZyB0aGUKKwkJCQkJbGF0Y2ggdG8g cmVjIGFuZCB0byB0aGUgdHJlZSAqLworI2VuZGlmIC8qIFVOSVZfREVCVUcgKi8KKyNpZiBkZWZp bmVkIFVOSVZfREVCVUcgfHwgZGVmaW5lZCBVTklWX0JMT0JfTElHSFRfREVCVUcKKwlpYm9vbAkJ dXBkYXRlX2luX3BsYWNlLC8qISBpbjogVFJVRSBpZiB0aGUgcmVjb3JkIGlzIHVwZGF0ZWQKKwkJ CQkJaW4gcGxhY2UgKG5vdCBkZWxldGUraW5zZXJ0KSAqLworI2VuZGlmIC8qIFVOSVZfREVCVUcg fHwgVU5JVl9CTE9CX0xJR0hUX0RFQlVHICovCisJY29uc3QgYmlnX3JlY190KmJpZ19yZWNfdmVj KQkvKiE8IGluOiB2ZWN0b3IgY29udGFpbmluZyBmaWVsZHMKIAkJCQkJdG8gYmUgc3RvcmVkIGV4 dGVybmFsbHkgKi8KLQltdHJfdCoJCWxvY2FsX210cik7CS8qITwgaW46IG10ciBjb250YWluaW5n IHRoZSBsYXRjaCB0bwotCQkJCQlyZWMgYW5kIHRvIHRoZSB0cmVlICovCisJX19hdHRyaWJ1dGVf Xygobm9ubnVsbCkpOworCisvKiogU3RvcmVzIHRoZSBmaWVsZHMgaW4gYmlnX3JlY192ZWMgdG8g dGhlIHRhYmxlc3BhY2UgYW5kIHB1dHMgcG9pbnRlcnMgdG8KK3RoZW0gaW4gcmVjLiAgVGhlIGV4 dGVybiBmbGFncyBpbiByZWMgd2lsbCBoYXZlIHRvIGJlIHNldCBiZWZvcmVoYW5kLgorVGhlIGZp ZWxkcyBhcmUgc3RvcmVkIG9uIHBhZ2VzIGFsbG9jYXRlZCBmcm9tIGxlYWYgbm9kZQorZmlsZSBz ZWdtZW50IG9mIHRoZSBpbmRleCB0cmVlLgorQHBhcmFtIGluZGV4CWluOiBjbHVzdGVyZWQgaW5k ZXg7IE1VU1QgYmUgWC1sYXRjaGVkIGJ5IG10cgorQHBhcmFtIGIJaW4vb3V0OiBibG9jayBjb250 YWluaW5nIHJlYzsgTVVTVCBiZSBYLWxhdGNoZWQgYnkgbXRyCitAcGFyYW0gcmVjCWluL291dDog Y2x1c3RlcmVkIGluZGV4IHJlY29yZAorQHBhcmFtIG9mZnNldHMJaW46IHJlY19nZXRfb2Zmc2V0 cyhyZWMsIGluZGV4KTsKKwkJdGhlICJleHRlcm5hbCBzdG9yYWdlIiBmbGFncyBpbiBvZmZzZXRz IHdpbGwgbm90IGJlIGFkanVzdGVkCitAcGFyYW0gbXRyCWluOiBtaW5pLXRyYW5zYWN0aW9uIHRo YXQgaG9sZHMgeC1sYXRjaCBvbiBpbmRleCBhbmQgYgorQHBhcmFtIHVwZAlpbjogVFJVRSBpZiB0 aGUgcmVjb3JkIGlzIHVwZGF0ZWQgaW4gcGxhY2UgKG5vdCBkZWxldGUraW5zZXJ0KQorQHBhcmFt IGJpZwlpbjogdmVjdG9yIGNvbnRhaW5pbmcgZmllbGRzIHRvIGJlIHN0b3JlZCBleHRlcm5hbGx5 CitAcmV0dXJuCURCX1NVQ0NFU1Mgb3IgREJfT1VUX09GX0ZJTEVfU1BBQ0UgKi8KKyNpZmRlZiBV TklWX0RFQlVHCisjIGRlZmluZSBidHJfc3RvcmVfYmlnX3JlY19leHRlcm5fZmllbGRzKGluZGV4 LGIscmVjLG9mZnNldHMsbXRyLHVwZCxiaWcpIFwKKwlidHJfc3RvcmVfYmlnX3JlY19leHRlcm5f ZmllbGRzX2Z1bmMoaW5kZXgsYixyZWMsb2Zmc2V0cyxtdHIsdXBkLGJpZykKKyNlbGlmIGRlZmlu ZWQgVU5JVl9CTE9CX0xJR0hUX0RFQlVHCisjIGRlZmluZSBidHJfc3RvcmVfYmlnX3JlY19leHRl cm5fZmllbGRzKGluZGV4LGIscmVjLG9mZnNldHMsbXRyLHVwZCxiaWcpIFwKKwlidHJfc3RvcmVf YmlnX3JlY19leHRlcm5fZmllbGRzX2Z1bmMoaW5kZXgsYixyZWMsb2Zmc2V0cyx1cGQsYmlnKQor I2Vsc2UKKyMgZGVmaW5lIGJ0cl9zdG9yZV9iaWdfcmVjX2V4dGVybl9maWVsZHMoaW5kZXgsYixy ZWMsb2Zmc2V0cyxtdHIsdXBkLGJpZykgXAorCWJ0cl9zdG9yZV9iaWdfcmVjX2V4dGVybl9maWVs ZHNfZnVuYyhpbmRleCxiLHJlYyxvZmZzZXRzLGJpZykKKyNlbmRpZgorCiAvKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8v KioKIEZyZWVzIHRoZSBzcGFjZSBpbiBhbiBleHRlcm5hbGx5IHN0b3JlZCBmaWVsZCB0byB0aGUg ZmlsZSBzcGFjZQogbWFuYWdlbWVudCBpZiB0aGUgZmllbGQgaW4gZGF0YSBpcyBvd25lZCB0aGUg ZXh0ZXJuYWxseSBzdG9yZWQgZmllbGQsCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5v ZGJfcGx1Z2luL2luY2x1ZGUvdW5pdi5pJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5j bHVkZS91bml2LmkJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMTAyMDIxMjEyNDkt bGZoMW1paGY4NzI1dnZ4NworKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVkZS91bml2 LmkJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMTAyMDIxMzUxMDgtazVxcXZyaTEz Ync4NWRzdgpAQCAtMTc3LDYgKzE3Nyw4IEBAIGNvbW1hbmQuIE5vdCB0ZXN0ZWQgb24gV2luZG93 cy4gKi8KIAkJCQkJCWRlYnVnZ2luZyB3aXRob3V0IFVOSVZfREVCVUcgKi8KICNkZWZpbmUgVU5J Vl9CVUZfREVCVUcJCQkJLyogRW5hYmxlIGJ1ZmZlciBwb29sCiAJCQkJCQlkZWJ1Z2dpbmcgd2l0 aG91dCBVTklWX0RFQlVHICovCisjZGVmaW5lIFVOSVZfQkxPQl9MSUdIVF9ERUJVRwkJCS8qIEVu YWJsZSBvZmYtcGFnZSBjb2x1bW4KKwkJCQkJCWRlYnVnZ2luZyB3aXRob3V0IFVOSVZfREVCVUcg Ki8KICNkZWZpbmUgVU5JVl9ERUJVRwkJCQkvKiBFbmFibGUgdXRfYWQoKSBhc3NlcnRpb25zCiAJ CQkJCQlhbmQgZGlzYWJsZSBVTklWX0lOTElORSAqLwogI2RlZmluZSBVTklWX0RFQlVHX0xPQ0tf VkFMSURBVEUJCS8qIEVuYWJsZQoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3Bs dWdpbi9yb3cvcm93MGlucy5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3JvdzBp bnMuYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMDIwMjEyMTI0OS1sZmgxbWlo Zjg3MjV2dng3CisrKyBiL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9yb3cvcm93MGlucy5jCXJldmlk Om1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTEwMjAyMTM1MTA4LWs1cXF2cmkxM2J3ODVkc3YK QEAgLTIxMzAsNyArMjEzMCw3IEBAIGZ1bmN0aW9uX2V4aXQ6CiAKIAkJZXJyID0gYnRyX3N0b3Jl X2JpZ19yZWNfZXh0ZXJuX2ZpZWxkcygKIAkJCWluZGV4LCBidHJfY3VyX2dldF9ibG9jaygmY3Vy c29yKSwKLQkJCXJlYywgb2Zmc2V0cywgYmlnX3JlYywgJm10cik7CisJCQlyZWMsIG9mZnNldHMs ICZtdHIsIEZBTFNFLCBiaWdfcmVjKTsKIAogCQlpZiAobW9kaWZ5KSB7CiAJCQlkdHVwbGVfYmln X3JlY19mcmVlKGJpZ19yZWMpOwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3Bs dWdpbi9yb3cvcm93MHVwZC5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vcm93L3JvdzB1 cGQuYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMDIwMjEyMTI0OS1sZmgxbWlo Zjg3MjV2dng3CisrKyBiL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9yb3cvcm93MHVwZC5jCXJldmlk Om1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTEwMjAyMTM1MTA4LWs1cXF2cmkxM2J3ODVkc3YK QEAgLTE5NTIsNyArMTk1Miw3IEBAIHJvd191cGRfY2x1c3RfcmVjKAogCQkJaW5kZXgsIGJ0cl9j dXJfZ2V0X2Jsb2NrKGJ0cl9jdXIpLCByZWMsCiAJCQlyZWNfZ2V0X29mZnNldHMocmVjLCBpbmRl eCwgb2Zmc2V0c18sCiAJCQkJCVVMSU5UX1VOREVGSU5FRCwgJmhlYXApLAotCQkJYmlnX3JlYywg bXRyKTsKKwkJCW10ciwgVFJVRSwgYmlnX3JlYyk7CiAJCW10cl9jb21taXQobXRyKTsKIAl9CiAK Cg== --===============1249143749== 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: af3398260db13cc846559e889984aed6a7ce1472 # timestamp: 2011-02-02 15:51:16 +0200 # base_revision_id: marko.makela@stripped\ # lfh1mihf8725vvx7 # # Begin bundle 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 --===============1249143749==--