/pidgin/main: 4663f9da17aa: Merged in CMaiku/pidgin (pull reques...
Gary Kramlich <[email protected]> Fri, 30 Sep 2016 10:52:03 -0400
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Q2hhbmdlc2V0OiA0NjYzZjlkYTE3YWEwYzdlZTM2ZDZlYzdhODYwMzQ5ZWM3YWE4MjcxCkF1dGhv cjoJIEdhcnkgS3JhbWxpY2ggPGdyaW1AcmVhcGVyd29ybGQuY29tPgpEYXRlOgkgMjAxNi0wOS0z MCAwOTo1MCAtMDUwMApCcmFuY2g6CSBkZWZhdWx0ClVSTDogaHR0cHM6Ly9oZy5waWRnaW4uaW0v cGlkZ2luL21haW4vcmV2LzQ2NjNmOWRhMTdhYQoKRGVzY3JpcHRpb246CgpNZXJnZWQgaW4gQ01h aWt1L3BpZGdpbiAocHVsbCByZXF1ZXN0ICMxMjkpCgpmYWNlYm9vazogUG9ydCBmcm9tIHNzbGNv bm4gdG8gR2lvCgpkaWZmc3RhdDoKCiBsaWJwdXJwbGUvcHJvdG9jb2xzL2ZhY2Vib29rL2ZhY2Vi b29rLmMgfCAgICA0ICstCiBsaWJwdXJwbGUvcHJvdG9jb2xzL2ZhY2Vib29rL21xdHQuYyAgICAg fCAgMzM0ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGxpYnB1cnBsZS9wcm90b2Nv bHMvZmFjZWJvb2svbXF0dC5oICAgICB8ICAgMTcgLQogMyBmaWxlcyBjaGFuZ2VkLCAxOTggaW5z ZXJ0aW9ucygrKSwgMTU3IGRlbGV0aW9ucygtKQoKZGlmZnMgKHRydW5jYXRlZCBmcm9tIDUzNSB0 byAzMDAgbGluZXMpOgoKZGlmZiAtLWdpdCBhL2xpYnB1cnBsZS9wcm90b2NvbHMvZmFjZWJvb2sv ZmFjZWJvb2suYyBiL2xpYnB1cnBsZS9wcm90b2NvbHMvZmFjZWJvb2svZmFjZWJvb2suYwotLS0g YS9saWJwdXJwbGUvcHJvdG9jb2xzL2ZhY2Vib29rL2ZhY2Vib29rLmMKKysrIGIvbGlicHVycGxl L3Byb3RvY29scy9mYWNlYm9vay9mYWNlYm9vay5jCkBAIC0zMzIsOCArMzMyLDggQEAgZmJfY2Jf YXBpX2Vycm9yKEZiQXBpICphcGksIEdFcnJvciAqZXJybwogCiAJZ2MgPSBmYl9kYXRhX2dldF9j b25uZWN0aW9uKGZhdGEpOwogCi0JaWYgKGVycm9yLT5kb21haW4gPT0gRkJfTVFUVF9TU0xfRVJS T1IpIHsKLQkJcHVycGxlX2Nvbm5lY3Rpb25fc3NsX2Vycm9yKGdjLCBlcnJvci0+Y29kZSk7CisJ aWYgKGVycm9yLT5kb21haW4gPT0gR19JT19FUlJPUikgeworCQlwdXJwbGVfY29ubmVjdGlvbl9n X2Vycm9yKGdjLCBlcnJvcik7CiAJCXJldHVybjsKIAl9CiAKZGlmZiAtLWdpdCBhL2xpYnB1cnBs ZS9wcm90b2NvbHMvZmFjZWJvb2svbXF0dC5jIGIvbGlicHVycGxlL3Byb3RvY29scy9mYWNlYm9v ay9tcXR0LmMKLS0tIGEvbGlicHVycGxlL3Byb3RvY29scy9mYWNlYm9vay9tcXR0LmMKKysrIGIv bGlicHVycGxlL3Byb3RvY29scy9mYWNlYm9vay9tcXR0LmMKQEAgLTI4LDcgKzI4LDggQEAKICNp bmNsdWRlICJhY2NvdW50LmgiCiAjaW5jbHVkZSAiZXZlbnRsb29wLmgiCiAjaW5jbHVkZSAiZ2xp YmNvbXBhdC5oIgotI2luY2x1ZGUgInNzbGNvbm4uaCIKKyNpbmNsdWRlICJwdXJwbGUtZ2lvLmgi CisjaW5jbHVkZSAicXVldWVkb3V0cHV0c3RyZWFtLmgiCiAKICNpbmNsdWRlICJtYXJzaGFsLmgi CiAjaW5jbHVkZSAibXF0dC5oIgpAQCAtMzcsMTcgKzM4LDE3IEBACiBzdHJ1Y3QgX0ZiTXF0dFBy aXZhdGUKIHsKIAlQdXJwbGVDb25uZWN0aW9uICpnYzsKLQlQdXJwbGVTc2xDb25uZWN0aW9uICpn c2M7CisJR0lPU3RyZWFtICpjb25uOworCUdCdWZmZXJlZElucHV0U3RyZWFtICppbnB1dDsKKwlQ dXJwbGVRdWV1ZWRPdXRwdXRTdHJlYW0gKm91dHB1dDsKKwlHQ2FuY2VsbGFibGUgKmNhbmNlbGxh YmxlOwogCWdib29sZWFuIGNvbm5lY3RlZDsKIAlndWludDE2IG1pZDsKIAogCUdCeXRlQXJyYXkg KnJidWY7Ci0JR0J5dGVBcnJheSAqd2J1ZjsKIAlnc2l6ZSByZW16OwogCiAJZ2ludCB0ZXY7Ci0J Z2ludCByZXY7Ci0JZ2ludCB3ZXY7CiB9OwogCiBzdHJ1Y3QgX0ZiTXF0dE1lc3NhZ2VQcml2YXRl CkBAIC02NSw2ICs2Niw4IEBAIHN0cnVjdCBfRmJNcXR0TWVzc2FnZVByaXZhdGUKIEdfREVGSU5F X1RZUEUoRmJNcXR0LCBmYl9tcXR0LCBHX1RZUEVfT0JKRUNUKTsKIEdfREVGSU5FX1RZUEUoRmJN cXR0TWVzc2FnZSwgZmJfbXF0dF9tZXNzYWdlLCBHX1RZUEVfT0JKRUNUKTsKIAorc3RhdGljIHZv aWQgZmJfbXF0dF9yZWFkX3BhY2tldChGYk1xdHQgKm1xdHQpOworCiBzdGF0aWMgdm9pZAogZmJf bXF0dF9kaXNwb3NlKEdPYmplY3QgKm9iaikKIHsKQEAgLTczLDcgKzc2LDYgQEAgZmJfbXF0dF9k aXNwb3NlKEdPYmplY3QgKm9iaikKIAogCWZiX21xdHRfY2xvc2UobXF0dCk7CiAJZ19ieXRlX2Fy cmF5X2ZyZWUocHJpdi0+cmJ1ZiwgVFJVRSk7Ci0JZ19ieXRlX2FycmF5X2ZyZWUocHJpdi0+d2J1 ZiwgVFJVRSk7CiB9CiAKIHN0YXRpYyB2b2lkCkBAIC0xNjEsNyArMTYzLDYgQEAgZmJfbXF0dF9p bml0KEZiTXF0dCAqbXF0dCkKIAltcXR0LT5wcml2ID0gcHJpdjsKIAogCXByaXYtPnJidWYgPSBn X2J5dGVfYXJyYXlfbmV3KCk7Ci0JcHJpdi0+d2J1ZiA9IGdfYnl0ZV9hcnJheV9uZXcoKTsKIH0K IAogc3RhdGljIHZvaWQKQEAgLTIwNSwxOCArMjA2LDYgQEAgZmJfbXF0dF9lcnJvcl9xdWFyayh2 b2lkKQogCXJldHVybiBxOwogfQogCi1HUXVhcmsKLWZiX21xdHRfc3NsX2Vycm9yX3F1YXJrKHZv aWQpCi17Ci0Jc3RhdGljIEdRdWFyayBxID0gMDsKLQotCWlmIChHX1VOTElLRUxZKHEgPT0gMCkp IHsKLQkJcSA9IGdfcXVhcmtfZnJvbV9zdGF0aWNfc3RyaW5nKCJmYi1tcXR0LXNzbC1lcnJvci1x dWFyayIpOwotCX0KLQotCXJldHVybiBxOwotfQotCiBGYk1xdHQgKgogZmJfbXF0dF9uZXcoUHVy cGxlQ29ubmVjdGlvbiAqZ2MpCiB7CkBAIC0yNDAsMzMgKzIyOSw0NyBAQCBmYl9tcXR0X2Nsb3Nl KEZiTXF0dCAqbXF0dCkKIAlnX3JldHVybl9pZl9mYWlsKEZCX0lTX01RVFQobXF0dCkpOwogCXBy aXYgPSBtcXR0LT5wcml2OwogCi0JaWYgKHByaXYtPndldiA+IDApIHsKLQkJcHVycGxlX2lucHV0 X3JlbW92ZShwcml2LT53ZXYpOwotCQlwcml2LT53ZXYgPSAwOwotCX0KLQotCWlmIChwcml2LT5y ZXYgPiAwKSB7Ci0JCXB1cnBsZV9pbnB1dF9yZW1vdmUocHJpdi0+cmV2KTsKLQkJcHJpdi0+cmV2 ID0gMDsKLQl9Ci0KIAlpZiAocHJpdi0+dGV2ID4gMCkgewogCQlwdXJwbGVfdGltZW91dF9yZW1v dmUocHJpdi0+dGV2KTsKIAkJcHJpdi0+dGV2ID0gMDsKIAl9CiAKLQlpZiAocHJpdi0+Z3NjICE9 IE5VTEwpIHsKLQkJcHVycGxlX3NzbF9jbG9zZShwcml2LT5nc2MpOwotCQlwcml2LT5nc2MgPSBO VUxMOworCWlmIChwcml2LT5jYW5jZWxsYWJsZSAhPSBOVUxMKSB7CisJCWdfY2FuY2VsbGFibGVf Y2FuY2VsKHByaXYtPmNhbmNlbGxhYmxlKTsKKwkJZ19jbGVhcl9vYmplY3QoJnByaXYtPmNhbmNl bGxhYmxlKTsKIAl9CiAKLQlpZiAocHJpdi0+d2J1Zi0+bGVuID4gMCkgewotCQlmYl91dGlsX2Rl YnVnX3dhcm5pbmcoIkNsb3Npbmcgd2l0aCB1bndyaXR0ZW4gZGF0YSIpOworCWlmIChwcml2LT5j b25uICE9IE5VTEwpIHsKKwkJcHVycGxlX2dpb19ncmFjZWZ1bF9jbG9zZShwcml2LT5jb25uLAor CQkJCUdfSU5QVVRfU1RSRUFNKHByaXYtPmlucHV0KSwKKwkJCQlHX09VVFBVVF9TVFJFQU0ocHJp di0+b3V0cHV0KSk7CisJCWdfY2xlYXJfb2JqZWN0KCZwcml2LT5pbnB1dCk7CisJCWdfY2xlYXJf b2JqZWN0KCZwcml2LT5vdXRwdXQpOworCQlnX2NsZWFyX29iamVjdCgmcHJpdi0+Y29ubik7CiAJ fQogCiAJcHJpdi0+Y29ubmVjdGVkID0gRkFMU0U7CiAJZ19ieXRlX2FycmF5X3NldF9zaXplKHBy aXYtPnJidWYsIDApOwotCWdfYnl0ZV9hcnJheV9zZXRfc2l6ZShwcml2LT53YnVmLCAwKTsKK30K Kworc3RhdGljIHZvaWQKK2ZiX21xdHRfdGFrZV9lcnJvcihGYk1xdHQgKm1xdHQsIEdFcnJvciAq ZXJyLCBjb25zdCBnY2hhciAqcHJlZml4KQoreworCWlmIChnX2Vycm9yX21hdGNoZXMoZXJyLCBH X0lPX0VSUk9SLCBHX0lPX0VSUk9SX0NBTkNFTExFRCkpIHsKKwkJLyogUmV0dXJuIGFzIGNhbmNl bGxlZCBtZWFucyB0aGUgY29ubmVjdGlvbiBpcyBjbG9zaW5nICovCisJCWdfZXJyb3JfZnJlZShl cnIpOworCQlyZXR1cm47CisJfQorCisJLyogTm93IHdlIGNhbiBjaGVjayBmb3IgcHJvZ3JhbW1p bmcgZXJyb3JzICovCisJZ19yZXR1cm5faWZfZmFpbChGQl9JU19NUVRUKG1xdHQpKTsKKworCWlm IChwcmVmaXggIT0gTlVMTCkgeworCQlnX3ByZWZpeF9lcnJvcigmZXJyLCAiJXM6ICIsIHByZWZp eCk7CisJfQorCisJZ19zaWduYWxfZW1pdF9ieV9uYW1lKG1xdHQsICJlcnJvciIsIGVycik7CisJ Z19lcnJvcl9mcmVlKGVycik7CiB9CiAKIHZvaWQKQEAgLTM0NCw3NCArMzQ3LDEzMCBAQCBmYl9t cXR0X3BpbmcoRmJNcXR0ICptcXR0KQogfQogCiBzdGF0aWMgdm9pZAotZmJfbXF0dF9jYl9yZWFk KGdwb2ludGVyIGRhdGEsIGdpbnQgZmQsIFB1cnBsZUlucHV0Q29uZGl0aW9uIGNvbmQpCitmYl9t cXR0X2NiX2ZpbGwoR09iamVjdCAqc291cmNlLCBHQXN5bmNSZXN1bHQgKnJlcywgZ3BvaW50ZXIg ZGF0YSkKK3sKKwlHQnVmZmVyZWRJbnB1dFN0cmVhbSAqaW5wdXQgPSBHX0JVRkZFUkVEX0lOUFVU X1NUUkVBTShzb3VyY2UpOworCUZiTXF0dCAqbXF0dCA9IGRhdGE7CisJZ3NzaXplIHJldDsKKwlH RXJyb3IgKmVyciA9IE5VTEw7CisKKwlyZXQgPSBnX2J1ZmZlcmVkX2lucHV0X3N0cmVhbV9maWxs X2ZpbmlzaChpbnB1dCwgcmVzLCAmZXJyKTsKKworCWlmIChyZXQgPCAxKSB7CisJCWlmIChyZXQg PT0gMCkgeworCQkJZXJyID0gZ19lcnJvcl9uZXdfbGl0ZXJhbChHX0lPX0VSUk9SLAorCQkJCQlH X0lPX0VSUk9SX0NPTk5FQ1RJT05fQ0xPU0VELAorCQkJCQlfKCJDb25uZWN0aW9uIGNsb3NlZCIp KTsKKwkJfQorCisJCWZiX21xdHRfdGFrZV9lcnJvcihtcXR0LCBlcnIsIF8oIkZhaWxlZCB0byBy ZWFkIGZpeGVkIGhlYWRlciIpKTsKKwkJcmV0dXJuOworCX0KKworCWZiX21xdHRfcmVhZF9wYWNr ZXQobXF0dCk7Cit9CisKK3N0YXRpYyB2b2lkCitmYl9tcXR0X2NiX3JlYWRfcGFja2V0KEdPYmpl Y3QgKnNvdXJjZSwgR0FzeW5jUmVzdWx0ICpyZXMsIGdwb2ludGVyIGRhdGEpCiB7CiAJRmJNcXR0 ICptcXR0ID0gZGF0YTsKKwlGYk1xdHRQcml2YXRlICpwcml2OworCWdzc2l6ZSByZXQ7CiAJRmJN cXR0TWVzc2FnZSAqbXNnOwotCUZiTXF0dFByaXZhdGUgKnByaXYgPSBtcXR0LT5wcml2OwotCWdp bnQgcmVzOwotCWd1aW50IG11bHQ7Ci0JZ3VpbnQ4IGJ1ZlsxMDI0XTsKLQlndWludDggYnl0ZTsK LQlnc2l6ZSBzaXplOwotCWdzc2l6ZSByaXplOworCUdFcnJvciAqZXJyID0gTlVMTDsKIAotCWlm IChwcml2LT5yZW16IDwgMSkgewotCQkvKiBSZXNldCB0aGUgcmVhZCBidWZmZXIgKi8KLQkJZ19i eXRlX2FycmF5X3NldF9zaXplKHByaXYtPnJidWYsIDApOworCXJldCA9IGdfaW5wdXRfc3RyZWFt X3JlYWRfZmluaXNoKEdfSU5QVVRfU1RSRUFNKHNvdXJjZSksIHJlcywgJmVycik7CiAKLQkJcmVz ID0gcHVycGxlX3NzbF9yZWFkKHByaXYtPmdzYywgJmJ5dGUsIHNpemVvZiBieXRlKTsKLQkJZ19i eXRlX2FycmF5X2FwcGVuZChwcml2LT5yYnVmLCAmYnl0ZSwgc2l6ZW9mIGJ5dGUpOwotCi0JCWlm IChyZXMgIT0gc2l6ZW9mIGJ5dGUpIHsKLQkJCWZiX21xdHRfZXJyb3IobXF0dCwgRkJfTVFUVF9F UlJPUl9HRU5FUkFMLAotCQkJICAgICAgICAgICAgICBfKCJGYWlsZWQgdG8gcmVhZCBmaXhlZCBo ZWFkZXIiKSk7Ci0JCQlyZXR1cm47CisJaWYgKHJldCA8IDEpIHsKKwkJaWYgKHJldCA9PSAwKSB7 CisJCQllcnIgPSBnX2Vycm9yX25ld19saXRlcmFsKEdfSU9fRVJST1IsCisJCQkJCUdfSU9fRVJS T1JfQ09OTkVDVElPTl9DTE9TRUQsCisJCQkJCV8oIkNvbm5lY3Rpb24gY2xvc2VkIikpOwogCQl9 CiAKLQkJbXVsdCA9IDE7Ci0KLQkJZG8gewotCQkJcmVzID0gcHVycGxlX3NzbF9yZWFkKHByaXYt PmdzYywgJmJ5dGUsIHNpemVvZiBieXRlKTsKLQkJCWdfYnl0ZV9hcnJheV9hcHBlbmQocHJpdi0+ cmJ1ZiwgJmJ5dGUsIHNpemVvZiBieXRlKTsKLQotCQkJaWYgKHJlcyAhPSBzaXplb2YgYnl0ZSkg ewotCQkJCWZiX21xdHRfZXJyb3IobXF0dCwgRkJfTVFUVF9FUlJPUl9HRU5FUkFMLAotCQkJCSAg ICAgICAgICAgICAgXygiRmFpbGVkIHRvIHJlYWQgcGFja2V0IHNpemUiKSk7Ci0JCQkJcmV0dXJu OwotCQkJfQotCi0JCQlwcml2LT5yZW16ICs9IChieXRlICYgMTI3KSAqIG11bHQ7Ci0JCQltdWx0 ICo9IDEyODsKLQkJfSB3aGlsZSAoKGJ5dGUgJiAxMjgpICE9IDApOworCQlmYl9tcXR0X3Rha2Vf ZXJyb3IobXF0dCwgZXJyLCBfKCJGYWlsZWQgdG8gcmVhZCBwYWNrZXQgZGF0YSIpKTsKKwkJcmV0 dXJuOwogCX0KIAorCXByaXYgPSBtcXR0LT5wcml2OworCXByaXYtPnJlbXogLT0gcmV0OworCiAJ aWYgKHByaXYtPnJlbXogPiAwKSB7Ci0JCXNpemUgPSBNSU4ocHJpdi0+cmVteiwgc2l6ZW9mIGJ1 Zik7Ci0JCXJpemUgPSBwdXJwbGVfc3NsX3JlYWQocHJpdi0+Z3NjLCBidWYsIHNpemUpOworCQln X2lucHV0X3N0cmVhbV9yZWFkX2FzeW5jKEdfSU5QVVRfU1RSRUFNKHNvdXJjZSksCisJCQkJcHJp di0+cmJ1Zi0+ZGF0YSArCisJCQkJcHJpdi0+cmJ1Zi0+bGVuIC0gcHJpdi0+cmVteiwgcHJpdi0+ cmVteiwKKwkJCQlHX1BSSU9SSVRZX0RFRkFVTFQsIHByaXYtPmNhbmNlbGxhYmxlLAorCQkJCWZi X21xdHRfY2JfcmVhZF9wYWNrZXQsIG1xdHQpOworCQlyZXR1cm47CisJfQogCi0JCWlmIChyaXpl IDwgMSkgewotCQkJZmJfbXF0dF9lcnJvcihtcXR0LCBGQl9NUVRUX0VSUk9SX0dFTkVSQUwsCi0J CQkgICAgICAgICAgICAgIF8oIkZhaWxlZCB0byByZWFkIHBhY2tldCBkYXRhIikpOwotCQkJcmV0 dXJuOworCW1zZyA9IGZiX21xdHRfbWVzc2FnZV9uZXdfYnl0ZXMocHJpdi0+cmJ1Zik7CisKKwlp ZiAoR19VTkxJS0VMWShtc2cgPT0gTlVMTCkpIHsKKwkJZmJfbXF0dF9lcnJvcihtcXR0LCBGQl9N UVRUX0VSUk9SX0dFTkVSQUwsCisJCSAgICAgICAgICAgICAgXygiRmFpbGVkIHRvIHBhcnNlIG1l c3NhZ2UiKSk7CisJCXJldHVybjsKKwl9CisKKwlmYl9tcXR0X3JlYWQobXF0dCwgbXNnKTsKKwln X29iamVjdF91bnJlZihtc2cpOworCisJLyogUmVhZCBhbm90aGVyIHBhY2tldCBpZiBjb25uZWN0 aW9uIHdhc24ndCByZXNldCBpbiBmYl9tcXR0X3JlYWQoKSAqLworCWlmIChmYl9tcXR0X2Nvbm5l Y3RlZChtcXR0LCBGQUxTRSkpIHsKKwkJZmJfbXF0dF9yZWFkX3BhY2tldChtcXR0KTsKKwl9Cit9 CisKK3N0YXRpYyB2b2lkCitmYl9tcXR0X3JlYWRfcGFja2V0KEZiTXF0dCAqbXF0dCkKK3sKKwlG Yk1xdHRQcml2YXRlICpwcml2ID0gbXF0dC0+cHJpdjsKKwljb25zdCBndWludDggY29uc3QgKmJ1 ZjsKKwlnc2l6ZSBjb3VudCA9IDA7CisJZ3NpemUgcG9zOworCWd1aW50IG11bHQgPSAxOworCWd1 aW50OCBieXRlOworCWdzaXplIHNpemUgPSAwOworCisJYnVmID0gZ19idWZmZXJlZF9pbnB1dF9z dHJlYW1fcGVla19idWZmZXIocHJpdi0+aW5wdXQsICZjb3VudCk7CisKKwkvKiBTdGFydCBhdCAx IHRvIHNraXAgdGhlIGZpcnN0IGJ5dGUgKi8KKwlwb3MgPSAxOworCisJZG8geworCQlpZiAocG9z ID49IGNvdW50KSB7CisJCQkvKiBOb3QgZW5vdWdoIGRhdGEgeWV0LCB0cnkgYWdhaW4gbGF0ZXIg Ki8KKwkJCXNpemUgPSAwOworCQkJYnJlYWs7CiAJCX0KIAotCQlnX2J5dGVfYXJyYXlfYXBwZW5k KHByaXYtPnJidWYsIGJ1Ziwgcml6ZSk7Ci0JCXByaXYtPnJlbXogLT0gcml6ZTsKLQl9CgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpDb21taXRzIG1haWxp bmcgbGlzdApDb21taXRzQHBpZGdpbi5pbQpodHRwczovL3BpZGdpbi5pbS9jZ2ktYmluL21haWxt YW4vbGlzdGluZm8vY29tbWl0cw==