From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by sourceware.org (Postfix) with ESMTPS id B76773858417 for ; Mon, 23 Aug 2021 08:54:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org B76773858417 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.cz Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id BB70E1FF86 for ; Mon, 23 Aug 2021 08:54:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1629708871; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=6vpQn/m4rn8RHJZEhu9xQo4IsVU27WbWdHrglKrReAc=; b=dVwnedC/O7dfC99WG2yjzIfXf9fJDu5dG2z40gL+lwusfVP1oXnMQn2JxjIw4CKLzaS/l4 liWfAkn6CINZWo2yWlqDwiMTR2AIGpuJWjZYkpDFOjaL81PiXRIUQTXnZDgSZXRna3Zhj6 H1znv26R7lnu2AwH55OLJLedqGTX6y8= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1629708871; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=6vpQn/m4rn8RHJZEhu9xQo4IsVU27WbWdHrglKrReAc=; b=HPW2KI6lcjyEjh7Amu0ZoJHZNObJ9DgCn65E5ego4E4Rl5cMHUYnVzB9TksXjQml06BTvD 7IIQF+lgQ5l/n3Bg== Received: from imap1.suse-dmz.suse.de (imap1.suse-dmz.suse.de [192.168.254.73]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap1.suse-dmz.suse.de (Postfix) with ESMTPS id AA0F113A22 for ; Mon, 23 Aug 2021 08:54:31 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap1.suse-dmz.suse.de with ESMTPSA id E/6FKEdiI2HaaAAAGKfGzw (envelope-from ) for ; Mon, 23 Aug 2021 08:54:31 +0000 Content-Type: multipart/mixed; boundary="------------f5VgN2JYywy5f052JVzaaNFi" Message-ID: <3e5c21ed-7cea-ab6e-f26a-f179148d1c5a@suse.cz> Date: Mon, 23 Aug 2021 10:54:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.0.1 Subject: Re: GCC 11 backports Content-Language: en-US From: =?UTF-8?Q?Martin_Li=c5=a1ka?= To: GCC Patches References: <9581571d-08e1-576b-d53a-90a0fd3ce516@suse.cz> In-Reply-To: <9581571d-08e1-576b-d53a-90a0fd3ce516@suse.cz> X-Spam-Status: No, score=-12.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, NICE_REPLY_A, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2021 08:54:47 -0000 This is a multi-part message in MIME format. --------------f5VgN2JYywy5f052JVzaaNFi Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 8/16/21 13:13, Martin Liška wrote: > I'm going to apply the following 3 tested patches. > > Martin One more patch I've just tested. Martin --------------f5VgN2JYywy5f052JVzaaNFi Content-Type: text/x-patch; charset=UTF-8; name="0001-gcov-fix-output-location-for-JSON-mode.patch" Content-Disposition: attachment; filename="0001-gcov-fix-output-location-for-JSON-mode.patch" Content-Transfer-Encoding: base64 RnJvbSA5MzEwZTVmNTk5YjY4ZDMxMWU5ODdiNzdjZDBiN2M4ZDNlNDZjNWY4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJ0aW4gTGlza2EgPG1saXNrYUBzdXNlLmN6PgpE YXRlOiBUdWUsIDE3IEF1ZyAyMDIxIDE2OjI0OjI2ICswMjAwClN1YmplY3Q6IFtQQVRDSF0g Z2NvdjogZml4IG91dHB1dCBsb2NhdGlvbiBmb3IgSlNPTiBtb2RlLgoKCVBSIGdjb3YtcHJv ZmlsZS84OTk2MQoKZ2NjL0NoYW5nZUxvZzoKCgkqIGdjb3YuYyAobWFrZV9nY292X2ZpbGVf bmFtZSk6IFJld3JpdGUgdXNpbmcgc3RkOjpzdHJpbmcuCgkobWFuZ2xlX25hbWUpOiBTaW1w bGlmeSwgZG8gbm90IHVzZWQgdGhlIHNlY29uZCBhcmd1bWVudC4KCShzdHJpcF9leHRlbnRp b24pOiBOZXcgZnVuY3Rpb24uCgkoZ2V0X21kNXN1bSk6IExpa2V3aXNlLgoJKGdldF9nY292 X2ludGVybWVkaWF0ZV9maWxlbmFtZSk6IEhhbmRsZSBwcm9wZXJseSAtcCBhbmQgLXgKCW9w dGlvbnMuCgkob3V0cHV0X2djb3ZfZmlsZSk6IFVzZSBzdHJpbmcgdHlwZS4KCShnZW5lcmF0 ZV9yZXN1bHRzKTogTGlrZXdpc2UuCgkobWQ1c3VtX3RvX2hleCk6IFJlbW92ZS4KCihjaGVy cnkgcGlja2VkIGZyb20gY29tbWl0IGI3NzdmMjI4YjQ4MWFlODgxYTdmYmIwOWRlMzY3YTA1 Mzc0MDkzMmMpCi0tLQogZ2NjL2djb3YuYyB8IDE1OCArKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDc5IGlu c2VydGlvbnMoKyksIDc5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2djYy9nY292LmMg Yi9nY2MvZ2Nvdi5jCmluZGV4IDVjNjUxYTliZGNlLi5jZjBhNDlkOGMzMCAxMDA2NDQKLS0t IGEvZ2NjL2djb3YuYworKysgYi9nY2MvZ2Nvdi5jCkBAIC02NjIsOCArNjYyLDggQEAgc3Rh dGljIHZvaWQgYWNjdW11bGF0ZV9saW5lX2NvdW50cyAoc291cmNlX2luZm8gKik7CiBzdGF0 aWMgdm9pZCBvdXRwdXRfZ2Nvdl9maWxlIChjb25zdCBjaGFyICosIHNvdXJjZV9pbmZvICop Owogc3RhdGljIGludCBvdXRwdXRfYnJhbmNoX2NvdW50IChGSUxFICosIGludCwgY29uc3Qg YXJjX2luZm8gKik7CiBzdGF0aWMgdm9pZCBvdXRwdXRfbGluZXMgKEZJTEUgKiwgY29uc3Qg c291cmNlX2luZm8gKik7Ci1zdGF0aWMgY2hhciAqbWFrZV9nY292X2ZpbGVfbmFtZSAoY29u c3QgY2hhciAqLCBjb25zdCBjaGFyICopOwotc3RhdGljIGNoYXIgKm1hbmdsZV9uYW1lIChj b25zdCBjaGFyICosIGNoYXIgKik7CitzdGF0aWMgc3RyaW5nIG1ha2VfZ2Nvdl9maWxlX25h bWUgKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKK3N0YXRpYyBjaGFyICptYW5nbGVf bmFtZSAoY29uc3QgY2hhciAqKTsKIHN0YXRpYyB2b2lkIHJlbGVhc2Vfc3RydWN0dXJlcyAo dm9pZCk7CiBleHRlcm4gaW50IG1haW4gKGludCwgY2hhciAqKik7CiAKQEAgLTExMzQsNiAr MTEzNCw0MSBAQCBvdXRwdXRfaW50ZXJtZWRpYXRlX2pzb25fbGluZSAoanNvbjo6YXJyYXkg Km9iamVjdCwKICAgb2JqZWN0LT5hcHBlbmQgKGxpbmVvKTsKIH0KIAorLyogU3RyaXAgZmls ZW5hbWUgZXh0ZW5zaW9uIGluIFNUUi4gICovCisKK3N0YXRpYyBzdHJpbmcKK3N0cmlwX2V4 dGVudGlvbiAoc3RyaW5nIHN0cikKK3sKKyAgc3RyaW5nOjpzaXplX3R5cGUgcG9zID0gc3Ry LnJmaW5kICgnLicpOworICBpZiAocG9zICE9IHN0cmluZzo6bnBvcykKKyAgICBzdHIgPSBz dHIuc3Vic3RyICgwLCBwb3MpOworCisgIHJldHVybiBzdHI7Cit9CisKKy8qIENhbGN1YWx0 ZSBtZDVzdW0gZm9yIElOUFVUIHN0cmluZyBhbmQgcmV0dXJuIGl0IGluIGhleCBzdHJpbmcg Zm9ybWF0LiAgKi8KKworc3RhdGljIHN0cmluZworZ2V0X21kNXN1bSAoY29uc3QgY2hhciAq aW5wdXQpCit7CisgIG1kNV9jdHggY3R4OworICBjaGFyIG1kNXN1bVsxNl07CisgIHN0cmlu ZyBzdHI7CisKKyAgbWQ1X2luaXRfY3R4ICgmY3R4KTsKKyAgbWQ1X3Byb2Nlc3NfYnl0ZXMg KGlucHV0LCBzdHJsZW4gKGlucHV0KSwgJmN0eCk7CisgIG1kNV9maW5pc2hfY3R4ICgmY3R4 LCBtZDVzdW0pOworCisgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCAxNjsgaSsrKQorICAg IHsKKyAgICAgIGNoYXIgYlszXTsKKyAgICAgIHNwcmludGYgKGIsICIlMDJ4IiwgKHVuc2ln bmVkIGNoYXIpbWQ1c3VtW2ldKTsKKyAgICAgIHN0ciArPSBiOworICAgIH0KKworICByZXR1 cm4gc3RyOworfQorCiAvKiBHZXQgdGhlIG5hbWUgb2YgdGhlIGdjb3YgZmlsZS4gIFRoZSBy ZXR1cm4gdmFsdWUgbXVzdCBiZSBmcmVlJ2QuCiAKICAgIEl0IGFwcGVuZHMgdGhlICcuZ2Nv dicgZXh0ZW5zaW9uIHRvIHRoZSAqYmFzZW5hbWUqIG9mIHRoZSBmaWxlLgpAQCAtMTE0Mywy MCArMTE3OCwyNiBAQCBvdXRwdXRfaW50ZXJtZWRpYXRlX2pzb25fbGluZSAoanNvbjo6YXJy YXkgKm9iamVjdCwKICAgIGlucHV0OiBmb28uZGEsICAgICAgIG91dHB1dDogZm9vLmRhLmdj b3YKICAgIGlucHV0OiBhL2IvZm9vLmNjLCAgIG91dHB1dDogZm9vLmNjLmdjb3YgICovCiAK LXN0YXRpYyBjaGFyICoKLWdldF9nY292X2ludGVybWVkaWF0ZV9maWxlbmFtZSAoY29uc3Qg Y2hhciAqZmlsZV9uYW1lKQorc3RhdGljIHN0cmluZworZ2V0X2djb3ZfaW50ZXJtZWRpYXRl X2ZpbGVuYW1lIChjb25zdCBjaGFyICppbnB1dF9maWxlX25hbWUpCiB7Ci0gIGNvbnN0IGNo YXIgKmdjb3YgPSAiLmdjb3YuanNvbi5neiI7Ci0gIGNoYXIgKnJlc3VsdDsKLSAgY29uc3Qg Y2hhciAqY3B0cjsKKyAgc3RyaW5nIGJhc2UgPSBiYXNlbmFtZSAoaW5wdXRfZmlsZV9uYW1l KTsKKyAgc3RyaW5nIHN0ciA9IHN0cmlwX2V4dGVudGlvbiAoYmFzZSk7CiAKLSAgLyogRmlu ZCB0aGUgJ2Jhc2VuYW1lJy4gICovCi0gIGNwdHIgPSBsYmFzZW5hbWUgKGZpbGVfbmFtZSk7 Ci0KLSAgcmVzdWx0ID0gWE5FV1ZFQyAoY2hhciwgc3RybGVuIChjcHRyKSArIHN0cmxlbiAo Z2NvdikgKyAxKTsKLSAgc3ByaW50ZiAocmVzdWx0LCAiJXMlcyIsIGNwdHIsIGdjb3YpOwor ICBpZiAoZmxhZ19oYXNoX2ZpbGVuYW1lcykKKyAgICB7CisgICAgICBzdHIgKz0gIiMjIjsK KyAgICAgIHN0ciArPSBnZXRfbWQ1c3VtIChpbnB1dF9maWxlX25hbWUpOworICAgIH0KKyAg ZWxzZSBpZiAoZmxhZ19wcmVzZXJ2ZV9wYXRocyAmJiBiYXNlICE9IGlucHV0X2ZpbGVfbmFt ZSkKKyAgICB7CisgICAgICBzdHIgKz0gIiMjIjsKKyAgICAgIHN0ciArPSBtYW5nbGVfcGF0 aCAoaW5wdXRfZmlsZV9uYW1lKTsKKyAgICAgIHN0ciA9IHN0cmlwX2V4dGVudGlvbiAoc3Ry KTsKKyAgICB9CiAKLSAgcmV0dXJuIHJlc3VsdDsKKyAgc3RyICs9ICIuZ2Nvdi5qc29uLmd6 IjsKKyAgcmV0dXJuIHN0ci5jX3N0ciAoKTsKIH0KIAogLyogT3V0cHV0IHRoZSByZXN1bHQg aW4gSlNPTiBpbnRlcm1lZGlhdGUgZm9ybWF0LgpAQCAtMTQxNiw3ICsxNDU3LDkgQEAgcHJv Y2Vzc19hbGxfZnVuY3Rpb25zICh2b2lkKQogc3RhdGljIHZvaWQKIG91dHB1dF9nY292X2Zp bGUgKGNvbnN0IGNoYXIgKmZpbGVfbmFtZSwgc291cmNlX2luZm8gKnNyYykKIHsKLSAgY2hh ciAqZ2Nvdl9maWxlX25hbWUgPSBtYWtlX2djb3ZfZmlsZV9uYW1lIChmaWxlX25hbWUsIHNy Yy0+Y292ZXJhZ2UubmFtZSk7CisgIHN0cmluZyBnY292X2ZpbGVfbmFtZV9zdHIKKyAgICA9 IG1ha2VfZ2Nvdl9maWxlX25hbWUgKGZpbGVfbmFtZSwgc3JjLT5jb3ZlcmFnZS5uYW1lKTsK KyAgY29uc3QgY2hhciAqZ2Nvdl9maWxlX25hbWUgPSBnY292X2ZpbGVfbmFtZV9zdHIuY19z dHIgKCk7CiAKICAgaWYgKHNyYy0+Y292ZXJhZ2UubGluZXMpCiAgICAgewpAQCAtMTQzOCwx MyArMTQ4MSwxMiBAQCBvdXRwdXRfZ2Nvdl9maWxlIChjb25zdCBjaGFyICpmaWxlX25hbWUs IHNvdXJjZV9pbmZvICpzcmMpCiAgICAgICB1bmxpbmsgKGdjb3ZfZmlsZV9uYW1lKTsKICAg ICAgIGZub3RpY2UgKHN0ZG91dCwgIlJlbW92aW5nICclcydcbiIsIGdjb3ZfZmlsZV9uYW1l KTsKICAgICB9Ci0gIGZyZWUgKGdjb3ZfZmlsZV9uYW1lKTsKIH0KIAogc3RhdGljIHZvaWQK IGdlbmVyYXRlX3Jlc3VsdHMgKGNvbnN0IGNoYXIgKmZpbGVfbmFtZSkKIHsKLSAgY2hhciAq Z2Nvdl9pbnRlcm1lZGlhdGVfZmlsZW5hbWU7CisgIHN0cmluZyBnY292X2ludGVybWVkaWF0 ZV9maWxlbmFtZTsKIAogICBmb3IgKHZlY3RvcjxmdW5jdGlvbl9pbmZvICo+OjppdGVyYXRv ciBpdCA9IGZ1bmN0aW9ucy5iZWdpbiAoKTsKICAgICAgICBpdCAhPSBmdW5jdGlvbnMuZW5k ICgpOyBpdCsrKQpAQCAtMTU0NywxMSArMTU4OSwxMyBAQCBnZW5lcmF0ZV9yZXN1bHRzIChj b25zdCBjaGFyICpmaWxlX25hbWUpCiAJICByb290LT5wcmludCAoJnBwKTsKIAkgIHBwX2Zv cm1hdHRlZF90ZXh0ICgmcHApOwogCi0JICBnekZpbGUgb3V0cHV0ID0gZ3pvcGVuIChnY292 X2ludGVybWVkaWF0ZV9maWxlbmFtZSwgInciKTsKKwkgIGZub3RpY2UgKHN0ZG91dCwgIkNy ZWF0aW5nICclcydcbiIsCisJCSAgIGdjb3ZfaW50ZXJtZWRpYXRlX2ZpbGVuYW1lLmNfc3Ry ICgpKTsKKwkgIGd6RmlsZSBvdXRwdXQgPSBnem9wZW4gKGdjb3ZfaW50ZXJtZWRpYXRlX2Zp bGVuYW1lLmNfc3RyICgpLCAidyIpOwogCSAgaWYgKG91dHB1dCA9PSBOVUxMKQogCSAgICB7 CiAJICAgICAgZm5vdGljZSAoc3RkZXJyLCAiQ2Fubm90IG9wZW4gSlNPTiBvdXRwdXQgZmls ZSAlc1xuIiwKLQkJICAgICAgIGdjb3ZfaW50ZXJtZWRpYXRlX2ZpbGVuYW1lKTsKKwkJICAg ICAgIGdjb3ZfaW50ZXJtZWRpYXRlX2ZpbGVuYW1lLmNfc3RyICgpKTsKIAkgICAgICByZXR1 cm47CiAJICAgIH0KIApAQCAtMTU1OSw3ICsxNjAzLDcgQEAgZ2VuZXJhdGVfcmVzdWx0cyAo Y29uc3QgY2hhciAqZmlsZV9uYW1lKQogCSAgICAgIHx8IGd6Y2xvc2UgKG91dHB1dCkpCiAJ ICAgIHsKIAkgICAgICBmbm90aWNlIChzdGRlcnIsICJFcnJvciB3cml0aW5nIEpTT04gb3V0 cHV0IGZpbGUgJXNcbiIsCi0JCSAgICAgICBnY292X2ludGVybWVkaWF0ZV9maWxlbmFtZSk7 CisJCSAgICAgICBnY292X2ludGVybWVkaWF0ZV9maWxlbmFtZS5jX3N0ciAoKSk7CiAJICAg ICAgcmV0dXJuOwogCSAgICB9CiAJfQpAQCAtMjU0NiwxNSArMjU5MCw2IEBAIGNhbm9uaWNh bGl6ZV9uYW1lIChjb25zdCBjaGFyICpuYW1lKQogICByZXR1cm4gcmVzdWx0OwogfQogCi0v KiBQcmludCBoZXggcmVwcmVzZW50YXRpb24gb2YgMTYgYnl0ZXMgZnJvbSBTVU0gYW5kIHdy aXRlIGl0IHRvIEJVRkZFUi4gICovCi0KLXN0YXRpYyB2b2lkCi1tZDVzdW1fdG9faGV4IChj b25zdCBjaGFyICpzdW0sIGNoYXIgKmJ1ZmZlcikKLXsKLSAgZm9yICh1bnNpZ25lZCBpID0g MDsgaSA8IDE2OyBpKyspCi0gICAgc3ByaW50ZiAoYnVmZmVyICsgKDIgKiBpKSwgIiUwMngi LCAodW5zaWduZWQgY2hhcilzdW1baV0pOwotfQotCiAvKiBHZW5lcmF0ZSBhbiBvdXRwdXQg ZmlsZSBuYW1lLiBJTlBVVF9OQU1FIGlzIHRoZSBjYW5vbmljYWxpemVkIG1haW4KICAgIGlu cHV0IGZpbGUgYW5kIFNSQ19OQU1FIGlzIHRoZSBjYW5vbmljYWxpemVkIGZpbGUgbmFtZS4K ICAgIExPTkdfT1VUUFVUX05BTUVTIGFuZCBQUkVTRVJWRV9QQVRIUyBhZmZlY3QgbmFtZSBn ZW5lcmF0aW9uLiAgV2l0aApAQCAtMjU2Nyw3NyArMjYwMiw0MiBAQCBtZDVzdW1fdG9faGV4 IChjb25zdCBjaGFyICpzdW0sIGNoYXIgKmJ1ZmZlcikKICAgIGNvbXBvbmVudC4gIChSZW1l bWJlciwgdGhlIGNhbm9uaWNhbGl6ZWQgbmFtZSB3aWxsIGFscmVhZHkgaGF2ZQogICAgZWxp ZGVkICcuJyBjb21wb25lbnRzIGFuZCBjb252ZXJ0ZWQgXFwgc2VwYXJhdG9ycy4pICAqLwog Ci1zdGF0aWMgY2hhciAqCitzdGF0aWMgc3RyaW5nCiBtYWtlX2djb3ZfZmlsZV9uYW1lIChj b25zdCBjaGFyICppbnB1dF9uYW1lLCBjb25zdCBjaGFyICpzcmNfbmFtZSkKIHsKLSAgY2hh ciAqcHRyOwotICBjaGFyICpyZXN1bHQ7Ci0KLSAgaWYgKGZsYWdfbG9uZ19uYW1lcyAmJiBp bnB1dF9uYW1lICYmIHN0cmNtcCAoc3JjX25hbWUsIGlucHV0X25hbWUpKQotICAgIHsKLSAg ICAgIC8qIEdlbmVyYXRlIHRoZSBpbnB1dCBmaWxlbmFtZSBwYXJ0LiAgKi8KLSAgICAgIHJl c3VsdCA9IFhORVdWRUMgKGNoYXIsIHN0cmxlbiAoaW5wdXRfbmFtZSkgKyBzdHJsZW4gKHNy Y19uYW1lKSArIDEwKTsKLQotICAgICAgcHRyID0gcmVzdWx0OwotICAgICAgcHRyID0gbWFu Z2xlX25hbWUgKGlucHV0X25hbWUsIHB0cik7Ci0gICAgICBwdHJbMF0gPSBwdHJbMV0gPSAn Iyc7Ci0gICAgICBwdHIgKz0gMjsKLSAgICB9Ci0gIGVsc2UKLSAgICB7Ci0gICAgICByZXN1 bHQgPSBYTkVXVkVDIChjaGFyLCBzdHJsZW4gKHNyY19uYW1lKSArIDEwKTsKLSAgICAgIHB0 ciA9IHJlc3VsdDsKLSAgICB9Ci0KLSAgcHRyID0gbWFuZ2xlX25hbWUgKHNyY19uYW1lLCBw dHIpOwotICBzdHJjcHkgKHB0ciwgIi5nY292Iik7CisgIHN0cmluZyBzdHI7CiAKICAgLyog V2hlbiBoYXNoaW5nIGZpbGVuYW1lcywgd2Ugc2hvcnRlbiB0aGVtIGJ5IG9ubHkgdXNpbmcg dGhlIGZpbGVuYW1lCiAgICAgIGNvbXBvbmVudCBhbmQgYXBwZW5kaW5nIGEgaGFzaCBvZiB0 aGUgZnVsbCAobWFuZ2xlZCkgcGF0aG5hbWUuICAqLwogICBpZiAoZmxhZ19oYXNoX2ZpbGVu YW1lcykKKyAgICBzdHIgPSAoc3RyaW5nIChtYW5nbGVfbmFtZSAoc3JjX25hbWUpKSArICIj IyIKKwkgICArIGdldF9tZDVzdW0gKHNyY19uYW1lKSArICIuZ2NvdiIpOworICBlbHNlCiAg ICAgewotICAgICAgbWQ1X2N0eCBjdHg7Ci0gICAgICBjaGFyIG1kNXN1bVsxNl07Ci0gICAg ICBjaGFyIG1kNXN1bV9oZXhbMzNdOwotCi0gICAgICBtZDVfaW5pdF9jdHggKCZjdHgpOwot ICAgICAgbWQ1X3Byb2Nlc3NfYnl0ZXMgKHNyY19uYW1lLCBzdHJsZW4gKHNyY19uYW1lKSwg JmN0eCk7Ci0gICAgICBtZDVfZmluaXNoX2N0eCAoJmN0eCwgbWQ1c3VtKTsKLSAgICAgIG1k NXN1bV90b19oZXggKG1kNXN1bSwgbWQ1c3VtX2hleCk7Ci0gICAgICBmcmVlIChyZXN1bHQp OworICAgICAgaWYgKGZsYWdfbG9uZ19uYW1lcyAmJiBpbnB1dF9uYW1lICYmIHN0cmNtcCAo c3JjX25hbWUsIGlucHV0X25hbWUpICE9IDApCisJeworCSAgc3RyICs9IG1hbmdsZV9uYW1l IChpbnB1dF9uYW1lKTsKKwkgIHN0ciArPSAiIyMiOworCX0KIAotICAgICAgcmVzdWx0ID0g WE5FV1ZFQyAoY2hhciwgc3RybGVuIChzcmNfbmFtZSkgKyA1MCk7Ci0gICAgICBwdHIgPSBy ZXN1bHQ7Ci0gICAgICBwdHIgPSBtYW5nbGVfbmFtZSAoc3JjX25hbWUsIHB0cik7Ci0gICAg ICBwdHJbMF0gPSBwdHJbMV0gPSAnIyc7Ci0gICAgICBwdHIgKz0gMjsKLSAgICAgIG1lbWNw eSAocHRyLCBtZDVzdW1faGV4LCAzMik7Ci0gICAgICBwdHIgKz0gMzI7Ci0gICAgICBzdHJj cHkgKHB0ciwgIi5nY292Iik7CisgICAgICBzdHIgKz0gbWFuZ2xlX25hbWUgKHNyY19uYW1l KTsKKyAgICAgIHN0ciArPSAiLmdjb3YiOwogICAgIH0KIAotICByZXR1cm4gcmVzdWx0Owor ICByZXR1cm4gc3RyOwogfQogCiAvKiBNYW5nbGUgQkFTRSBuYW1lLCBjb3B5IGl0IGF0IHRo ZSBiZWdpbm5pbmcgb2YgUFRSIGJ1ZmZlciBhbmQKICAgIHJldHVybiBhZGRyZXNzIG9mIHRo ZSBcMCBjaGFyYWN0ZXIgb2YgdGhlIGJ1ZmZlci4gICovCiAKIHN0YXRpYyBjaGFyICoKLW1h bmdsZV9uYW1lIChjaGFyIGNvbnN0ICpiYXNlLCBjaGFyICpwdHIpCittYW5nbGVfbmFtZSAo Y2hhciBjb25zdCAqYmFzZSkKIHsKLSAgc2l6ZV90IGxlbjsKLQogICAvKiBHZW5lcmF0ZSB0 aGUgc291cmNlIGZpbGVuYW1lIHBhcnQuICAqLwogICBpZiAoIWZsYWdfcHJlc2VydmVfcGF0 aHMpCi0gICAgYmFzZSA9IGxiYXNlbmFtZSAoYmFzZSk7CisgICAgcmV0dXJuIHhzdHJkdXAg KGxiYXNlbmFtZSAoYmFzZSkpOwogICBlbHNlCi0gICAgYmFzZSA9IG1hbmdsZV9wYXRoIChi YXNlKTsKLQotICBsZW4gPSBzdHJsZW4gKGJhc2UpOwotICBtZW1jcHkgKHB0ciwgYmFzZSwg bGVuKTsKLSAgcHRyICs9IGxlbjsKLQotICByZXR1cm4gcHRyOworICAgIHJldHVybiBtYW5n bGVfcGF0aCAoYmFzZSk7CiB9CiAKIC8qIFNjYW4gdGhyb3VnaCB0aGUgYmJfZGF0YSBmb3Ig ZWFjaCBsaW5lIGluIHRoZSBibG9jaywgaW5jcmVtZW50Ci0tIAoyLjMyLjAKCg== --------------f5VgN2JYywy5f052JVzaaNFi--