From: marko.makela Date: May 31 2012 7:23pm Subject: bzr push into mysql-trunk-wl6255 branch (marko.makela:3920 to 3921) WL#6255 List-Archive: http://lists.mysql.com/commits/144062 Message-Id: <201205311923.q4VJNdrT004603@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 IDM5MjEgTWFya28gTcOka2Vsw6QJMjAxMi0wNS0zMQogICAgICBXTCM2MjU1IE9uLWxpbmUgQUxU RVIgVEFCTEUuLi5NT0RJRlkuLi5OVUxMCiAgICAgIAogICAgICBTdXBwb3J0IEFsdGVyX2lucGxh Y2VfaW5mbzo6QUxURVJfQ09MVU1OX05VTExBQkxFLgogICAgICAKICAgICAgcm93X2xvZ190YWJs ZV9hcHBseV9jb252ZXJ0X21yZWMoKTogQ29udmVydCB0aGUgREFUQV9OT1RfTlVMTCBmbGFnLgog ICAgICBBZGQgYSBUT0RPIGNvbW1lbnQgZm9yIE1PRElGWS4uLk5PVCBOVUxMLgogICAgICAKICAg ICAgcm93X21lcmdlX3JlYWRfY2x1c3RlcmVkX2luZGV4KCk6IEFkZCBhbiBudWxsYWJsZVtdIGFy cmF5IGluIGFkZGl0aW9uCiAgICAgIHRvIG5vbm51bGxbXS4gQWRqdXN0IHRoZSBEQVRBX05PVF9O VUxMIGZsYWcgYXMgbmVlZGVkLgoKICAgIG1vZGlmaWVkOgogICAgICBteXNxbC10ZXN0L3IvYWx0 ZXJfdGFibGUucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiLXRh YmxlLW9ubGluZS5yZXN1bHQKICAgICAgbXlzcWwtdGVzdC9zdWl0ZS9pbm5vZGIvdC9pbm5vZGIt dGFibGUtb25saW5lLnRlc3QKICAgICAgc3RvcmFnZS9pbm5vYmFzZS9oYW5kbGVyL2hhbmRsZXIw YWx0ZXIuY2MKICAgICAgc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MGxvZy5jYwogICAgICBzdG9y YWdlL2lubm9iYXNlL3Jvdy9yb3cwbWVyZ2UuY2MKIDM5MjAgTWFya28gTcOka2Vsw6QJMjAxMi0w NS0zMQogICAgICBGaXggcmFjZSBjb25kaXRpb24gaW4gSW5ub0RCIHRyYW5zYWN0aW9uIGNvbW1p dCBmbHVzaGluZy4KICAgICAgCiAgICAgIHRyeF9mbHVzaF9sb2dfaWZfbmVlZGVkX2xvdygpLCB0 cnhfZmx1c2hfbG9nX2lmX25lZWRlZCgpOgogICAgICBSZWZhY3RvcmVkIGNvbW1vbiBjb2RlLiBS ZWFkIHNydl9mbHVzaF9sb2dfYXRfdHJ4X2NvbW1pdCBvbmx5IG9uY2UuCiAgICAgIFByZXZpb3Vz bHksIGEgcmFjZSBjb25kaXRpb24gY291bGQgb2NjdXIgaWYgc3J2X2ZsdXNoX2xvZ19hdF90cnhf Y29tbWl0CiAgICAgIGNoYW5nZWQgZHVyaW5nIHRoZSBjaGVja3MuCiAgICAgIAogICAgICB0cnhf Y29tbWl0KCksIHRyeF9wcmVwYXJlKCksIHRyeF9jb21taXRfY29tcGxldGVfZm9yX215c3FsKCk6 CiAgICAgIEludm9rZSB0cnhfZmx1c2hfbG9nX2lmX25lZWRlZCgpIGluc3RlYWQgb2YgZHVwbGlj YXRpbmcgdGhlIGNvZGUuCgogICAgbW9kaWZpZWQ6CiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvaW5j bHVkZS90cngwdHJ4LmgKICAgICAgc3RvcmFnZS9pbm5vYmFzZS90cngvdHJ4MHRyeC5jYwo9PT0g bW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9yL2FsdGVyX3RhYmxlLnJlc3VsdCcKLS0tIGEvbXlz cWwtdGVzdC9yL2FsdGVyX3RhYmxlLnJlc3VsdAlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNv bS0yMDEyMDUzMTE4MjIxMi11MWwzNzJveTc3Z2d2bDZhCisrKyBiL215c3FsLXRlc3Qvci9hbHRl cl90YWJsZS5yZXN1bHQJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA1MzExOTIy MzYtaGpzbzF4cGFkZXdkdTE5YQpAQCAtMTc3MCw4ICsxNzcwLDggQEAgQUxURVIgVEFCTEUgdG0x IE1PRElGWSBDT0xVTU4gYyBJTlQgTk9UCiBhZmZlY3RlZCByb3dzOiAyCiBpbmZvOiBSZWNvcmRz OiAyICBEdXBsaWNhdGVzOiAwICBXYXJuaW5nczogMAogQUxURVIgVEFCTEUgdGkxIE1PRElGWSBD T0xVTU4gYyBJTlQgTlVMTDsKLWFmZmVjdGVkIHJvd3M6IDIKLWluZm86IFJlY29yZHM6IDIgIER1 cGxpY2F0ZXM6IDAgIFdhcm5pbmdzOiAwCithZmZlY3RlZCByb3dzOiAwCitpbmZvOiBSZWNvcmRz OiAwICBEdXBsaWNhdGVzOiAwICBXYXJuaW5nczogMAogQUxURVIgVEFCTEUgdG0xIE1PRElGWSBD T0xVTU4gYyBJTlQgTlVMTDsKIGFmZmVjdGVkIHJvd3M6IDIKIGluZm86IFJlY29yZHM6IDIgIER1 cGxpY2F0ZXM6IDAgIFdhcm5pbmdzOiAwCgo9PT0gbW9kaWZpZWQgZmlsZSAnbXlzcWwtdGVzdC9z dWl0ZS9pbm5vZGIvci9pbm5vZGItdGFibGUtb25saW5lLnJlc3VsdCcKLS0tIGEvbXlzcWwtdGVz dC9zdWl0ZS9pbm5vZGIvci9pbm5vZGItdGFibGUtb25saW5lLnJlc3VsdAlyZXZpZDptYXJrby5t YWtlbGFAb3JhY2xlLmNvbS0yMDEyMDUzMTE4MjIxMi11MWwzNzJveTc3Z2d2bDZhCisrKyBiL215 c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3IvaW5ub2RiLXRhYmxlLW9ubGluZS5yZXN1bHQJcmV2aWQ6 bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA1MzExOTIyMzYtaGpzbzF4cGFkZXdkdTE5YQpA QCAtMyw3ICszLDcgQEAgY2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJJbm5vREI6IEVycm9yOgog Y2FsbCBtdHIuYWRkX3N1cHByZXNzaW9uKCJNeVNRTCBpcyB0cnlpbmcgdG8gb3BlbiBhIHRhYmxl IGhhbmRsZSBidXQgdGhlIC5pYmQgZmlsZSBmb3IiKTsKIFNFVCBAZ2xvYmFsX2lubm9kYl9maWxl X3Blcl90YWJsZV9vcmlnID0gQEBnbG9iYWwuaW5ub2RiX2ZpbGVfcGVyX3RhYmxlOwogU0VUIEdM T0JBTCBpbm5vZGJfZmlsZV9wZXJfdGFibGUgPSBvbjsKLUNSRUFURSBUQUJMRSB0MSAoYzEgSU5U IFBSSU1BUlkgS0VZLCBjMiBJTlQgTk9UIE5VTEwsIGMzIFRFWFQpCitDUkVBVEUgVEFCTEUgdDEg KGMxIElOVCBQUklNQVJZIEtFWSwgYzIgSU5UIE5PVCBOVUxMLCBjMyBURVhUIE5PVCBOVUxMKQog RU5HSU5FID0gSW5ub0RCOwogSU5TRVJUIElOVE8gdDEgVkFMVUVTICgxLDEsJycpLCAoMiwyLCcn KSwgKDMsMywnJyksICg0LDQsJycpLCAoNSw1LCcnKTsKIFNFVCBHTE9CQUwgaW5ub2RiX21vbml0 b3JfZW5hYmxlID0gbW9kdWxlX2RkbDsKQEAgLTQyLDcgKzQyLDcgQEAgVGFibGUJQ3JlYXRlIFRh YmxlCiB0MQlDUkVBVEUgVEFCTEUgYHQxYCAoCiAgIGBjMWAgaW50KDExKSBOT1QgTlVMTCwKICAg YGMyYCBpbnQoMTEpIE5PVCBOVUxMLAotICBgYzNgIHRleHQsCisgIGBjM2AgdGV4dCBOT1QgTlVM TCwKICAgUFJJTUFSWSBLRVkgKGBjMWApCiApIEVOR0lORT1Jbm5vREIgREVGQVVMVCBDSEFSU0VU PWxhdGluMSBST1dfRk9STUFUPVJFRFVOREFOVAogQkVHSU47CkBAIC02Myw3ICs2Myw3IEBAIFRh YmxlCUNyZWF0ZSBUYWJsZQogdDEJQ1JFQVRFIFRBQkxFIGB0MWAgKAogICBgYzFgIGludCgxMSkg Tk9UIE5VTEwsCiAgIGBjMmAgaW50KDExKSBOT1QgTlVMTCwKLSAgYGMzYCB0ZXh0LAorICBgYzNg IHRleHQgTk9UIE5VTEwsCiAgIFVOSVFVRSBLRVkgYGMyYCAoYGMyYCksCiAgIFVOSVFVRSBLRVkg YGMyXzJgIChgYzJgKQogKSBFTkdJTkU9SW5ub0RCIERFRkFVTFQgQ0hBUlNFVD1sYXRpbjEgUk9X X0ZPUk1BVD1DT01QQUNUCkBAIC03NCw3ICs3NCw3IEBAIFRhYmxlCUNyZWF0ZSBUYWJsZQogdDEJ Q1JFQVRFIFRBQkxFIGB0MWAgKAogICBgYzFgIGludCgxMSkgTk9UIE5VTEwsCiAgIGBjMmAgaW50 KDExKSBOT1QgTlVMTCwKLSAgYGMzYCB0ZXh0LAorICBgYzNgIHRleHQgTk9UIE5VTEwsCiAgIFVO SVFVRSBLRVkgYGMyYCAoYGMyYCksCiAgIFVOSVFVRSBLRVkgYGMyXzJgIChgYzJgKQogKSBFTkdJ TkU9SW5ub0RCIERFRkFVTFQgQ0hBUlNFVD1sYXRpbjEgUk9XX0ZPUk1BVD1DT01QQUNUCkBAIC05 Niw3ICs5Niw3IEBAIFRhYmxlCUNyZWF0ZSBUYWJsZQogdDEJQ1JFQVRFIFRBQkxFIGB0MWAgKAog ICBgYzFgIGludCgxMSkgTk9UIE5VTEwsCiAgIGBjMmAgaW50KDExKSBOT1QgTlVMTCwKLSAgYGMz YCB0ZXh0LAorICBgYzNgIHRleHQgTk9UIE5VTEwsCiAgIFVOSVFVRSBLRVkgYGMyYCAoYGMyYCks CiAgIFVOSVFVRSBLRVkgYGMyXzJgIChgYzJgKQogKSBFTkdJTkU9SW5ub0RCIERFRkFVTFQgQ0hB UlNFVD1sYXRpbjEgUk9XX0ZPUk1BVD1DT01QQUNUCkBAIC0xNTUsNyArMTU1LDcgQEAgVGFibGUJ Q3JlYXRlIFRhYmxlCiB0MQlDUkVBVEUgVEFCTEUgYHQxYCAoCiAgIGBjMWAgaW50KDExKSBOT1Qg TlVMTCwKICAgYGMyYCBpbnQoMTEpIE5PVCBOVUxMLAotICBgYzNgIHRleHQsCisgIGBjM2AgdGV4 dCBOT1QgTlVMTCwKICAgUFJJTUFSWSBLRVkgKGBjMWApCiApIEVOR0lORT1Jbm5vREIgREVGQVVM VCBDSEFSU0VUPWxhdGluMSBST1dfRk9STUFUPUNPTVBBQ1QKIFNFVCBERUJVR19TWU5DID0gJ3Jv d19sb2dfdGFibGVfYXBwbHkxX2JlZm9yZSBTSUdOQUwgcmVidWlsdDIgV0FJVF9GT1IgZG1sMl9k b25lJzsKQEAgLTIxNCw3ICsyMTQsOCBAQCBBTFRFUiBUQUJMRSB0MSBBREQgUFJJTUFSWSBLRVko YzIyZiksIENICiBFUlJPUiA0MjAwMDogTXVsdGlwbGUgcHJpbWFyeSBrZXkgZGVmaW5lZAogQUxU RVIgVEFCTEUgdDEgRFJPUCBQUklNQVJZIEtFWSwgQUREIFBSSU1BUlkgS0VZKGMyMmYpLCBDSEFO R0UgYzIgYzIyZiBJTlQ7CiBFUlJPUiAyMzAwMDogRHVwbGljYXRlIGVudHJ5ICc1JyBmb3Iga2V5 ICdQUklNQVJZJwotQUxURVIgVEFCTEUgdDEgRFJPUCBQUklNQVJZIEtFWSwgQUREIFBSSU1BUlkg S0VZKGMxLGMyMmYpLCBDSEFOR0UgYzIgYzIyZiBJTlQ7CitBTFRFUiBUQUJMRSB0MSBEUk9QIFBS SU1BUlkgS0VZLCBBREQgUFJJTUFSWSBLRVkoYzEsYzIyZiksIENIQU5HRSBjMiBjMjJmIElOVCwK K0NIQU5HRSBjMyBjMyBURVhUIE5VTEw7CiBTRVQgREVCVUdfU1lOQyA9ICdub3cgV0FJVF9GT1Ig cmVidWlsdDMnOwogU0VMRUNUIG5hbWUsIGNvdW50IEZST00gSU5GT1JNQVRJT05fU0NIRU1BLklO Tk9EQl9NRVRSSUNTIFdIRVJFIHN1YnN5c3RlbSA9ICdkZGwnOwogbmFtZQljb3VudAoKPT09IG1v ZGlmaWVkIGZpbGUgJ215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiLXRhYmxlLW9ubGlu ZS50ZXN0JwotLS0gYS9teXNxbC10ZXN0L3N1aXRlL2lubm9kYi90L2lubm9kYi10YWJsZS1vbmxp bmUudGVzdAlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEyMDUzMTE4MjIxMi11MWwz NzJveTc3Z2d2bDZhCisrKyBiL215c3FsLXRlc3Qvc3VpdGUvaW5ub2RiL3QvaW5ub2RiLXRhYmxl LW9ubGluZS50ZXN0CXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNTMxMTkyMjM2 LWhqc28xeHBhZGV3ZHUxOWEKQEAgLTE2LDcgKzE2LDcgQEAgU0VUIEdMT0JBTCBpbm5vZGJfZmls ZV9wZXJfdGFibGUgPSBvbjsKICMgU2F2ZSB0aGUgaW5pdGlhbCBudW1iZXIgb2YgY29uY3VycmVu dCBzZXNzaW9ucy4KIC0tc291cmNlIGluY2x1ZGUvY291bnRfc2Vzc2lvbnMuaW5jCiAKLUNSRUFU RSBUQUJMRSB0MSAoYzEgSU5UIFBSSU1BUlkgS0VZLCBjMiBJTlQgTk9UIE5VTEwsIGMzIFRFWFQp CitDUkVBVEUgVEFCTEUgdDEgKGMxIElOVCBQUklNQVJZIEtFWSwgYzIgSU5UIE5PVCBOVUxMLCBj MyBURVhUIE5PVCBOVUxMKQogRU5HSU5FID0gSW5ub0RCOwogSU5TRVJUIElOVE8gdDEgVkFMVUVT ICgxLDEsJycpLCAoMiwyLCcnKSwgKDMsMywnJyksICg0LDQsJycpLCAoNSw1LCcnKTsKIApAQCAt MjIwLDcgKzIyMCw4IEBAIEFMVEVSIFRBQkxFIHQxIEFERCBQUklNQVJZIEtFWShjMjJmKSwgQ0gK IC0tZXJyb3IgRVJfRFVQX0VOVFJZCiBBTFRFUiBUQUJMRSB0MSBEUk9QIFBSSU1BUlkgS0VZLCBB REQgUFJJTUFSWSBLRVkoYzIyZiksIENIQU5HRSBjMiBjMjJmIElOVDsKIC0tc2VuZAotQUxURVIg VEFCTEUgdDEgRFJPUCBQUklNQVJZIEtFWSwgQUREIFBSSU1BUlkgS0VZKGMxLGMyMmYpLCBDSEFO R0UgYzIgYzIyZiBJTlQ7CitBTFRFUiBUQUJMRSB0MSBEUk9QIFBSSU1BUlkgS0VZLCBBREQgUFJJ TUFSWSBLRVkoYzEsYzIyZiksIENIQU5HRSBjMiBjMjJmIElOVCwKK0NIQU5HRSBjMyBjMyBURVhU IE5VTEw7CiAKIGNvbm5lY3Rpb24gZGVmYXVsdDsKIFNFVCBERUJVR19TWU5DID0gJ25vdyBXQUlU X0ZPUiByZWJ1aWx0Myc7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS9oYW5k bGVyL2hhbmRsZXIwYWx0ZXIuY2MnCi0tLSBhL3N0b3JhZ2UvaW5ub2Jhc2UvaGFuZGxlci9oYW5k bGVyMGFsdGVyLmNjCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNTMxMTgyMjEy LXUxbDM3Mm95NzdnZ3ZsNmEKKysrIGIvc3RvcmFnZS9pbm5vYmFzZS9oYW5kbGVyL2hhbmRsZXIw YWx0ZXIuY2MJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA1MzExOTIyMzYtaGpz bzF4cGFkZXdkdTE5YQpAQCAtNTYsOCArNTYsOCBAQCBzdGF0aWMgY29uc3QgQWx0ZXJfaW5wbGFj ZV9pbmZvOjpIQV9BTFRFCiAJPSBBbHRlcl9pbnBsYWNlX2luZm86OkFERF9QS19JTkRFWAogCXwg QWx0ZXJfaW5wbGFjZV9pbmZvOjpEUk9QX1BLX0lOREVYCiAJfCBBbHRlcl9pbnBsYWNlX2luZm86 OkNIQU5HRV9DUkVBVEVfT1BUSU9OCi0JLyoKIAl8IEFsdGVyX2lucGxhY2VfaW5mbzo6QUxURVJf Q09MVU1OX05VTExBQkxFCisJLyoKIAl8IEFsdGVyX2lucGxhY2VfaW5mbzo6QUxURVJfQ09MVU1O X05PVF9OVUxMQUJMRQogCXwgQWx0ZXJfaW5wbGFjZV9pbmZvOjpBTFRFUl9DT0xVTU5fVFlQRQog CXwgQWx0ZXJfaW5wbGFjZV9pbmZvOjpBTFRFUl9DT0xVTU5fRVFVQUxfUEFDS19MRU5HVEgsCgo9 PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MGxvZy5jYycKLS0tIGEv c3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MGxvZy5jYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xl LmNvbS0yMDEyMDUzMTE4MjIxMi11MWwzNzJveTc3Z2d2bDZhCisrKyBiL3N0b3JhZ2UvaW5ub2Jh c2Uvcm93L3JvdzBsb2cuY2MJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMjA1MzEx OTIyMzYtaGpzbzF4cGFkZXdkdTE5YQpAQCAtMTA0NSw2ICsxMDQ1LDQwIEBAIHJvd19sb2dfdGFi bGVfYXBwbHlfY29udmVydF9tcmVjKAogCQkJZGF0YSA9IHJlY19nZXRfbnRoX2ZpZWxkKG1yZWMs IG9mZnNldHMsIGksICZsZW4pOwogCQkJZGZpZWxkX3NldF9kYXRhKGRmaWVsZCwgZGF0YSwgbGVu KTsKIAkJfQorCisJCXV0X2FkKGRpY3RfY29sX3R5cGVfYXNzZXJ0X2VxdWFsKGNvbCwKKwkJCQkJ CSBkZmllbGRfZ2V0X3R5cGUoZGZpZWxkKSkpOworCisJCS8qIFNlZSBpZiBhbnkgY29sdW1ucyB3 ZXJlIGNoYW5nZWQgdG8gTlVMTCBvciBOT1QgTlVMTC4gKi8KKwkJLyogVE9ETzogYWRqdXN0IGZv ciBBREQgQ09MVU1OLCBEUk9QIENPTFVNTiAqLworCQlpZiAoY29sX25vID49IGRpY3RfdGFibGVf Z2V0X25fY29scyhuZXdfdGFibGUpKSB7CisJCQljb250aW51ZTsKKwkJfQorCisJCWNvbnN0IGRp Y3RfY29sX3QqCW5ld19jb2wKKwkJCT0gZGljdF90YWJsZV9nZXRfbnRoX2NvbChuZXdfdGFibGUs IGNvbF9ubyk7CisJCXV0X2FkKG5ld19jb2wtPm10eXBlID09IGNvbC0+bXR5cGUpOworCQkvKiBB c3NlcnQgdGhhdCBwcnR5cGUgbWF0Y2hlcyBleGNlcHQgZm9yIG51bGxhYmlsaXR5LiAqLworCQl1 dF9hZCghKChuZXdfY29sLT5wcnR5cGUgXiBjb2wtPnBydHlwZSkgJiB+REFUQV9OT1RfTlVMTCkp OworCQl1dF9hZCghKChuZXdfY29sLT5wcnR5cGUgXiBkZmllbGRfZ2V0X3R5cGUoZGZpZWxkKS0+ cHJ0eXBlKQorCQkJJiB+REFUQV9OT1RfTlVMTCkpOworCisJCWlmIChuZXdfY29sLT5wcnR5cGUg PT0gY29sLT5wcnR5cGUpIHsKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJaWYgKChuZXdfY29sLT5w cnR5cGUgJiBEQVRBX05PVF9OVUxMKQorCQkgICAgJiYgZGZpZWxkX2lzX251bGwoZGZpZWxkKSkg eworCQkJLyogV2UgZ290IGEgTlVMTCB2YWx1ZSBpbiBhIE5PVCBOVUxMIGZpZWxkLiAqLworCQkJ dXRfYWQoMCk7LyogVE9ETzogQUxURVJfQ09MVU1OX05PVF9OVUxMQUJMRSAqLworCQkJcmV0dXJu KE5VTEwpOworCQl9CisKKwkJLyogQWRqdXN0IHRoZSBEQVRBX05PVF9OVUxMIGZsYWcgaW4gdGhl IHBhcnNlZCByb3cuICovCisJCWRmaWVsZF9nZXRfdHlwZShkZmllbGQpLT5wcnR5cGUgPSBuZXdf Y29sLT5wcnR5cGU7CisKKwkJdXRfYWQoZGljdF9jb2xfdHlwZV9hc3NlcnRfZXF1YWwobmV3X2Nv bCwKKwkJCQkJCSBkZmllbGRfZ2V0X3R5cGUoZGZpZWxkKSkpOwogCX0KIAogCS8qIFRPRE86IGNv bnZlcnQgcm93IHRvIG5ld190YWJsZS0+Y29scywgaW4gY2FzZSBjb2x1bW5zIGFyZQoKPT09IG1v ZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2Jhc2Uvcm93L3JvdzBtZXJnZS5jYycKLS0tIGEvc3Rv cmFnZS9pbm5vYmFzZS9yb3cvcm93MG1lcmdlLmNjCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUu Y29tLTIwMTIwNTMxMTgyMjEyLXUxbDM3Mm95NzdnZ3ZsNmEKKysrIGIvc3RvcmFnZS9pbm5vYmFz ZS9yb3cvcm93MG1lcmdlLmNjCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTIwNTMx MTkyMjM2LWhqc28xeHBhZGV3ZHUxOWEKQEAgLTEyNzAsNiArMTI3MCw5IEBAIHJvd19tZXJnZV9y ZWFkX2NsdXN0ZXJlZF9pbmRleCgKIAl1bGludAkJCW5fbm9ubnVsbCA9IDA7CS8qIG51bWJlciBv ZiBjb2x1bW5zCiAJCQkJCQljaGFuZ2VkIHRvIE5PVCBOVUxMICovCiAJdWxpbnQqCQkJbm9ubnVs bCA9IE5VTEw7CS8qIE5PVCBOVUxMIGNvbHVtbnMgKi8KKwl1bGludAkJCW5fbnVsbGFibGUgPSAw OwkvKiBudW1iZXIgb2YgY29sdW1ucworCQkJCQkJY2hhbmdlZCB0byBOVUxMICovCisJdWxpbnQq CQkJbnVsbGFibGUgPSBOVUxMOy8qIE5VTExhYmxlIGNvbHVtbnMgKi8KIAlkaWN0X2luZGV4X3Qq CQlmdHNfaW5kZXggPSBOVUxMOy8qIEZUUyBpbmRleCAqLwogCWRvY19pZF90CQlkb2NfaWQgPSAw OwogCWRvY19pZF90CQltYXhfZG9jX2lkID0gMDsKQEAgLTEzNDYsMjUgKzEzNDksMzAgQEAgcm93 X21lcmdlX3JlYWRfY2x1c3RlcmVkX2luZGV4KAogCQl9CiAKIAkJbm9ubnVsbCA9IHN0YXRpY19j YXN0PHVsaW50Kj4oCi0JCQltZW1fYWxsb2Mobl9jb2xzICogc2l6ZW9mICpub25udWxsKSk7CisJ CQltZW1fYWxsb2MoMiAqIG5fY29scyAqIHNpemVvZiAqbm9ubnVsbCkpOworCQludWxsYWJsZSA9 IG5vbm51bGwgKyBuX2NvbHM7CiAKIAkJZm9yICh1bGludCBpID0gMDsgaSA8IG5fY29sczsgaSsr KSB7Ci0JCQlpZiAoZGljdF90YWJsZV9nZXRfbnRoX2NvbChvbGRfdGFibGUsIGkpLT5wcnR5cGUK LQkJCSAgICAmIERBVEFfTk9UX05VTEwpIHsKKwkJCS8qIFRPRE86IGFkanVzdCBmb3IgQUREIENP TFVNTiwgRFJPUCBDT0xVTU4gKi8KKwkJCXVsaW50CW9sZF9ub25udWxsCT0gREFUQV9OT1RfTlVM TAorCQkJCSYgZGljdF90YWJsZV9nZXRfbnRoX2NvbChvbGRfdGFibGUsIGkpLT5wcnR5cGU7CisJ CQl1bGludAluZXdfbm9ubnVsbAk9IERBVEFfTk9UX05VTEwKKwkJCQkmIGRpY3RfdGFibGVfZ2V0 X250aF9jb2wobmV3X3RhYmxlLCBpKS0+cHJ0eXBlOwogCisJCQlpZiAob2xkX25vbm51bGwgPT0g bmV3X25vbm51bGwpIHsKIAkJCQljb250aW51ZTsKIAkJCX0KIAotCQkJaWYgKGRpY3RfdGFibGVf Z2V0X250aF9jb2wobmV3X3RhYmxlLCBpKS0+cHJ0eXBlCi0JCQkgICAgJiBEQVRBX05PVF9OVUxM KSB7Ci0KKwkJCWlmIChvbGRfbm9ubnVsbCkgeworCQkJCW51bGxhYmxlW25fbnVsbGFibGUrK10g PSBpOworCQkJfSBlbHNlIHsKIAkJCQlub25udWxsW25fbm9ubnVsbCsrXSA9IGk7CiAJCQl9CiAJ CX0KIAotCQlpZiAoIW5fbm9ubnVsbCkgeworCQlpZiAoIW5fbm9ubnVsbCAmJiAhbl9udWxsYWJs ZSkgewogCQkJbWVtX2ZyZWUobm9ubnVsbCk7Ci0JCQlub25udWxsID0gTlVMTDsKKwkJCW5vbm51 bGwgPSBudWxsYWJsZSA9IE5VTEw7CiAJCX0KIAl9CiAKQEAgLTE0MzksNyArMTQ0Nyw3IEBAIHJv d19tZXJnZV9yZWFkX2NsdXN0ZXJlZF9pbmRleCgKIAkJCQlyb3cgPSBOVUxMOwogCQkJCW10cl9j b21taXQoJm10cik7CiAJCQkJbWVtX2hlYXBfZnJlZShyb3dfaGVhcCk7Ci0JCQkJaWYgKFVOSVZf TElLRUxZX05VTEwobm9ubnVsbCkpIHsKKwkJCQlpZiAobm9ubnVsbCkgewogCQkJCQltZW1fZnJl ZShub25udWxsKTsKIAkJCQl9CiAJCQkJZ290byB3cml0ZV9idWZmZXJzOwpAQCAtMTUzNiw3ICsx NTQ0LDcgQEAgcm93X21lcmdlX3JlYWRfY2x1c3RlcmVkX2luZGV4KAogCQkJZHR5cGVfdCoJZmll bGRfdHlwZQogCQkJCT0gZGZpZWxkX2dldF90eXBlKGZpZWxkKTsKIAotCQkJdXRfYSghKGZpZWxk X3R5cGUtPnBydHlwZSAmIERBVEFfTk9UX05VTEwpKTsKKwkJCXV0X2FkKCEoZmllbGRfdHlwZS0+ cHJ0eXBlICYgREFUQV9OT1RfTlVMTCkpOwogCiAJCQlpZiAoZGZpZWxkX2lzX251bGwoZmllbGQp KSB7CiAJCQkJZXJyID0gREJfUFJJTUFSWV9LRVlfSVNfTlVMTDsKQEAgLTE1NDcsNiArMTU1NSwx MyBAQCByb3dfbWVyZ2VfcmVhZF9jbHVzdGVyZWRfaW5kZXgoCiAJCQlmaWVsZF90eXBlLT5wcnR5 cGUgfD0gREFUQV9OT1RfTlVMTDsKIAkJfQogCisJCWZvciAodWxpbnQgaSA9IDA7IGkgPCBuX251 bGxhYmxlOyBpKyspIHsKKwkJCWR0eXBlX3QqCWZpZWxkX3R5cGUKKwkJCQk9IGRmaWVsZF9nZXRf dHlwZSgmcm93LT5maWVsZHNbbnVsbGFibGVbaV1dKTsKKwkJCXV0X2FkKChmaWVsZF90eXBlLT5w cnR5cGUgJiBEQVRBX05PVF9OVUxMKSk7CisJCQlmaWVsZF90eXBlLT5wcnR5cGUgJj0gfkRBVEFf Tk9UX05VTEw7CisJCX0KKwogCQkvKiBHZXQgdGhlIG5leHQgRG9jIElEICovCiAJCWlmIChhZGRf ZG9jX2lkKSB7CiAJCQlkb2NfaWQrKzsKQEAgLTE2ODMsNyArMTY5OCw3IEBAIGZ1bmNfZXhpdDoK IAltdHJfY29tbWl0KCZtdHIpOwogCW1lbV9oZWFwX2ZyZWUocm93X2hlYXApOwogCi0JaWYgKFVO SVZfTElLRUxZX05VTEwobm9ubnVsbCkpIHsKKwlpZiAobm9ubnVsbCkgewogCQltZW1fZnJlZShu b25udWxsKTsKIAl9CiAKCk5vIGJ1bmRsZSAocmVhc29uOiB1c2VsZXNzIGZvciBwdXNoIGVtYWls cyku