From kde-kimageshop Fri Apr 01 11:51:36 2016 From: Dmitry Kazakov Date: Fri, 01 Apr 2016 11:51:36 +0000 To: kde-kimageshop Subject: [krita] libs: Fix changing default projection color in Instant Preview mode Message-Id: X-MARC-Message: https://marc.info/?l=kde-kimageshop&m=145951151501730 R2l0IGNvbW1pdCAzODU1ZDY5NzYyMzQyYzhmYWYzZjc3YjcxYWNmMDJmNTllZjk4OWVjIGJ5IERt aXRyeSBLYXpha292LgpDb21taXR0ZWQgb24gMDEvMDQvMjAxNiBhdCAxMTo1MS4KUHVzaGVkIGJ5 IGRrYXpha292IGludG8gYnJhbmNoICdtYXN0ZXInLgoKRml4IGNoYW5naW5nIGRlZmF1bHQgcHJv amVjdGlvbiBjb2xvciBpbiBJbnN0YW50IFByZXZpZXcgbW9kZQoKMCkgQ2hhbmdpbmcgcHJvamVj dGlvbiBjb2xvciBpcyBub3cgdW5kb2FibGUhCgoxKSBOb3cgdGhlIHN0cm9rZXMgZXhlY3V0ZWQg d2l0aCBLaXNQcm9jZXNzaW5nQXBwbGljYXRvciBjYW4gYmUgbWVyZ2VkLgogICBUbyBhY2hpZXZl IHRoaXMgb25lIHNob3VsZCBwYXNzIGEgbWFjcm9JZCBwYXJhbWV0ZXIgdG8gaXRzIGMtdG9yLgoK Q0M6a2ltYWdlc2hvcEBrZGUub3JnCgpGaXhlcyBUMTIyOAoKTSAgKzEgICAgLTAgICAgbGlicy9p bWFnZS9DTWFrZUxpc3RzLnR4dApBICArNjggICAtMCAgICBsaWJzL2ltYWdlL2NvbW1hbmRzX25l dy9raXNfY2hhbmdlX3Byb2plY3Rpb25fY29sb3JfY29tbWFuZC5jcHAgICAgIFtMaWNlbnNlOiBH UEwgKHYyKyldCkEgICs0OCAgIC0wICAgIGxpYnMvaW1hZ2UvY29tbWFuZHNfbmV3L2tpc19jaGFu Z2VfcHJvamVjdGlvbl9jb2xvcl9jb21tYW5kLmggICAgIFtMaWNlbnNlOiBHUEwgKHYyKyldCk0g ICs1OCAgIC0wICAgIGxpYnMvaW1hZ2UvY29tbWFuZHNfbmV3L2tpc19zYXZlZF9jb21tYW5kcy5j cHAKTSAgKzUgICAgLTAgICAgbGlicy9pbWFnZS9jb21tYW5kc19uZXcva2lzX3NhdmVkX2NvbW1h bmRzLmgKTSAgKzEwICAgLTAgICAgbGlicy9pbWFnZS9raXNfcGFpbnRfZGV2aWNlX2RhdGEuaApN ICArNCAgICAtMSAgICBsaWJzL2ltYWdlL2tpc19wcm9jZXNzaW5nX2FwcGxpY2F0b3IuY3BwCk0g ICsyICAgIC0xICAgIGxpYnMvaW1hZ2Uva2lzX3Byb2Nlc3NpbmdfYXBwbGljYXRvci5oCk0gICs5 ICAgIC0xICAgIGxpYnMvaW1hZ2Uva2lzX3N0cm9rZV9zdHJhdGVneV91bmRvX2NvbW1hbmRfYmFz ZWQuY3BwCk0gICsxMSAgIC0xICAgIGxpYnMvaW1hZ2Uva2lzX3N0cm9rZV9zdHJhdGVneV91bmRv X2NvbW1hbmRfYmFzZWQuaApNICArMTQgICAtMiAgICBsaWJzL3VpL2RpYWxvZ3Mva2lzX2RsZ19p bWFnZV9wcm9wZXJ0aWVzLmNjCgpodHRwOi8vY29tbWl0cy5rZGUub3JnL2tyaXRhLzM4NTVkNjk3 NjIzNDJjOGZhZjNmNzdiNzFhY2YwMmY1OWVmOTg5ZWMKCmRpZmYgLS1naXQgYS9saWJzL2ltYWdl L0NNYWtlTGlzdHMudHh0IGIvbGlicy9pbWFnZS9DTWFrZUxpc3RzLnR4dAppbmRleCAyNzFkNDcx Li43YjQ1OTlhIDEwMDY0NAotLS0gYS9saWJzL2ltYWdlL0NNYWtlTGlzdHMudHh0CisrKyBiL2xp YnMvaW1hZ2UvQ01ha2VMaXN0cy50eHQKQEAgLTkyLDYgKzkyLDcgQEAgc2V0KGtyaXRhaW1hZ2Vf TElCX1NSQ1MKICAgIGNvbW1hbmRzX25ldy9raXNfc2VsZWN0aW9uX21vdmVfY29tbWFuZDIuY3Bw CiAgICBjb21tYW5kc19uZXcva2lzX3VwZGF0ZV9jb21tYW5kLmNwcAogICAgY29tbWFuZHNfbmV3 L2tpc19zd2l0Y2hfY3VycmVudF90aW1lX2NvbW1hbmQuY3BwCisgICBjb21tYW5kc19uZXcva2lz X2NoYW5nZV9wcm9qZWN0aW9uX2NvbG9yX2NvbW1hbmQuY3BwCiAgICBjb21tYW5kc19uZXcva2lz X2FjdGl2YXRlX3NlbGVjdGlvbl9tYXNrX2NvbW1hbmQuY3BwCiAgICBwcm9jZXNzaW5nL2tpc19k b19ub3RoaW5nX3Byb2Nlc3NpbmdfdmlzaXRvci5jcHAKICAgIHByb2Nlc3Npbmcva2lzX3NpbXBs ZV9wcm9jZXNzaW5nX3Zpc2l0b3IuY3BwCmRpZmYgLS1naXQgYS9saWJzL2ltYWdlL2NvbW1hbmRz X25ldy9raXNfY2hhbmdlX3Byb2plY3Rpb25fY29sb3JfY29tbWFuZC5jcHAgYi9saWJzL2ltYWdl L2NvbW1hbmRzX25ldy9raXNfY2hhbmdlX3Byb2plY3Rpb25fY29sb3JfY29tbWFuZC5jcHAKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmNjMTYwNQotLS0gL2Rldi9udWxsCisr KyBiL2xpYnMvaW1hZ2UvY29tbWFuZHNfbmV3L2tpc19jaGFuZ2VfcHJvamVjdGlvbl9jb2xvcl9j b21tYW5kLmNwcApAQCAtMCwwICsxLDY4IEBACisvKgorICogIENvcHlyaWdodCAoYykgMjAxNSBE bWl0cnkgS2F6YWtvdiA8ZGltdWxhNzNAZ21haWwuY29tPgorICoKKyAqICBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQor ICogIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5CisgKiAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqICAoYXQgeW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgorICoKKyAqICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhl IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFO VFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJ TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ug c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZQorICogIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBG cmVlIFNvZnR3YXJlCisgKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBG aWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworI2luY2x1ZGUg Imtpc19jaGFuZ2VfcHJvamVjdGlvbl9jb2xvcl9jb21tYW5kLmgiCisKKyNpbmNsdWRlICJraXNf aW1hZ2UuaCIKKyNpbmNsdWRlICJraXNfaW1hZ2VfYW5pbWF0aW9uX2ludGVyZmFjZS5oIgorCisK KworS2lzQ2hhbmdlUHJvamVjdGlvbkNvbG9yQ29tbWFuZDo6S2lzQ2hhbmdlUHJvamVjdGlvbkNv bG9yQ29tbWFuZChLaXNJbWFnZVNQIGltYWdlLCBjb25zdCBLb0NvbG9yICZuZXdDb2xvciwgS1Vu ZG8yQ29tbWFuZCAqcGFyZW50KQorICAgIDogS1VuZG8yQ29tbWFuZChrdW5kbzJfbm9pMThuKCJD SEFOR0VfUFJPSkVDVElPTl9DT0xPUl9DT01NQU5EIiksIHBhcmVudCksCisgICAgICBtX2ltYWdl KGltYWdlKSwKKyAgICAgIG1fb2xkQ29sb3IoaW1hZ2UtPmRlZmF1bHRQcm9qZWN0aW9uQ29sb3Io KSksCisgICAgICBtX25ld0NvbG9yKG5ld0NvbG9yKQoreworfQorCitLaXNDaGFuZ2VQcm9qZWN0 aW9uQ29sb3JDb21tYW5kOjp+S2lzQ2hhbmdlUHJvamVjdGlvbkNvbG9yQ29tbWFuZCgpCit7Cit9 CisKK2ludCBLaXNDaGFuZ2VQcm9qZWN0aW9uQ29sb3JDb21tYW5kOjppZCgpIGNvbnN0Cit7Cisg ICAgLy8gd2UgZG9uJ3QgaGF2ZSBhIGNvbW1vbiBjb21tYW5kcyBpZCBzb3VyY2UgaW4gS3JpdGEg eWV0LCBzbworICAgIC8vIGp1c3QgdXNlIGEgcmFuZG9tIG9uZSA7KQorCisgICAgLy8gaHR0cDov L3d3dy5zY2llbnRpZmljYW1lcmljYW4uY29tL2FydGljbGUvbW9zdC1wb3B1bGFyLW51bWJlcnMt Z3JhcGVzLW9mLW1hdGgvCisgICAgcmV0dXJuIDE0Mjg1NzsKK30KKworYm9vbCBLaXNDaGFuZ2VQ cm9qZWN0aW9uQ29sb3JDb21tYW5kOjptZXJnZVdpdGgoY29uc3QgS1VuZG8yQ29tbWFuZCogY29t bWFuZCkKK3sKKyAgICBjb25zdCBLaXNDaGFuZ2VQcm9qZWN0aW9uQ29sb3JDb21tYW5kICpvdGhl ciA9CisgICAgICAgIGR5bmFtaWNfY2FzdDxjb25zdCBLaXNDaGFuZ2VQcm9qZWN0aW9uQ29sb3JD b21tYW5kKj4oY29tbWFuZCk7CisKKyAgICBpZiAoIW90aGVyIHx8IG90aGVyLT5pZCgpICE9IGlk KCkpIHsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIG1fbmV3Q29sb3IgPSBv dGhlci0+bV9uZXdDb2xvcjsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwordm9pZCBLaXNDaGFuZ2VQ cm9qZWN0aW9uQ29sb3JDb21tYW5kOjpyZWRvKCkKK3sKKyAgICBtX2ltYWdlLT5zZXREZWZhdWx0 UHJvamVjdGlvbkNvbG9yKG1fbmV3Q29sb3IpOworfQorCit2b2lkIEtpc0NoYW5nZVByb2plY3Rp b25Db2xvckNvbW1hbmQ6OnVuZG8oKQoreworICAgIG1faW1hZ2UtPnNldERlZmF1bHRQcm9qZWN0 aW9uQ29sb3IobV9vbGRDb2xvcik7Cit9CmRpZmYgLS1naXQgYS9saWJzL2ltYWdlL2NvbW1hbmRz X25ldy9raXNfY2hhbmdlX3Byb2plY3Rpb25fY29sb3JfY29tbWFuZC5oIGIvbGlicy9pbWFnZS9j b21tYW5kc19uZXcva2lzX2NoYW5nZV9wcm9qZWN0aW9uX2NvbG9yX2NvbW1hbmQuaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNTdlOWFlCi0tLSAvZGV2L251bGwKKysrIGIv bGlicy9pbWFnZS9jb21tYW5kc19uZXcva2lzX2NoYW5nZV9wcm9qZWN0aW9uX2NvbG9yX2NvbW1h bmQuaApAQCAtMCwwICsxLDQ4IEBACisvKgorICogIENvcHlyaWdodCAoYykgMjAxNSBEbWl0cnkg S2F6YWtvdiA8ZGltdWxhNzNAZ21haWwuY29tPgorICoKKyAqICBUaGlzIHByb2dyYW0gaXMgZnJl ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5CisgKiAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNp b24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgorICoKKyAqICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUg dGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBv ciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxk IGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQor ICogIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNv ZnR3YXJlCisgKiAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBG bG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKi8KKworI2lmbmRlZiBfX0tJU19D SEFOR0VfUFJPSkVDVElPTl9DT0xPUl9DT01NQU5EX0gKKyNkZWZpbmUgX19LSVNfQ0hBTkdFX1BS T0pFQ1RJT05fQ09MT1JfQ09NTUFORF9ICisKKyNpbmNsdWRlICJrcml0YWltYWdlX2V4cG9ydC5o IgorI2luY2x1ZGUgImtpc190eXBlcy5oIgorCisjaW5jbHVkZSA8S29Db2xvci5oPgorCisjaW5j bHVkZSA8a3VuZG8yY29tbWFuZC5oPgorCisKK2NsYXNzIEtSSVRBSU1BR0VfRVhQT1JUIEtpc0No YW5nZVByb2plY3Rpb25Db2xvckNvbW1hbmQgOiBwdWJsaWMgS1VuZG8yQ29tbWFuZAoreworcHVi bGljOgorICAgIEtpc0NoYW5nZVByb2plY3Rpb25Db2xvckNvbW1hbmQoS2lzSW1hZ2VTUCBpbWFn ZSwgY29uc3QgS29Db2xvciAmbmV3Q29sb3IsIEtVbmRvMkNvbW1hbmQgKnBhcmVudCA9IDApOwor ICAgIH5LaXNDaGFuZ2VQcm9qZWN0aW9uQ29sb3JDb21tYW5kKCk7CisKKyAgICB2b2lkIHJlZG8o KTsKKyAgICB2b2lkIHVuZG8oKTsKKworICAgIGludCBpZCgpIGNvbnN0OworICAgIGJvb2wgbWVy Z2VXaXRoKGNvbnN0IEtVbmRvMkNvbW1hbmQqIGNvbW1hbmQpOworCitwcml2YXRlOgorICAgIEtp c0ltYWdlV1NQIG1faW1hZ2U7CisgICAgS29Db2xvciBtX29sZENvbG9yOworICAgIEtvQ29sb3Ig bV9uZXdDb2xvcjsKK307CisKKyNlbmRpZiAvKiBfX0tJU19DSEFOR0VfUFJPSkVDVElPTl9DT0xP Ul9DT01NQU5EX0ggKi8KZGlmZiAtLWdpdCBhL2xpYnMvaW1hZ2UvY29tbWFuZHNfbmV3L2tpc19z YXZlZF9jb21tYW5kcy5jcHAgYi9saWJzL2ltYWdlL2NvbW1hbmRzX25ldy9raXNfc2F2ZWRfY29t bWFuZHMuY3BwCmluZGV4IGQyMDNlYTcuLjQ0ZDFmMmQgMTAwNjQ0Ci0tLSBhL2xpYnMvaW1hZ2Uv Y29tbWFuZHNfbmV3L2tpc19zYXZlZF9jb21tYW5kcy5jcHAKKysrIGIvbGlicy9pbWFnZS9jb21t YW5kc19uZXcva2lzX3NhdmVkX2NvbW1hbmRzLmNwcApAQCAtMTU3LDYgKzE1Nyw3IEBAIHN0cnVj dCBLaXNTYXZlZE1hY3JvQ29tbWFuZDo6UHJpdmF0ZQogICAgIH07CiAKICAgICBRVmVjdG9yPFNh dmVkQ29tbWFuZD4gY29tbWFuZHM7CisgICAgaW50IG1hY3JvSWQgPSAtMTsKIH07CiAKIEtpc1Nh dmVkTWFjcm9Db21tYW5kOjpLaXNTYXZlZE1hY3JvQ29tbWFuZChjb25zdCBLVW5kbzJNYWdpY1N0 cmluZyAmbmFtZSwKQEAgLTE3MSw2ICsxNzIsNjMgQEAgS2lzU2F2ZWRNYWNyb0NvbW1hbmQ6On5L aXNTYXZlZE1hY3JvQ29tbWFuZCgpCiAgICAgZGVsZXRlIG1fZDsKIH0KIAordm9pZCBLaXNTYXZl ZE1hY3JvQ29tbWFuZDo6c2V0TWFjcm9JZChpbnQgdmFsdWUpCit7CisgICAgbV9kLT5tYWNyb0lk ID0gdmFsdWU7Cit9CisKK2ludCBLaXNTYXZlZE1hY3JvQ29tbWFuZDo6aWQoKSBjb25zdAorewor ICAgIHJldHVybiBtX2QtPm1hY3JvSWQ7Cit9CisKK2Jvb2wgS2lzU2F2ZWRNYWNyb0NvbW1hbmQ6 Om1lcmdlV2l0aChjb25zdCBLVW5kbzJDb21tYW5kKiBjb21tYW5kKQoreworICAgIGNvbnN0IEtp c1NhdmVkTWFjcm9Db21tYW5kICpvdGhlciA9CisgICAgICAgIGR5bmFtaWNfY2FzdDxjb25zdCBL aXNTYXZlZE1hY3JvQ29tbWFuZCo+KGNvbW1hbmQpOworCisgICAgaWYgKG90aGVyICYmIG90aGVy LT5pZCgpICE9IGlkKCkpIHJldHVybiBmYWxzZTsKKworICAgIFFWZWN0b3I8UHJpdmF0ZTo6U2F2 ZWRDb21tYW5kPiAmb3RoZXJDb21tYW5kcyA9IG90aGVyLT5tX2QtPmNvbW1hbmRzOworCisgICAg aWYgKG1fZC0+Y29tbWFuZHMuc2l6ZSgpICE9IG90aGVyQ29tbWFuZHMuc2l6ZSgpKSByZXR1cm4g ZmFsc2U7CisKKyAgICBhdXRvIGl0ID0gbV9kLT5jb21tYW5kcy5jb25zdEJlZ2luKCk7CisgICAg YXV0byBlbmQgPSBtX2QtPmNvbW1hbmRzLmNvbnN0RW5kKCk7CisKKyAgICBhdXRvIG90aGVySXQg PSBvdGhlckNvbW1hbmRzLmNvbnN0QmVnaW4oKTsKKyAgICBhdXRvIG90aGVyRW5kID0gb3RoZXJD b21tYW5kcy5jb25zdEVuZCgpOworCisgICAgYm9vbCBzYW1lQ29tbWFuZHMgPSB0cnVlOworICAg IHdoaWxlIChpdCAhPSBlbmQgJiYgb3RoZXJJdCAhPSBvdGhlckVuZCkgeworICAgICAgICBpZiAo aXQtPmNvbW1hbmQtPmlkKCkgIT0gb3RoZXJJdC0+Y29tbWFuZC0+aWQoKSB8fAorICAgICAgICAg ICAgaXQtPnNlcXVlbnRpYWxpdHkgIT0gb3RoZXJJdC0+c2VxdWVudGlhbGl0eSB8fAorICAgICAg ICAgICAgaXQtPmV4Y2x1c2l2aXR5ICE9IG90aGVySXQtPmV4Y2x1c2l2aXR5KSB7CisKKyAgICAg ICAgICAgIHNhbWVDb21tYW5kcyA9IGZhbHNlOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg IH0KKyAgICAgICAgKytpdDsKKyAgICAgICAgKytvdGhlckl0OworICAgIH0KKworICAgIGlmICgh c2FtZUNvbW1hbmRzKSByZXR1cm4gZmFsc2U7CisKKyAgICBpdCA9IG1fZC0+Y29tbWFuZHMuY29u c3RCZWdpbigpOworICAgIG90aGVySXQgPSBvdGhlckNvbW1hbmRzLmNvbnN0QmVnaW4oKTsKKwor ICAgIHdoaWxlIChpdCAhPSBlbmQgJiYgb3RoZXJJdCAhPSBvdGhlckVuZCkgeworICAgICAgICBp ZiAoaXQtPmNvbW1hbmQtPmlkKCkgIT0gLTEpIHsKKyAgICAgICAgICAgIGJvb2wgcmVzdWx0ID0g aXQtPmNvbW1hbmQtPm1lcmdlV2l0aChvdGhlckl0LT5jb21tYW5kLmRhdGEoKSk7CisgICAgICAg ICAgICBLSVNfQVNTRVJUX1JFQ09WRVIocmVzdWx0KSB7IHJldHVybiBmYWxzZTsgfQorICAgICAg ICB9CisgICAgICAgICsraXQ7CisgICAgICAgICsrb3RoZXJJdDsKKyAgICB9CisKKyAgICByZXR1 cm4gdHJ1ZTsKK30KKwogdm9pZCBLaXNTYXZlZE1hY3JvQ29tbWFuZDo6YWRkQ29tbWFuZChLVW5k bzJDb21tYW5kU1AgY29tbWFuZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgS2lzU3Ryb2tlSm9iRGF0YTo6U2VxdWVudGlhbGl0eSBzZXF1ZW50aWFsaXR5LAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaXNTdHJva2VKb2JEYXRhOjpFeGNsdXNp dml0eSBleGNsdXNpdml0eSkKZGlmZiAtLWdpdCBhL2xpYnMvaW1hZ2UvY29tbWFuZHNfbmV3L2tp c19zYXZlZF9jb21tYW5kcy5oIGIvbGlicy9pbWFnZS9jb21tYW5kc19uZXcva2lzX3NhdmVkX2Nv bW1hbmRzLmgKaW5kZXggMDE0MTI1Yy4uYTVmY2U2NiAxMDA2NDQKLS0tIGEvbGlicy9pbWFnZS9j b21tYW5kc19uZXcva2lzX3NhdmVkX2NvbW1hbmRzLmgKKysrIGIvbGlicy9pbWFnZS9jb21tYW5k c19uZXcva2lzX3NhdmVkX2NvbW1hbmRzLmgKQEAgLTc5LDYgKzc5LDExIEBAIHB1YmxpYzoKICAg ICBLaXNTYXZlZE1hY3JvQ29tbWFuZChjb25zdCBLVW5kbzJNYWdpY1N0cmluZyAmbmFtZSwgS2lz U3Ryb2tlc0ZhY2FkZSAqc3Ryb2tlc0ZhY2FkZSk7CiAgICAgfktpc1NhdmVkTWFjcm9Db21tYW5k KCk7CiAKKyAgICBpbnQgaWQoKSBjb25zdDsKKyAgICBib29sIG1lcmdlV2l0aChjb25zdCBLVW5k bzJDb21tYW5kKiBjb21tYW5kKTsKKworICAgIHZvaWQgc2V0TWFjcm9JZChpbnQgdmFsdWUpOwor CiAgICAgdm9pZCBhZGRDb21tYW5kKEtVbmRvMkNvbW1hbmRTUCBjb21tYW5kLAogICAgICAgICAg ICAgICAgICAgICBLaXNTdHJva2VKb2JEYXRhOjpTZXF1ZW50aWFsaXR5IHNlcXVlbnRpYWxpdHkg PSBLaXNTdHJva2VKb2JEYXRhOjpTRVFVRU5USUFMLAogICAgICAgICAgICAgICAgICAgICBLaXNT dHJva2VKb2JEYXRhOjpFeGNsdXNpdml0eSBleGNsdXNpdml0eSA9IEtpc1N0cm9rZUpvYkRhdGE6 Ok5PUk1BTCk7CmRpZmYgLS1naXQgYS9saWJzL2ltYWdlL2tpc19wYWludF9kZXZpY2VfZGF0YS5o IGIvbGlicy9pbWFnZS9raXNfcGFpbnRfZGV2aWNlX2RhdGEuaAppbmRleCAwMTEyMzQ4Li5jNTg3 M2FlIDEwMDY0NAotLS0gYS9saWJzL2ltYWdlL2tpc19wYWludF9kZXZpY2VfZGF0YS5oCisrKyBi L2xpYnMvaW1hZ2Uva2lzX3BhaW50X2RldmljZV9kYXRhLmgKQEAgLTE5OCw2ICsxOTgsMTYgQEAg cHVibGljOgogICAgICAgICAgICAgbV9jYWNoZS5zZXR1cENhY2hlKCk7CiAgICAgICAgIH0gZWxz ZSB7CiAgICAgICAgICAgICBtX2RhdGFNYW5hZ2VyLT5jbGVhcigpOworICAgICAgICAgICAgY29u c3QgcXVpbnQ4ICpzcmNEZWZQaXhlbCA9IHNyY0RhdGEtPmRhdGFNYW5hZ2VyKCktPmRlZmF1bHRQ aXhlbCgpOworCisgICAgICAgICAgICBjb25zdCBpbnQgY21wID0KKyAgICAgICAgICAgICAgICBt ZW1jbXAoc3JjRGVmUGl4ZWwsCisgICAgICAgICAgICAgICAgICAgICAgIG1fZGF0YU1hbmFnZXIt PmRlZmF1bHRQaXhlbCgpLAorICAgICAgICAgICAgICAgICAgICAgICBtX2RhdGFNYW5hZ2VyLT5w aXhlbFNpemUoKSk7CisKKyAgICAgICAgICAgIGlmIChjbXAgIT0gMCkgeworICAgICAgICAgICAg ICAgIG1fZGF0YU1hbmFnZXItPnNldERlZmF1bHRQaXhlbChzcmNEZWZQaXhlbCk7CisgICAgICAg ICAgICB9CiAgICAgICAgIH0KIAogICAgICAgICBtX2xldmVsT2ZEZXRhaWwgPSBzcmNEYXRhLT5s ZXZlbE9mRGV0YWlsKCk7CmRpZmYgLS1naXQgYS9saWJzL2ltYWdlL2tpc19wcm9jZXNzaW5nX2Fw cGxpY2F0b3IuY3BwIGIvbGlicy9pbWFnZS9raXNfcHJvY2Vzc2luZ19hcHBsaWNhdG9yLmNwcApp bmRleCBlZjVlNjk2Li5iYjEzNDMwIDEwMDY0NAotLS0gYS9saWJzL2ltYWdlL2tpc19wcm9jZXNz aW5nX2FwcGxpY2F0b3IuY3BwCisrKyBiL2xpYnMvaW1hZ2Uva2lzX3Byb2Nlc3NpbmdfYXBwbGlj YXRvci5jcHAKQEAgLTE2NSw3ICsxNjUsOCBAQCBLaXNQcm9jZXNzaW5nQXBwbGljYXRvcjo6S2lz UHJvY2Vzc2luZ0FwcGxpY2F0b3IoS2lzSW1hZ2VXU1AgaW1hZ2UsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvY2Vzc2luZ0ZsYWdzIGZsYWdzLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtpc0ltYWdl U2lnbmFsVmVjdG9yIGVtaXRTaWduYWxzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IEtVbmRvMk1hZ2ljU3RyaW5nICZuYW1lLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtVbmRvMkNvbW1hbmRF eHRyYURhdGEgKmV4dHJhRGF0YSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBLVW5kbzJDb21tYW5kRXh0cmFEYXRhICpleHRyYURhdGEsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1hY3JvSWQpCiAg ICAgOiBtX2ltYWdlKGltYWdlKSwKICAgICAgIG1fbm9kZShub2RlKSwKICAgICAgIG1fZmxhZ3Mo ZmxhZ3MpLApAQCAtMTg0LDYgKzE4NSw4IEBAIEtpc1Byb2Nlc3NpbmdBcHBsaWNhdG9yOjpLaXNQ cm9jZXNzaW5nQXBwbGljYXRvcihLaXNJbWFnZVdTUCBpbWFnZSwKICAgICAgICAgc3RyYXRlZ3kt PnNldENvbW1hbmRFeHRyYURhdGEoZXh0cmFEYXRhKTsKICAgICB9CiAKKyAgICBzdHJhdGVneS0+ c2V0TWFjcm9JZChtYWNyb0lkKTsKKwogICAgIG1fc3Ryb2tlSWQgPSBtX2ltYWdlLT5zdGFydFN0 cm9rZShzdHJhdGVneSk7CiAgICAgaWYoIW1fZW1pdFNpZ25hbHMuaXNFbXB0eSgpKSB7CiAgICAg ICAgIGFwcGx5Q29tbWFuZChuZXcgRW1pdEltYWdlU2lnbmFsc0NvbW1hbmQobV9pbWFnZSwgbV9l bWl0U2lnbmFscywgZmFsc2UpLCBLaXNTdHJva2VKb2JEYXRhOjpCQVJSSUVSKTsKZGlmZiAtLWdp dCBhL2xpYnMvaW1hZ2Uva2lzX3Byb2Nlc3NpbmdfYXBwbGljYXRvci5oIGIvbGlicy9pbWFnZS9r aXNfcHJvY2Vzc2luZ19hcHBsaWNhdG9yLmgKaW5kZXggZTJiMGQyMi4uN2U1NjNmNiAxMDA2NDQK LS0tIGEvbGlicy9pbWFnZS9raXNfcHJvY2Vzc2luZ19hcHBsaWNhdG9yLmgKKysrIGIvbGlicy9p bWFnZS9raXNfcHJvY2Vzc2luZ19hcHBsaWNhdG9yLmgKQEAgLTQ2LDcgKzQ2LDggQEAgcHVibGlj OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByb2Nlc3NpbmdGbGFncyBmbGFncyA9IE5P TkUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgS2lzSW1hZ2VTaWduYWxWZWN0b3IgZW1p dFNpZ25hbHMgPSBLaXNJbWFnZVNpZ25hbFZlY3RvcigpLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IEtVbmRvMk1hZ2ljU3RyaW5nICZuYW1lID0gS1VuZG8yTWFnaWNTdHJpbmco KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBLVW5kbzJDb21tYW5kRXh0cmFEYXRhICpl eHRyYURhdGEgPSAwKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBLVW5kbzJDb21tYW5k RXh0cmFEYXRhICpleHRyYURhdGEgPSAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCBtYWNyb0lkID0gLTEpOwogCiAgICAgfktpc1Byb2Nlc3NpbmdBcHBsaWNhdG9yKCk7CiAKZGlm ZiAtLWdpdCBhL2xpYnMvaW1hZ2Uva2lzX3N0cm9rZV9zdHJhdGVneV91bmRvX2NvbW1hbmRfYmFz ZWQuY3BwIGIvbGlicy9pbWFnZS9raXNfc3Ryb2tlX3N0cmF0ZWd5X3VuZG9fY29tbWFuZF9iYXNl ZC5jcHAKaW5kZXggYzM2NjU5YjEuLjc0MWZjZjMgMTAwNjQ0Ci0tLSBhL2xpYnMvaW1hZ2Uva2lz X3N0cm9rZV9zdHJhdGVneV91bmRvX2NvbW1hbmRfYmFzZWQuY3BwCisrKyBiL2xpYnMvaW1hZ2Uv a2lzX3N0cm9rZV9zdHJhdGVneV91bmRvX2NvbW1hbmRfYmFzZWQuY3BwCkBAIC0zNCw2ICszNCw3 IEBAIEtpc1N0cm9rZVN0cmF0ZWd5VW5kb0NvbW1hbmRCYXNlZChjb25zdCBLVW5kbzJNYWdpY1N0 cmluZyAmbmFtZSwKICAgICBtX2luaXRDb21tYW5kKGluaXRDb21tYW5kKSwKICAgICBtX2Zpbmlz aENvbW1hbmQoZmluaXNoQ29tbWFuZCksCiAgICAgbV91bmRvQWRhcHRlcih1bmRvQWRhcHRlciks CisgICAgbV9tYWNyb0lkKC0xKSwKICAgICBtX21hY3JvQ29tbWFuZCgwKQogewogICAgIGVuYWJs ZUpvYihLaXNTaW1wbGVTdHJva2VTdHJhdGVneTo6Sk9CX0lOSVQpOwpAQCAtMTUxLDkgKzE1Miwx NiBAQCB2b2lkIEtpc1N0cm9rZVN0cmF0ZWd5VW5kb0NvbW1hbmRCYXNlZDo6c2V0Q29tbWFuZEV4 dHJhRGF0YShLVW5kbzJDb21tYW5kRXh0cmFEYQogICAgIG1fY29tbWFuZEV4dHJhRGF0YS5yZXNl dChkYXRhKTsKIH0KIAotdm9pZCBLaXNTdHJva2VTdHJhdGVneVVuZG9Db21tYW5kQmFzZWQ6OnBv c3RQcm9jZXNzVG9wbGV2ZWxDb21tYW5kKEtVbmRvMkNvbW1hbmQgKmNvbW1hbmQpCit2b2lkIEtp c1N0cm9rZVN0cmF0ZWd5VW5kb0NvbW1hbmRCYXNlZDo6c2V0TWFjcm9JZChpbnQgdmFsdWUpCit7 CisgICAgbV9tYWNyb0lkID0gdmFsdWU7Cit9CisKK3ZvaWQgS2lzU3Ryb2tlU3RyYXRlZ3lVbmRv Q29tbWFuZEJhc2VkOjpwb3N0UHJvY2Vzc1RvcGxldmVsQ29tbWFuZChLaXNTYXZlZE1hY3JvQ29t bWFuZCAqY29tbWFuZCkKIHsKICAgICBpZiAobV9jb21tYW5kRXh0cmFEYXRhKSB7CiAgICAgICAg IGNvbW1hbmQtPnNldEV4dHJhRGF0YShtX2NvbW1hbmRFeHRyYURhdGEudGFrZSgpKTsKICAgICB9 CisKKyAgICBjb21tYW5kLT5zZXRNYWNyb0lkKG1fbWFjcm9JZCk7CiB9CmRpZmYgLS1naXQgYS9s aWJzL2ltYWdlL2tpc19zdHJva2Vfc3RyYXRlZ3lfdW5kb19jb21tYW5kX2Jhc2VkLmggYi9saWJz L2ltYWdlL2tpc19zdHJva2Vfc3RyYXRlZ3lfdW5kb19jb21tYW5kX2Jhc2VkLmgKaW5kZXggYjQx Zjk3Ny4uNWQ2ZWJjOSAxMDA2NDQKLS0tIGEvbGlicy9pbWFnZS9raXNfc3Ryb2tlX3N0cmF0ZWd5 X3VuZG9fY29tbWFuZF9iYXNlZC5oCisrKyBiL2xpYnMvaW1hZ2Uva2lzX3N0cm9rZV9zdHJhdGVn eV91bmRvX2NvbW1hbmRfYmFzZWQuaApAQCAtODksNiArODksMTUgQEAgcHVibGljOgogICAgIHZv aWQgc2V0Q29tbWFuZEV4dHJhRGF0YShLVW5kbzJDb21tYW5kRXh0cmFEYXRhICpkYXRhKTsKIAog ICAgIC8qKgorICAgICAqIFNldHMgdGhlIGlkIG9mIHRoaXMgYWN0aW9uLiBXaWxsIGJlIHVzZWQg Zm9yIG1lcmdpbmcgdGhlIHVuZG8gY29tbWFuZHMKKyAgICAgKgorICAgICAqIFRoZSBccCB2YWx1 ZSBtdXN0IGJlIHNldCAqYmVmb3JlKiB0aGUgc3Ryb2tlIGhhcyBiZWVuIHN0YXJ0ZWQuCisgICAg ICogU2V0dGluZyB0aGUgXHAgdmFsdWUgYWZ0ZXIgdGhlIHN0cm9rZSBoYXMgYmVlbiBzdGFydGVk IHdpdGgKKyAgICAgKiBpbWFnZS0+c3RhcnRTdHJva2Uoc3Ryb2tlSWQpIGxlYWRzIHRvIGFuIHVu ZGVmaW5lZCBiZWhhdmlvdXIuCisgICAgICovCisgICAgdm9pZCBzZXRNYWNyb0lkKGludCB2YWx1 ZSk7CisKKyAgICAvKioKICAgICAgKiBUaGUgdW5kby1jb21tYW5kLWJhc2VkIGlzIGEgbG93LWxl dmVsIHN0cmF0ZWd5LCBzbyBpdCBhbGxvd3MKICAgICAgKiBjaGFuZ2luZyBpdHMgd3JhcGFyb3Vu ZCBtb2RlIHN0YXR1cy4KICAgICAgKgpAQCAtMTEwLDcgKzExOSw3IEBAIHByb3RlY3RlZDoKICAg ICBLaXNTdHJva2VTdHJhdGVneVVuZG9Db21tYW5kQmFzZWQoY29uc3QgS2lzU3Ryb2tlU3RyYXRl Z3lVbmRvQ29tbWFuZEJhc2VkICZyaHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGJvb2wgc3VwcHJlc3NVbmRvKTsKIAotICAgIHZpcnR1YWwgdm9pZCBwb3N0UHJvY2Vz c1RvcGxldmVsQ29tbWFuZChLVW5kbzJDb21tYW5kICpjb21tYW5kKTsKKyAgICB2aXJ0dWFsIHZv aWQgcG9zdFByb2Nlc3NUb3BsZXZlbENvbW1hbmQoS2lzU2F2ZWRNYWNyb0NvbW1hbmQgKmNvbW1h bmQpOwogCiBwcml2YXRlOgogICAgIHZvaWQgZXhlY3V0ZUNvbW1hbmQoS1VuZG8yQ29tbWFuZFNQ IGNvbW1hbmQsIGJvb2wgdW5kbyk7CkBAIC0xMjIsNiArMTMxLDcgQEAgcHJpdmF0ZToKICAgICBL aXNQb3N0RXhlY3V0aW9uVW5kb0FkYXB0ZXIgKm1fdW5kb0FkYXB0ZXI7CiAKICAgICBRU2NvcGVk UG9pbnRlcjxLVW5kbzJDb21tYW5kRXh0cmFEYXRhPiBtX2NvbW1hbmRFeHRyYURhdGE7CisgICAg aW50IG1fbWFjcm9JZDsKIAogICAgIC8vIHByb3RlY3RzIGRvbmUgY29tbWFuZHMgb25seQogICAg IFFNdXRleCBtX211dGV4OwpkaWZmIC0tZ2l0IGEvbGlicy91aS9kaWFsb2dzL2tpc19kbGdfaW1h Z2VfcHJvcGVydGllcy5jYyBiL2xpYnMvdWkvZGlhbG9ncy9raXNfZGxnX2ltYWdlX3Byb3BlcnRp ZXMuY2MKaW5kZXggZTFkN2YxZC4uZjMwYjQxYyAxMDA2NDQKLS0tIGEvbGlicy91aS9kaWFsb2dz L2tpc19kbGdfaW1hZ2VfcHJvcGVydGllcy5jYworKysgYi9saWJzL3VpL2RpYWxvZ3Mva2lzX2Rs Z19pbWFnZV9wcm9wZXJ0aWVzLmNjCkBAIC00MSw2ICs0MSw4IEBACiAjaW5jbHVkZSAia2lzX2Fu bm90YXRpb24uaCIKICNpbmNsdWRlICJraXNfY29uZmlnLmgiCiAjaW5jbHVkZSAia2lzX3NpZ25h bF9jb21wcmVzc29yLmgiCisjaW5jbHVkZSAia2lzX3Byb2Nlc3NpbmdfYXBwbGljYXRvci5oIgor I2luY2x1ZGUgImNvbW1hbmRzX25ldy9raXNfY2hhbmdlX3Byb2plY3Rpb25fY29sb3JfY29tbWFu ZC5oIgogI2luY2x1ZGUgIndpZGdldHMva2lzX2NtYl9pZGxpc3QuaCIKICNpbmNsdWRlICJ3aWRn ZXRzL3NxdWVlemVkY29tYm9ib3guaCIKIApAQCAtMTExLDggKzExMywxOCBAQCBjb25zdCBLb0Nv bG9yU3BhY2UgKiBLaXNEbGdJbWFnZVByb3BlcnRpZXM6OmNvbG9yU3BhY2UoKQogCiB2b2lkIEtp c0RsZ0ltYWdlUHJvcGVydGllczo6c2V0Q3VycmVudENvbG9yKCkKIHsKLSAgICBtX2ltYWdlLT5z ZXREZWZhdWx0UHJvamVjdGlvbkNvbG9yKG1fZGVmYXVsdENvbG9yQWN0aW9uLT5jdXJyZW50S29D b2xvcigpKTsKLSAgICBtX2ltYWdlLT5yZWZyZXNoR3JhcGhBc3luYygpOworICAgIEtpc0ltYWdl U2lnbmFsVmVjdG9yIGVtaXRTaWduYWxzOworICAgIGVtaXRTaWduYWxzIDw8IE1vZGlmaWVkU2ln bmFsOworCisgICAgS2lzUHJvY2Vzc2luZ0FwcGxpY2F0b3IgYXBwbGljYXRvcihtX2ltYWdlLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbV9pbWFnZS0+cm9vdCgpLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgS2lzUHJvY2Vzc2luZ0FwcGxp Y2F0b3I6OlJFQ1VSU0lWRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGVtaXRTaWduYWxzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3Vu ZG8yX2kxOG4oIkNoYW5nZSBwcm9qZWN0aW9uIGNvbG9yIiksCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMTQyODU3ICsgMSk7CisgICAgYXBwbGljYXRvci5hcHBseUNvbW1hbmQobmV3IEtpc0No YW5nZVByb2plY3Rpb25Db2xvckNvbW1hbmQobV9pbWFnZSwgbV9kZWZhdWx0Q29sb3JBY3Rpb24t PmN1cnJlbnRLb0NvbG9yKCkpKTsKKyAgICBhcHBsaWNhdG9yLmVuZCgpOwogfQogCiB2b2lkIEtp c0RsZ0ltYWdlUHJvcGVydGllczo6c2V0QW5ub3RhdGlvbihjb25zdCBRU3RyaW5nICZ0eXBlKQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpLcml0YSBtYWls aW5nIGxpc3QKa2ltYWdlc2hvcEBrZGUub3JnCmh0dHBzOi8vbWFpbC5rZGUub3JnL21haWxtYW4v bGlzdGluZm8va2ltYWdlc2hvcAo=