From: marko.makela Date: May 24 2010 11:04am Subject: bzr commit into mysql-5.1-innodb branch (marko.makela:3479) Bug#53578 List-Archive: http://lists.mysql.com/commits/109036 X-Bug: 53578 Message-Id: <201005241105.o4OB4x3R012715@rcsinet13.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1863048323==" --===============1863048323== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline I0F0IGZpbGU6Ly8vaG9tZS9tYXJrby9pbm5vYmFzZS9kZXYvbXlzcWwyYS81LjEtaW5ub2RiLyBi YXNlZCBvbiByZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAwNTIwMTMzMTU3LTQydWs1 cTNwcDB2c2luYWMKCiAzNDc5IE1hcmtvIE3DpGtlbMOkCTIwMTAtMDUtMjQKICAgICAgQnVnIzUz NTc4OiBhc3NlcnQgb24gaW52YWxpZCBwYWdlIGFjY2VzcywgaW4gZmlsX2lvKCkKICAgICAgCiAg ICAgIFN0b3JlIHRoZSBtYXhfc3BhY2VfaWQgaW4gdGhlIGRhdGEgZGljdGlvbmFyeSBoZWFkZXIg aW4gb3JkZXIgdG8gYXZvaWQKICAgICAgc3BhY2VfaWQgcmV1c2UuCiAgICAgIAogICAgICBESUNU X0hEUl9NSVhfSUQ6IFJlbmFtZWQgdG8gRElDVF9IRFJfTUFYX1NQQUNFX0lELCBESUNUX0hEUl9N SVhfSURfTE9XLgogICAgICAKICAgICAgZGljdF9oZHJfZ2V0X25ld19pZCgpOiBSZXR1cm4gdGFi bGVfaWQsIGluZGV4X2lkLCBzcGFjZV9pZCBvciBhIHN1YnNldCBvZiB0aGVtLgogICAgICAKICAg ICAgZmlsX3N5c3RlbV90OiBBZGQgaWJvb2wgc3BhY2VfaWRfcmV1c2Vfd2FybmVkLgogICAgICAK ICAgICAgZmlsX2NyZWF0ZV9uZXdfc2luZ2xlX3RhYmxlX3RhYmxlc3BhY2UoKTogR2V0IHRoZSBz cGFjZV9pZCBmcm9tIHRoZSBjYWxsZXIuCiAgICAgIAogICAgICBmaWxfc3BhY2VfY3JlYXRlKCk6 IElzc3VlIGEgd2FybmluZyBpZiB0aGUgZmlsX3N5c3RlbS0+bWF4X2Fzc2lnbmVkX2lkCiAgICAg IGlzIGV4Y2VlZGVkLgogICAgICAKICAgICAgZmlsX2Fzc2lnbl9uZXdfc3BhY2VfaWQoKTogUmV0 dXJuIFRSVUUvRkFMU0UgYW5kIHRha2UgYSBwb2ludGVyIHRvIHRoZQogICAgICBzcGFjZV9pZCBh cyBhIHBhcmFtZXRlci4gTWFrZSB0aGUgZnVuY3Rpb24gcHVibGljLgogICAgICAKICAgICAgZmls X2luaXQoKTogSW5pdGlhbGl6ZSBhbGwgZmlsX3N5c3RlbSBmaWVsZHMgYnkgbWVtX3phbGxvYygp LiBSZW1vdmUKICAgICAgZXhwbGljaXQgaW5pdGlhbGl6YXRpb25zIG9mIGNlcnRhaW4gZmllbGRz IHRvIDAgb3IgTlVMTC4KCiAgICBtb2RpZmllZDoKICAgICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2lu L2RpY3QvZGljdDBib290LmMKICAgICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2RpY3QvZGljdDBj cmVhLmMKICAgICAgc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2ZpbC9maWwwZmlsLmMKICAgICAgc3Rv cmFnZS9pbm5vZGJfcGx1Z2luL2luY2x1ZGUvZGljdDBib290LmgKICAgICAgc3RvcmFnZS9pbm5v ZGJfcGx1Z2luL2luY2x1ZGUvZmlsMGZpbC5oCiAgICAgIHN0b3JhZ2UvaW5ub2RiX3BsdWdpbi9y b3cvcm93MG15c3FsLmMKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9k aWN0L2RpY3QwYm9vdC5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vZGljdC9kaWN0MGJv b3QuYwlyZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAwNTIwMTMzMTU3LTQydWs1cTNw cDB2c2luYWMKKysrIGIvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2RpY3QvZGljdDBib290LmMJcmV2 aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMDA1MjQxMTA0MzktZmF6aTcwcmxtdDA3dHpk OQpAQCAtNjIsMzIgKzYyLDQ3IEBAIGRpY3RfaGRyX2dldCgKIH0KIAogLyoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov LyoqCi1SZXR1cm5zIGEgbmV3IHRhYmxlLCBpbmRleCwgb3IgdHJlZSBpZC4KLUByZXR1cm4JdGhl IG5ldyBpZCAqLworUmV0dXJucyBhIG5ldyB0YWJsZSwgaW5kZXgsIG9yIHNwYWNlIGlkLiAqLwog VU5JVl9JTlRFUk4KLWR1bGludAordm9pZAogZGljdF9oZHJfZ2V0X25ld19pZCgKIC8qPT09PT09 PT09PT09PT09PSovCi0JdWxpbnQJdHlwZSkJLyohPCBpbjogRElDVF9IRFJfUk9XX0lELCAuLi4g Ki8KKwlkdWxpbnQqCXRhYmxlX2lkLAkvKiE8IG91dDogdGFibGUgaWQgKG5vdCBhc3NpZ25lZCBp ZiBOVUxMKSAqLworCWR1bGludCoJaW5kZXhfaWQsCS8qITwgb3V0OiBpbmRleCBpZCAobm90IGFz c2lnbmVkIGlmIE5VTEwpICovCisJdWxpbnQqCXNwYWNlX2lkKQkvKiE8IG91dDogc3BhY2UgaWQg KG5vdCBhc3NpZ25lZCBpZiBOVUxMKSAqLwogewogCWRpY3RfaGRyX3QqCWRpY3RfaGRyOwogCWR1 bGludAkJaWQ7CiAJbXRyX3QJCW10cjsKIAotCXV0X2FkKCh0eXBlID09IERJQ1RfSERSX1RBQkxF X0lEKSB8fCAodHlwZSA9PSBESUNUX0hEUl9JTkRFWF9JRCkpOwotCiAJbXRyX3N0YXJ0KCZtdHIp OwogCiAJZGljdF9oZHIgPSBkaWN0X2hkcl9nZXQoJm10cik7CiAKLQlpZCA9IG10cl9yZWFkX2R1 bGludChkaWN0X2hkciArIHR5cGUsICZtdHIpOwotCWlkID0gdXRfZHVsaW50X2FkZChpZCwgMSk7 Ci0KLQltbG9nX3dyaXRlX2R1bGludChkaWN0X2hkciArIHR5cGUsIGlkLCAmbXRyKTsKKwlpZiAo dGFibGVfaWQpIHsKKwkJaWQgPSBtdHJfcmVhZF9kdWxpbnQoZGljdF9oZHIgKyBESUNUX0hEUl9U QUJMRV9JRCwgJm10cik7CisJCWlkID0gdXRfZHVsaW50X2FkZChpZCwgMSk7CisJCW1sb2dfd3Jp dGVfZHVsaW50KGRpY3RfaGRyICsgRElDVF9IRFJfVEFCTEVfSUQsIGlkLCAmbXRyKTsKKwkJKnRh YmxlX2lkID0gaWQ7CisJfQorCisJaWYgKGluZGV4X2lkKSB7CisJCWlkID0gbXRyX3JlYWRfZHVs aW50KGRpY3RfaGRyICsgRElDVF9IRFJfSU5ERVhfSUQsICZtdHIpOworCQlpZCA9IHV0X2R1bGlu dF9hZGQoaWQsIDEpOworCQltbG9nX3dyaXRlX2R1bGludChkaWN0X2hkciArIERJQ1RfSERSX0lO REVYX0lELCBpZCwgJm10cik7CisJCSppbmRleF9pZCA9IGlkOworCX0KKworCWlmIChzcGFjZV9p ZCkgeworCQkqc3BhY2VfaWQgPSBtdHJfcmVhZF91bGludChkaWN0X2hkciArIERJQ1RfSERSX01B WF9TUEFDRV9JRCwKKwkJCQkJICAgTUxPR180QllURVMsICZtdHIpOworCQlpZiAoZmlsX2Fzc2ln bl9uZXdfc3BhY2VfaWQoc3BhY2VfaWQpKSB7CisJCQltbG9nX3dyaXRlX3VsaW50KGRpY3RfaGRy ICsgRElDVF9IRFJfTUFYX1NQQUNFX0lELAorCQkJCQkgKnNwYWNlX2lkLCBNTE9HXzRCWVRFUywg Jm10cik7CisJCX0KKwl9CiAKIAltdHJfY29tbWl0KCZtdHIpOwotCi0JcmV0dXJuKGlkKTsKIH0K IAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKiovLyoqCkBAIC0xNTEsOSArMTY2LDEyIEBAIGRpY3RfaGRyX2NyZWF0 ZSgKIAltbG9nX3dyaXRlX2R1bGludChkaWN0X2hlYWRlciArIERJQ1RfSERSX0lOREVYX0lELAog CQkJICB1dF9kdWxpbnRfY3JlYXRlKDAsIERJQ1RfSERSX0ZJUlNUX0lEKSwgbXRyKTsKIAotCS8q IE9ic29sZXRlLCBidXQgd2UgbXVzdCBpbml0aWFsaXplIGl0IHRvIDAgYW55d2F5LiAqLwotCW1s b2dfd3JpdGVfZHVsaW50KGRpY3RfaGVhZGVyICsgRElDVF9IRFJfTUlYX0lELAotCQkJICB1dF9k dWxpbnRfY3JlYXRlKDAsIERJQ1RfSERSX0ZJUlNUX0lEKSwgbXRyKTsKKwltbG9nX3dyaXRlX3Vs aW50KGRpY3RfaGVhZGVyICsgRElDVF9IRFJfTUFYX1NQQUNFX0lELAorCQkJIDAsIE1MT0dfNEJZ VEVTLCBtdHIpOworCisJLyogT2Jzb2xldGUsIGJ1dCB3ZSBtdXN0IGluaXRpYWxpemUgaXQgYW55 d2F5LiAqLworCW1sb2dfd3JpdGVfdWxpbnQoZGljdF9oZWFkZXIgKyBESUNUX0hEUl9NSVhfSURf TE9XLAorCQkJIERJQ1RfSERSX0ZJUlNUX0lELCBNTE9HXzRCWVRFUywgbXRyKTsKIAogCS8qIENy ZWF0ZSB0aGUgQi10cmVlIHJvb3RzIGZvciB0aGUgY2x1c3RlcmVkIGluZGV4ZXMgb2YgdGhlIGJh c2ljCiAJc3lzdGVtIHRhYmxlcyAqLwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2Ri X3BsdWdpbi9kaWN0L2RpY3QwY3JlYS5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vZGlj dC9kaWN0MGNyZWEuYwlyZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAwNTIwMTMzMTU3 LTQydWs1cTNwcDB2c2luYWMKKysrIGIvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2RpY3QvZGljdDBj cmVhLmMJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMDA1MjQxMTA0MzktZmF6aTcw cmxtdDA3dHpkOQpAQCAtMjM5LDE2ICsyMzksMjIgQEAgZGljdF9idWlsZF90YWJsZV9kZWZfc3Rl cCgKIAljb25zdCBjaGFyKglwYXRoX29yX25hbWU7CiAJaWJvb2wJCWlzX3BhdGg7CiAJbXRyX3QJ CW10cjsKKwl1bGludAkJc3BhY2UgPSAwOwogCiAJdXRfYWQobXV0ZXhfb3duKCYoZGljdF9zeXMt Pm11dGV4KSkpOwogCiAJdGFibGUgPSBub2RlLT50YWJsZTsKIAotCXRhYmxlLT5pZCA9IGRpY3Rf aGRyX2dldF9uZXdfaWQoRElDVF9IRFJfVEFCTEVfSUQpOworCWRpY3RfaGRyX2dldF9uZXdfaWQo JnRhYmxlLT5pZCwgTlVMTCwKKwkJCSAgICBzcnZfZmlsZV9wZXJfdGFibGUgPyAmc3BhY2UgOiBO VUxMKTsKIAogCXRocl9nZXRfdHJ4KHRociktPnRhYmxlX2lkID0gdGFibGUtPmlkOwogCiAJaWYg KHNydl9maWxlX3Blcl90YWJsZSkgeworCQlpZiAoVU5JVl9VTkxJS0VMWShzcGFjZSA9PSBVTElO VF9VTkRFRklORUQpKSB7CisJCQlyZXR1cm4oREJfRVJST1IpOworCQl9CisKIAkJLyogV2UgY3Jl YXRlIGEgbmV3IHNpbmdsZS10YWJsZSB0YWJsZXNwYWNlIGZvciB0aGUgdGFibGUuCiAJCVdlIGlu aXRpYWxseSBsZXQgaXQgYmUgNCBwYWdlczoKIAkJLSBwYWdlIDAgaXMgdGhlIGZzcCBoZWFkZXIg YW5kIGFuIGV4dGVudCBkZXNjcmlwdG9yIHBhZ2UsCkBAIC0yNTcsOCArMjYzLDYgQEAgZGljdF9i dWlsZF90YWJsZV9kZWZfc3RlcCgKIAkJLSBwYWdlIDMgd2lsbCBjb250YWluIHRoZSByb290IG9m IHRoZSBjbHVzdGVyZWQgaW5kZXggb2YgdGhlCiAJCXRhYmxlIHdlIGNyZWF0ZSBoZXJlLiAqLwog Ci0JCXVsaW50CXNwYWNlID0gMDsJLyogcmVzZXQgdG8gemVybyBmb3IgdGhlIGNhbGwgYmVsb3cg Ki8KLQogCQlpZiAodGFibGUtPmRpcl9wYXRoX29mX3RlbXBfdGFibGUpIHsKIAkJCS8qIFdlIHBs YWNlIHRhYmxlcyBjcmVhdGVkIHdpdGggQ1JFQVRFIFRFTVBPUkFSWQogCQkJVEFCTEUgaW4gdGhl IHRtcCBkaXIgb2YgbXlzcWxkIHNlcnZlciAqLwpAQCAtMjc2LDcgKzI4MCw3IEBAIGRpY3RfYnVp bGRfdGFibGVfZGVmX3N0ZXAoCiAKIAkJZmxhZ3MgPSB0YWJsZS0+ZmxhZ3MgJiB+KH4wIDw8IERJ Q1RfVEZfQklUUyk7CiAJCWVycm9yID0gZmlsX2NyZWF0ZV9uZXdfc2luZ2xlX3RhYmxlX3RhYmxl c3BhY2UoCi0JCQkmc3BhY2UsIHBhdGhfb3JfbmFtZSwgaXNfcGF0aCwKKwkJCXNwYWNlLCBwYXRo X29yX25hbWUsIGlzX3BhdGgsCiAJCQlmbGFncyA9PSBESUNUX1RGX0NPTVBBQ1QgPyAwIDogZmxh Z3MsCiAJCQlGSUxfSUJEX0ZJTEVfSU5JVElBTF9TSVpFKTsKIAkJdGFibGUtPnNwYWNlID0gKHVu c2lnbmVkIGludCkgc3BhY2U7CkBAIC01NjEsNyArNTY1LDcgQEAgZGljdF9idWlsZF9pbmRleF9k ZWZfc3RlcCgKIAl1dF9hZCgoVVRfTElTVF9HRVRfTEVOKHRhYmxlLT5pbmRleGVzKSA+IDApCiAJ ICAgICAgfHwgZGljdF9pbmRleF9pc19jbHVzdChpbmRleCkpOwogCi0JaW5kZXgtPmlkID0gZGlj dF9oZHJfZ2V0X25ld19pZChESUNUX0hEUl9JTkRFWF9JRCk7CisJZGljdF9oZHJfZ2V0X25ld19p ZChOVUxMLCAmaW5kZXgtPmlkLCBOVUxMKTsKIAogCS8qIEluaGVyaXQgdGhlIHNwYWNlIGlkIGZy b20gdGhlIHRhYmxlOyB3ZSBzdG9yZSBhbGwgaW5kZXhlcyBvZiBhCiAJdGFibGUgaW4gdGhlIHNh bWUgdGFibGVzcGFjZSAqLwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3BsdWdp bi9maWwvZmlsMGZpbC5jJwotLS0gYS9zdG9yYWdlL2lubm9kYl9wbHVnaW4vZmlsL2ZpbDBmaWwu YwlyZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAwNTIwMTMzMTU3LTQydWs1cTNwcDB2 c2luYWMKKysrIGIvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2ZpbC9maWwwZmlsLmMJcmV2aWQ6bWFy a28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMDA1MjQxMTA0MzktZmF6aTcwcmxtdDA3dHpkOQpAQCAt Mjc5LDYgKzI3OSwxMCBAQCBzdHJ1Y3QgZmlsX3N5c3RlbV9zdHJ1Y3QgewogCQkJCQlyZXF1ZXN0 ICovCiAJVVRfTElTVF9CQVNFX05PREVfVChmaWxfc3BhY2VfdCkgc3BhY2VfbGlzdDsKIAkJCQkJ LyohPCBsaXN0IG9mIGFsbCBmaWxlIHNwYWNlcyAqLworCWlib29sCQlzcGFjZV9pZF9yZXVzZV93 YXJuZWQ7CisJCQkJCS8qICE8IFRSVUUgaWYgZmlsX3NwYWNlX2NyZWF0ZSgpCisJCQkJCWhhcyBp c3N1ZWQgYSB3YXJuaW5nIGFib3V0CisJCQkJCXBvdGVudGlhbCBzcGFjZV9pZCByZXVzZSAqLwog fTsKIAogLyoqIFRoZSB0YWJsZXNwYWNlIG1lbW9yeSBjYWNoZS4gVGhpcyB2YXJpYWJsZSBpcyBO VUxMIGJlZm9yZSB0aGUgbW9kdWxlIGlzCkBAIC0xMTkzLDcgKzExOTcsMTkgQEAgdHJ5X2FnYWlu OgogCXNwYWNlLT50YWJsZXNwYWNlX3ZlcnNpb24gPSBmaWxfc3lzdGVtLT50YWJsZXNwYWNlX3Zl cnNpb247CiAJc3BhY2UtPm1hcmsgPSBGQUxTRTsKIAotCWlmIChwdXJwb3NlID09IEZJTF9UQUJM RVNQQUNFICYmIGlkID4gZmlsX3N5c3RlbS0+bWF4X2Fzc2lnbmVkX2lkKSB7CisJaWYgKFVOSVZf TElLRUxZKHB1cnBvc2UgPT0gRklMX1RBQkxFU1BBQ0UpCisJICAgICYmIFVOSVZfVU5MSUtFTFko aWQgPiBmaWxfc3lzdGVtLT5tYXhfYXNzaWduZWRfaWQpKSB7CisJCWlmICghZmlsX3N5c3RlbS0+ c3BhY2VfaWRfcmV1c2Vfd2FybmVkKSB7CisJCQlmaWxfc3lzdGVtLT5zcGFjZV9pZF9yZXVzZV93 YXJuZWQgPSBUUlVFOworCisJCQl1dF9wcmludF90aW1lc3RhbXAoc3RkZXJyKTsKKwkJCWZwcmlu dGYoc3RkZXJyLAorCQkJCSIgIElubm9EQjogV2FybmluZzogYWxsb2NhdGVkIHRhYmxlc3BhY2Ug JWx1LCIKKwkJCQkiIG9sZCBtYXhpbXVtIHdhcyAlbHVcbiIsCisJCQkJKHVsb25nKSBpZCwKKwkJ CQkodWxvbmcpIGZpbF9zeXN0ZW0tPm1heF9hc3NpZ25lZF9pZCk7CisJCX0KKwogCQlmaWxfc3lz dGVtLT5tYXhfYXNzaWduZWRfaWQgPSBpZDsKIAl9CiAKQEAgLTEyMzEsMTkgKzEyNDcsMjUgQEAg dHJ5X2FnYWluOgogQXNzaWducyBhIG5ldyBzcGFjZSBpZCBmb3IgYSBuZXcgc2luZ2xlLXRhYmxl IHRhYmxlc3BhY2UuIFRoaXMgd29ya3Mgc2ltcGx5IGJ5CiBpbmNyZW1lbnRpbmcgdGhlIGdsb2Jh bCBjb3VudGVyLiBJZiA0IGJpbGxpb24gaWQncyBpcyBub3QgZW5vdWdoLCB3ZSBtYXkgbmVlZAog dG8gcmVjeWNsZSBpZCdzLgotQHJldHVybgluZXcgdGFibGVzcGFjZSBpZDsgVUxJTlRfVU5ERUZJ TkVEIGlmIGNvdWxkIG5vdCBhc3NpZ24gYW4gaWQgKi8KLXN0YXRpYwotdWxpbnQKLWZpbF9hc3Np Z25fbmV3X3NwYWNlX2lkKHZvaWQpCi0vKj09PT09PT09PT09PT09PT09PT09PT09PT0qLworQHJl dHVybglUUlVFIGlmIGFzc2lnbmVkLCBGQUxTRSBpZiBub3QgKi8KK1VOSVZfSU5URVJOCitpYm9v bAorZmlsX2Fzc2lnbl9uZXdfc3BhY2VfaWQoCisvKj09PT09PT09PT09PT09PT09PT09Ki8KKwl1 bGludCoJc3BhY2VfaWQpCS8qITwgaW4vb3V0OiBzcGFjZSBpZCAqLwogewotCXVsaW50CQlpZDsK Kwl1bGludAlpZDsKKwlpYm9vbAlzdWNjZXNzOwogCiAJbXV0ZXhfZW50ZXIoJmZpbF9zeXN0ZW0t Pm11dGV4KTsKIAotCWZpbF9zeXN0ZW0tPm1heF9hc3NpZ25lZF9pZCsrOworCWlkID0gKnNwYWNl X2lkOwogCi0JaWQgPSBmaWxfc3lzdGVtLT5tYXhfYXNzaWduZWRfaWQ7CisJaWYgKGlkIDwgZmls X3N5c3RlbS0+bWF4X2Fzc2lnbmVkX2lkKSB7CisJCWlkID0gZmlsX3N5c3RlbS0+bWF4X2Fzc2ln bmVkX2lkOworCX0KKworCWlkKys7CiAKIAlpZiAoaWQgPiAoU1JWX0xPR19TUEFDRV9GSVJTVF9J RCAvIDIpICYmIChpZCAlIDEwMDAwMDBVTCA9PSAwKSkgewogCQl1dF9wcmludF90aW1lc3RhbXAo c3RkZXJyKTsKQEAgLTEyNTksNyArMTI4MSwxMSBAQCBmaWxfYXNzaWduX25ld19zcGFjZV9pZCh2 b2lkKQogCQkJKHVsb25nKSBTUlZfTE9HX1NQQUNFX0ZJUlNUX0lEKTsKIAl9CiAKLQlpZiAoaWQg Pj0gU1JWX0xPR19TUEFDRV9GSVJTVF9JRCkgeworCXN1Y2Nlc3MgPSAoaWQgPCBTUlZfTE9HX1NQ QUNFX0ZJUlNUX0lEKTsKKworCWlmIChzdWNjZXNzKSB7CisJCSpzcGFjZV9pZCA9IGZpbF9zeXN0 ZW0tPm1heF9hc3NpZ25lZF9pZCA9IGlkOworCX0gZWxzZSB7CiAJCXV0X3ByaW50X3RpbWVzdGFt cChzdGRlcnIpOwogCQlmcHJpbnRmKHN0ZGVyciwKIAkJCSJJbm5vREI6IFlvdSBoYXZlIHJ1biBv dXQgb2Ygc2luZ2xlLXRhYmxlIgpAQCAtMTI2OSwxNCArMTI5NSwxMiBAQCBmaWxfYXNzaWduX25l d19zcGFjZV9pZCh2b2lkKQogCQkJIiBoYXZlIHRvIGR1bXAgYWxsIHlvdXIgdGFibGVzIGFuZFxu IgogCQkJIklubm9EQjogcmVjcmVhdGUgdGhlIHdob2xlIElubm9EQiBpbnN0YWxsYXRpb24uXG4i LAogCQkJKHVsb25nKSBpZCk7Ci0JCWZpbF9zeXN0ZW0tPm1heF9hc3NpZ25lZF9pZC0tOwotCi0J CWlkID0gVUxJTlRfVU5ERUZJTkVEOworCQkqc3BhY2VfaWQgPSBVTElOVF9VTkRFRklORUQ7CiAJ fQogCiAJbXV0ZXhfZXhpdCgmZmlsX3N5c3RlbS0+bXV0ZXgpOwogCi0JcmV0dXJuKGlkKTsKKwly ZXR1cm4oc3VjY2Vzcyk7CiB9CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgpAQCAtMTUxMiw3ICsxNTM2LDcg QEAgZmlsX2luaXQoCiAJdXRfYShoYXNoX3NpemUgPiAwKTsKIAl1dF9hKG1heF9uX29wZW4gPiAw KTsKIAotCWZpbF9zeXN0ZW0gPSBtZW1fYWxsb2Moc2l6ZW9mKGZpbF9zeXN0ZW1fdCkpOworCWZp bF9zeXN0ZW0gPSBtZW1femFsbG9jKHNpemVvZihmaWxfc3lzdGVtX3QpKTsKIAogCW11dGV4X2Ny ZWF0ZSgmZmlsX3N5c3RlbS0+bXV0ZXgsIFNZTkNfQU5ZX0xBVENIKTsKIApAQCAtMTUyMSwxNiAr MTU0NSw3IEBAIGZpbF9pbml0KAogCiAJVVRfTElTVF9JTklUKGZpbF9zeXN0ZW0tPkxSVSk7CiAK LQlmaWxfc3lzdGVtLT5uX29wZW4gPSAwOwogCWZpbF9zeXN0ZW0tPm1heF9uX29wZW4gPSBtYXhf bl9vcGVuOwotCi0JZmlsX3N5c3RlbS0+bW9kaWZpY2F0aW9uX2NvdW50ZXIgPSAwOwotCWZpbF9z eXN0ZW0tPm1heF9hc3NpZ25lZF9pZCA9IDA7Ci0KLQlmaWxfc3lzdGVtLT50YWJsZXNwYWNlX3Zl cnNpb24gPSAwOwotCi0JVVRfTElTVF9JTklUKGZpbF9zeXN0ZW0tPnVuZmx1c2hlZF9zcGFjZXMp OwotCVVUX0xJU1RfSU5JVChmaWxfc3lzdGVtLT5zcGFjZV9saXN0KTsKIH0KIAogLyoqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KiovLyoqCkBAIC0yMTE1LDcgKzIxMzAsNyBAQCBmaWxfb3BfbG9nX3BhcnNlX29yX3JlcGxheSgK IAkJCWZpbF9jcmVhdGVfZGlyZWN0b3J5X2Zvcl90YWJsZW5hbWUobmFtZSk7CiAKIAkJCWlmIChm aWxfY3JlYXRlX25ld19zaW5nbGVfdGFibGVfdGFibGVzcGFjZSgKLQkJCQkgICAgJnNwYWNlX2lk LCBuYW1lLCBGQUxTRSwgZmxhZ3MsCisJCQkJICAgIHNwYWNlX2lkLCBuYW1lLCBGQUxTRSwgZmxh Z3MsCiAJCQkJICAgIEZJTF9JQkRfRklMRV9JTklUSUFMX1NJWkUpICE9IERCX1NVQ0NFU1MpIHsK IAkJCQl1dF9lcnJvcjsKIAkJCX0KQEAgLTI1NjIsOSArMjU3Nyw3IEBAIFVOSVZfSU5URVJOCiB1 bGludAogZmlsX2NyZWF0ZV9uZXdfc2luZ2xlX3RhYmxlX3RhYmxlc3BhY2UoCiAvKj09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLQl1bGludCoJCXNwYWNlX2lkLAkvKiE8IGlu L291dDogc3BhY2UgaWQ7IGlmIHRoaXMgaXMgIT0gMCwKLQkJCQkJdGhlbiB0aGlzIGlzIGFuIGlu cHV0IHBhcmFtZXRlciwKLQkJCQkJb3RoZXJ3aXNlIG91dHB1dCAqLworCXVsaW50CQlzcGFjZV9p ZCwJLyohPCBpbjogc3BhY2UgaWQgKi8KIAljb25zdCBjaGFyKgl0YWJsZW5hbWUsCS8qITwgaW46 IHRoZSB0YWJsZSBuYW1lIGluIHRoZSB1c3VhbAogCQkJCQlkYXRhYmFzZW5hbWUvdGFibGVuYW1l IGZvcm1hdAogCQkJCQlvZiBJbm5vREIsIG9yIGEgZGlyIHBhdGggdG8gYSB0ZW1wCkBAIC0yNTg0 LDYgKzI1OTcsOCBAQCBmaWxfY3JlYXRlX25ld19zaW5nbGVfdGFibGVfdGFibGVzcGFjZSgKIAlp Ym9vbAkJc3VjY2VzczsKIAljaGFyKgkJcGF0aDsKIAorCXV0X2Eoc3BhY2VfaWQgPiAwKTsKKwl1 dF9hKHNwYWNlX2lkIDwgU1JWX0xPR19TUEFDRV9GSVJTVF9JRCk7CiAJdXRfYShzaXplID49IEZJ TF9JQkRfRklMRV9JTklUSUFMX1NJWkUpOwogCS8qIFRoZSB0YWJsZXNwYWNlIGZsYWdzIChGU1Bf U1BBQ0VfRkxBR1MpIHNob3VsZCBiZSAwIGZvcgogCVJPV19GT1JNQVQ9Q09NUEFDVApAQCAtMjY0 MCwzOCArMjY1NSwyMSBAQCBmaWxfY3JlYXRlX25ld19zaW5nbGVfdGFibGVfdGFibGVzcGFjZSgK IAkJcmV0dXJuKERCX0VSUk9SKTsKIAl9CiAKLQlidWYyID0gdXRfbWFsbG9jKDMgKiBVTklWX1BB R0VfU0laRSk7Ci0JLyogQWxpZ24gdGhlIG1lbW9yeSBmb3IgZmlsZSBpL28gaWYgd2UgbWlnaHQg aGF2ZSBPX0RJUkVDVCBzZXQgKi8KLQlwYWdlID0gdXRfYWxpZ24oYnVmMiwgVU5JVl9QQUdFX1NJ WkUpOwotCiAJcmV0ID0gb3NfZmlsZV9zZXRfc2l6ZShwYXRoLCBmaWxlLCBzaXplICogVU5JVl9Q QUdFX1NJWkUsIDApOwogCiAJaWYgKCFyZXQpIHsKLQkJdXRfZnJlZShidWYyKTsKLQkJb3NfZmls ZV9jbG9zZShmaWxlKTsKLQkJb3NfZmlsZV9kZWxldGUocGF0aCk7Ci0KLQkJbWVtX2ZyZWUocGF0 aCk7Ci0JCXJldHVybihEQl9PVVRfT0ZfRklMRV9TUEFDRSk7Ci0JfQotCi0JaWYgKCpzcGFjZV9p ZCA9PSAwKSB7Ci0JCSpzcGFjZV9pZCA9IGZpbF9hc3NpZ25fbmV3X3NwYWNlX2lkKCk7Ci0JfQot Ci0JLyogcHJpbnRmKCJDcmVhdGluZyB0YWJsZXNwYWNlICVzIGlkICVsdVxuIiwgcGF0aCwgKnNw YWNlX2lkKTsgKi8KLQotCWlmICgqc3BhY2VfaWQgPT0gVUxJTlRfVU5ERUZJTkVEKSB7Ci0JCXV0 X2ZyZWUoYnVmMik7CisJCWVyciA9IERCX09VVF9PRl9GSUxFX1NQQUNFOwogZXJyb3JfZXhpdDoK IAkJb3NfZmlsZV9jbG9zZShmaWxlKTsKIGVycm9yX2V4aXQyOgogCQlvc19maWxlX2RlbGV0ZShw YXRoKTsKIAogCQltZW1fZnJlZShwYXRoKTsKLQkJcmV0dXJuKERCX0VSUk9SKTsKKwkJcmV0dXJu KGVycik7CiAJfQogCisJLyogcHJpbnRmKCJDcmVhdGluZyB0YWJsZXNwYWNlICVzIGlkICVsdVxu IiwgcGF0aCwgc3BhY2VfaWQpOyAqLworCiAJLyogV2UgaGF2ZSB0byB3cml0ZSB0aGUgc3BhY2Ug aWQgdG8gdGhlIGZpbGUgaW1tZWRpYXRlbHkgYW5kIGZsdXNoIHRoZQogCWZpbGUgdG8gZGlzay4g VGhpcyBpcyBiZWNhdXNlIGluIGNyYXNoIHJlY292ZXJ5IHdlIG11c3QgYmUgYXdhcmUgd2hhdAog CXRhYmxlc3BhY2VzIGV4aXN0IGFuZCB3aGF0IGFyZSB0aGVpciBzcGFjZSBpZCdzLCBzbyB0aGF0 IHdlIGNhbiBhcHBseQpAQCAtMjY4MSwxMCArMjY3OSwxNCBAQCBlcnJvcl9leGl0MjoKIAl3aXRo IHplcm9zIGZyb20gdGhlIGNhbGwgb2Ygb3NfZmlsZV9zZXRfc2l6ZSgpLCB1bnRpbCBhIGJ1ZmZl ciBwb29sCiAJZmx1c2ggd291bGQgd3JpdGUgdG8gaXQuICovCiAKKwlidWYyID0gdXRfbWFsbG9j KDMgKiBVTklWX1BBR0VfU0laRSk7CisJLyogQWxpZ24gdGhlIG1lbW9yeSBmb3IgZmlsZSBpL28g aWYgd2UgbWlnaHQgaGF2ZSBPX0RJUkVDVCBzZXQgKi8KKwlwYWdlID0gdXRfYWxpZ24oYnVmMiwg VU5JVl9QQUdFX1NJWkUpOworCiAJbWVtc2V0KHBhZ2UsICdcMCcsIFVOSVZfUEFHRV9TSVpFKTsK IAotCWZzcF9oZWFkZXJfaW5pdF9maWVsZHMocGFnZSwgKnNwYWNlX2lkLCBmbGFncyk7Ci0JbWFj aF93cml0ZV90b180KHBhZ2UgKyBGSUxfUEFHRV9BUkNIX0xPR19OT19PUl9TUEFDRV9JRCwgKnNw YWNlX2lkKTsKKwlmc3BfaGVhZGVyX2luaXRfZmllbGRzKHBhZ2UsIHNwYWNlX2lkLCBmbGFncyk7 CisJbWFjaF93cml0ZV90b180KHBhZ2UgKyBGSUxfUEFHRV9BUkNIX0xPR19OT19PUl9TUEFDRV9J RCwgc3BhY2VfaWQpOwogCiAJaWYgKCEoZmxhZ3MgJiBESUNUX1RGX1pTU0laRV9NQVNLKSkgewog CQlidWZfZmx1c2hfaW5pdF9mb3Jfd3JpdGluZyhwYWdlLCBOVUxMLCAwKTsKQEAgLTI3MTUsNiAr MjcxNyw3IEBAIGVycm9yX2V4aXQyOgogCQkgICAgICAiIHRvIHRhYmxlc3BhY2UgIiwgc3RkZXJy KTsKIAkJdXRfcHJpbnRfZmlsZW5hbWUoc3RkZXJyLCBwYXRoKTsKIAkJcHV0YygnXG4nLCBzdGRl cnIpOworCQllcnIgPSBEQl9FUlJPUjsKIAkJZ290byBlcnJvcl9leGl0OwogCX0KIApAQCAtMjcy NCwyMiArMjcyNywyMCBAQCBlcnJvcl9leGl0MjoKIAkJZnB1dHMoIklubm9EQjogRXJyb3I6IGZp bGUgZmx1c2ggb2YgdGFibGVzcGFjZSAiLCBzdGRlcnIpOwogCQl1dF9wcmludF9maWxlbmFtZShz dGRlcnIsIHBhdGgpOwogCQlmcHV0cygiIGZhaWxlZFxuIiwgc3RkZXJyKTsKKwkJZXJyID0gREJf RVJST1I7CiAJCWdvdG8gZXJyb3JfZXhpdDsKIAl9CiAKIAlvc19maWxlX2Nsb3NlKGZpbGUpOwog Ci0JaWYgKCpzcGFjZV9pZCA9PSBVTElOVF9VTkRFRklORUQpIHsKLQkJZ290byBlcnJvcl9leGl0 MjsKLQl9Ci0KLQlzdWNjZXNzID0gZmlsX3NwYWNlX2NyZWF0ZShwYXRoLCAqc3BhY2VfaWQsIGZs YWdzLCBGSUxfVEFCTEVTUEFDRSk7CisJc3VjY2VzcyA9IGZpbF9zcGFjZV9jcmVhdGUocGF0aCwg c3BhY2VfaWQsIGZsYWdzLCBGSUxfVEFCTEVTUEFDRSk7CiAKIAlpZiAoIXN1Y2Nlc3MpIHsKKwkJ ZXJyID0gREJfRVJST1I7CiAJCWdvdG8gZXJyb3JfZXhpdDI7CiAJfQogCi0JZmlsX25vZGVfY3Jl YXRlKHBhdGgsIHNpemUsICpzcGFjZV9pZCwgRkFMU0UpOworCWZpbF9ub2RlX2NyZWF0ZShwYXRo LCBzaXplLCBzcGFjZV9pZCwgRkFMU0UpOwogCiAjaWZuZGVmIFVOSVZfSE9UQkFDS1VQCiAJewpA QCAtMjc1MCw3ICsyNzUxLDcgQEAgZXJyb3JfZXhpdDI6CiAJCWZpbF9vcF93cml0ZV9sb2coZmxh Z3MKIAkJCQkgPyBNTE9HX0ZJTEVfQ1JFQVRFMgogCQkJCSA6IE1MT0dfRklMRV9DUkVBVEUsCi0J CQkJICpzcGFjZV9pZCwKKwkJCQkgc3BhY2VfaWQsCiAJCQkJIGlzX3RlbXAgPyBNTE9HX0ZJTEVf RkxBR19URU1QIDogMCwKIAkJCQkgZmxhZ3MsCiAJCQkJIHRhYmxlbmFtZSwgTlVMTCwgJm10cik7 Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2luY2x1ZGUvZGljdDBi b290LmgnCi0tLSBhL3N0b3JhZ2UvaW5ub2RiX3BsdWdpbi9pbmNsdWRlL2RpY3QwYm9vdC5oCXJl dmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDA1MjAxMzMxNTctNDJ1azVxM3BwMHZzaW5h YworKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVkZS9kaWN0MGJvb3QuaAlyZXZpZDpt YXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEwMDUyNDExMDQzOS1mYXppNzBybG10MDd0emQ5CkBA IC00NiwxMyArNDYsMTQgQEAgZGljdF9oZHJfZ2V0KAogLyo9PT09PT09PT0qLwogCW10cl90Kglt dHIpOwkvKiE8IGluOiBtdHIgKi8KIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgotUmV0dXJucyBhIG5ldyBy b3csIHRhYmxlLCBpbmRleCwgb3IgdHJlZSBpZC4KLUByZXR1cm4JdGhlIG5ldyBpZCAqLworUmV0 dXJucyBhIG5ldyB0YWJsZSwgaW5kZXgsIG9yIHNwYWNlIGlkLiAqLwogVU5JVl9JTlRFUk4KLWR1 bGludAordm9pZAogZGljdF9oZHJfZ2V0X25ld19pZCgKIC8qPT09PT09PT09PT09PT09PSovCi0J dWxpbnQJdHlwZSk7CS8qITwgaW46IERJQ1RfSERSX1JPV19JRCwgLi4uICovCisJZHVsaW50Kgl0 YWJsZV9pZCwJLyohPCBvdXQ6IHRhYmxlIGlkIChub3QgYXNzaWduZWQgaWYgTlVMTCkgKi8KKwlk dWxpbnQqCWluZGV4X2lkLAkvKiE8IG91dDogaW5kZXggaWQgKG5vdCBhc3NpZ25lZCBpZiBOVUxM KSAqLworCXVsaW50KglzcGFjZV9pZCk7CS8qITwgb3V0OiBzcGFjZSBpZCAobm90IGFzc2lnbmVk IGlmIE5VTEwpICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKIFJldHVybnMgYSBuZXcgcm93IGlkLgog QHJldHVybgl0aGUgbmV3IGlkICovCkBAIC0xMTksNyArMTIwLDggQEAgZGljdF9jcmVhdGUodm9p ZCk7CiAjZGVmaW5lIERJQ1RfSERSX1JPV19JRAkJMAkvKiBUaGUgbGF0ZXN0IGFzc2lnbmVkIHJv dyBpZCAqLwogI2RlZmluZQlESUNUX0hEUl9UQUJMRV9JRAk4CS8qIFRoZSBsYXRlc3QgYXNzaWdu ZWQgdGFibGUgaWQgKi8KICNkZWZpbmUJRElDVF9IRFJfSU5ERVhfSUQJMTYJLyogVGhlIGxhdGVz dCBhc3NpZ25lZCBpbmRleCBpZCAqLwotI2RlZmluZQlESUNUX0hEUl9NSVhfSUQJCTI0CS8qIE9i c29sZXRlLCBhbHdheXMgMC4gKi8KKyNkZWZpbmUgRElDVF9IRFJfTUFYX1NQQUNFX0lECTI0CS8q IFRoZSBsYXRlc3QgYXNzaWduZWQgc3BhY2UgaWQsIG9yIDAqLworI2RlZmluZQlESUNUX0hEUl9N SVhfSURfTE9XCTI4CS8qIE9ic29sZXRlLGFsd2F5cyBESUNUX0hEUl9GSVJTVF9JRCAqLwogI2Rl ZmluZQlESUNUX0hEUl9UQUJMRVMJCTMyCS8qIFJvb3Qgb2YgdGhlIHRhYmxlIGluZGV4IHRyZWUg Ki8KICNkZWZpbmUJRElDVF9IRFJfVEFCTEVfSURTCTM2CS8qIFJvb3Qgb2YgdGhlIHRhYmxlIGlu ZGV4IHRyZWUgKi8KICNkZWZpbmUJRElDVF9IRFJfQ09MVU1OUwk0MAkvKiBSb290IG9mIHRoZSBj b2x1bW4gaW5kZXggdHJlZSAqLwoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2RiX3Bs dWdpbi9pbmNsdWRlL2ZpbDBmaWwuaCcKLS0tIGEvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL2luY2x1 ZGUvZmlsMGZpbC5oCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDA1MjAxMzMxNTct NDJ1azVxM3BwMHZzaW5hYworKysgYi9zdG9yYWdlL2lubm9kYl9wbHVnaW4vaW5jbHVkZS9maWww ZmlsLmgJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMDA1MjQxMTA0MzktZmF6aTcw cmxtdDA3dHpkOQpAQCAtMjI1LDYgKzIyNSwxNiBAQCBmaWxfc3BhY2VfY3JlYXRlKAogCQkJCTAg Zm9yIHVuY29tcHJlc3NlZCB0YWJsZXNwYWNlcyAqLwogCXVsaW50CQlwdXJwb3NlKTsvKiE8IGlu OiBGSUxfVEFCTEVTUEFDRSwgb3IgRklMX0xPRyBpZiBsb2cgKi8KIC8qKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgor QXNzaWducyBhIG5ldyBzcGFjZSBpZCBmb3IgYSBuZXcgc2luZ2xlLXRhYmxlIHRhYmxlc3BhY2Uu IFRoaXMgd29ya3Mgc2ltcGx5IGJ5CitpbmNyZW1lbnRpbmcgdGhlIGdsb2JhbCBjb3VudGVyLiBJ ZiA0IGJpbGxpb24gaWQncyBpcyBub3QgZW5vdWdoLCB3ZSBtYXkgbmVlZAordG8gcmVjeWNsZSBp ZCdzLgorQHJldHVybglUUlVFIGlmIGFzc2lnbmVkLCBGQUxTRSBpZiBub3QgKi8KK1VOSVZfSU5U RVJOCitpYm9vbAorZmlsX2Fzc2lnbl9uZXdfc3BhY2VfaWQoCisvKj09PT09PT09PT09PT09PT09 PT09Ki8KKwl1bGludCoJc3BhY2VfaWQpOwkvKiE8IGluL291dDogc3BhY2UgaWQgKi8KKy8qKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqLy8qKgogUmV0dXJucyB0aGUgc2l6ZSBvZiB0aGUgc3BhY2UgaW4gcGFnZXMuIFRoZSB0 YWJsZXNwYWNlIG11c3QgYmUgY2FjaGVkIGluIHRoZQogbWVtb3J5IGNhY2hlLgogQHJldHVybglz cGFjZSBzaXplLCAwIGlmIHNwYWNlIG5vdCBmb3VuZCAqLwpAQCAtNDI3LDkgKzQzNyw3IEBAIFVO SVZfSU5URVJOCiB1bGludAogZmlsX2NyZWF0ZV9uZXdfc2luZ2xlX3RhYmxlX3RhYmxlc3BhY2Uo CiAvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLQl1bGludCoJCXNwYWNl X2lkLAkvKiE8IGluL291dDogc3BhY2UgaWQ7IGlmIHRoaXMgaXMgIT0gMCwKLQkJCQkJdGhlbiB0 aGlzIGlzIGFuIGlucHV0IHBhcmFtZXRlciwKLQkJCQkJb3RoZXJ3aXNlIG91dHB1dCAqLworCXVs aW50CQlzcGFjZV9pZCwJLyohPCBpbjogc3BhY2UgaWQgKi8KIAljb25zdCBjaGFyKgl0YWJsZW5h bWUsCS8qITwgaW46IHRoZSB0YWJsZSBuYW1lIGluIHRoZSB1c3VhbAogCQkJCQlkYXRhYmFzZW5h bWUvdGFibGVuYW1lIGZvcm1hdAogCQkJCQlvZiBJbm5vREIsIG9yIGEgZGlyIHBhdGggdG8gYSB0 ZW1wCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vZGJfcGx1Z2luL3Jvdy9yb3cwbXlz cWwuYycKLS0tIGEvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL3Jvdy9yb3cwbXlzcWwuYwlyZXZpZDp2 YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTAwNTIwMTMzMTU3LTQydWs1cTNwcDB2c2luYWMKKysr IGIvc3RvcmFnZS9pbm5vZGJfcGx1Z2luL3Jvdy9yb3cwbXlzcWwuYwlyZXZpZDptYXJrby5tYWtl bGFAb3JhY2xlLmNvbS0yMDEwMDUyNDExMDQzOS1mYXppNzBybG10MDd0emQ5CkBAIC0yNDI3LDcg KzI0MjcsNyBAQCByb3dfZGlzY2FyZF90YWJsZXNwYWNlX2Zvcl9teXNxbCgKIAkJZ290byBmdW5j dF9leGl0OwogCX0KIAotCW5ld19pZCA9IGRpY3RfaGRyX2dldF9uZXdfaWQoRElDVF9IRFJfVEFC TEVfSUQpOworCWRpY3RfaGRyX2dldF9uZXdfaWQoJm5ld19pZCwgTlVMTCwgTlVMTCk7CiAKIAkv KiBSZW1vdmUgYWxsIGxvY2tzIGV4Y2VwdCB0aGUgdGFibGUtbGV2ZWwgUyBhbmQgWCBsb2Nrcy4g Ki8KIAlsb2NrX3JlbW92ZV9hbGxfb25fdGFibGUodGFibGUsIEZBTFNFKTsKQEAgLTI3ODksMTAg KzI3ODksMTEgQEAgcm93X3RydW5jYXRlX3RhYmxlX2Zvcl9teXNxbCgKIAogCQkJZGljdF9pbmRl eF90KglpbmRleDsKIAotCQkJc3BhY2UgPSAwOworCQkJZGljdF9oZHJfZ2V0X25ld19pZChOVUxM LCBOVUxMLCAmc3BhY2UpOwogCi0JCQlpZiAoZmlsX2NyZWF0ZV9uZXdfc2luZ2xlX3RhYmxlX3Rh Ymxlc3BhY2UoCi0JCQkJICAgICZzcGFjZSwgdGFibGUtPm5hbWUsIEZBTFNFLCBmbGFncywKKwkJ CWlmIChzcGFjZSA9PSBVTElOVF9VTkRFRklORUQKKwkJCSAgICB8fCBmaWxfY3JlYXRlX25ld19z aW5nbGVfdGFibGVfdGFibGVzcGFjZSgKKwkJCQkgICAgc3BhY2UsIHRhYmxlLT5uYW1lLCBGQUxT RSwgZmxhZ3MsCiAJCQkJICAgIEZJTF9JQkRfRklMRV9JTklUSUFMX1NJWkUpICE9IERCX1NVQ0NF U1MpIHsKIAkJCQl1dF9wcmludF90aW1lc3RhbXAoc3RkZXJyKTsKIAkJCQlmcHJpbnRmKHN0ZGVy ciwKQEAgLTI4OTcsNyArMjg5OCw3IEBAIG5leHRfcmVjOgogCiAJbWVtX2hlYXBfZnJlZShoZWFw KTsKIAotCW5ld19pZCA9IGRpY3RfaGRyX2dldF9uZXdfaWQoRElDVF9IRFJfVEFCTEVfSUQpOwor CWRpY3RfaGRyX2dldF9uZXdfaWQoJm5ld19pZCwgTlVMTCwgTlVMTCk7CiAKIAlpbmZvID0gcGFy c19pbmZvX2NyZWF0ZSgpOwogCgo= --===============1863048323== 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: 4bc2c159e2fe60273a90407b4cede7853727ccd9 # timestamp: 2010-05-24 14:04:55 +0300 # base_revision_id: vasil.dimov@stripped\ # 42uk5q3pp0vsinac # # Begin bundle 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 --===============1863048323==--