From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#55696: 28.1; eshell fails to respect text-scale-increase Date: Wed, 8 Jun 2022 16:20:10 -0700 Message-ID: <86a0c66e-86f9-6bd6-2010-eb1cf2d9f1e6@gmail.com> References: <37af046b-4257-6370-c765-9290eae73fd4@gmail.com> <831qw6dzra.fsf@gnu.org> <0278e759-237b-a32b-4b1f-fbdacf39c8ef@gmail.com> <83pmjpar0x.fsf@gnu.org> <9e8a8b42-2f42-3027-2ec0-97744bb91911@gmail.com> <83sfoja2xp.fsf@gnu.org> <34062848-8fe4-351c-df63-5cc341fefa57@gmail.com> <83sfoj7x6f.fsf@gnu.org> <83ee027yjc.fsf@gnu.org> <2b86123e-76c1-ec0c-c767-7d821473e5e1@gmx.at> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------272CDD1F49BC7A7C2991E00F" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19814"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 55696@debbugs.gnu.org, jeff.kowalski@gmail.com To: martin rudalics , Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jun 09 01:21:20 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nz4zH-0004zZ-OC for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 09 Jun 2022 01:21:19 +0200 Original-Received: from localhost ([::1]:52800 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nz4zG-0006gC-7T for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 08 Jun 2022 19:21:18 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46776) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nz4z0-0006eJ-Cn for bug-gnu-emacs@gnu.org; Wed, 08 Jun 2022 19:21:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:50648) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nz4z0-0006bz-4L for bug-gnu-emacs@gnu.org; Wed, 08 Jun 2022 19:21:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nz4yz-0004pt-UC for bug-gnu-emacs@gnu.org; Wed, 08 Jun 2022 19:21:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 08 Jun 2022 23:21:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55696 X-GNU-PR-Package: emacs Original-Received: via spool by 55696-submit@debbugs.gnu.org id=B55696.165473042118513 (code B ref 55696); Wed, 08 Jun 2022 23:21:01 +0000 Original-Received: (at 55696) by debbugs.gnu.org; 8 Jun 2022 23:20:21 +0000 Original-Received: from localhost ([127.0.0.1]:44545 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nz4yK-0004oW-DH for submit@debbugs.gnu.org; Wed, 08 Jun 2022 19:20:21 -0400 Original-Received: from mail-pj1-f54.google.com ([209.85.216.54]:40572) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nz4yH-0004oC-PJ for 55696@debbugs.gnu.org; Wed, 08 Jun 2022 19:20:18 -0400 Original-Received: by mail-pj1-f54.google.com with SMTP id w13-20020a17090a780d00b001e8961b355dso8044375pjk.5 for <55696@debbugs.gnu.org>; Wed, 08 Jun 2022 16:20:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:mime-version :in-reply-to:content-language; bh=2p49smWS90sii+6Bw9VfRNQ3toTGCESov8wVmXW/Qmc=; b=Cj6NlNW4L1zlzuKohMjaXJuG4PDJ4IUKQiujMagh5AZYq8nGWkBEk/KGNa78tSw6EN TIkxMg7i5I9ej+is0rvVNya3PHuBpsbj09QLHWFI9Ublh6U0+f7+yhuuWGGSsNIocmAU JUYoGVsII6QaD/3GcJzRZAPC0WVjSLW0KILYNq8DLxp5A9jQGj9eC7mQ1o6uxiEwjiZu 2y+tLzDHkhsGDLJtAalRC5LjvFvyLD3tp7Ed6TjAEZVqF3nABXPNqHZTFG3KnWod92X+ BPL71DGYcSH5Q8ClCyeTdt8I3N5/2mPGHUu/+eM1fAoaVkvFTX7yKb6wZLSKqRalLpvU GFdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :mime-version:in-reply-to:content-language; bh=2p49smWS90sii+6Bw9VfRNQ3toTGCESov8wVmXW/Qmc=; b=XsDt2nWO8B2NTAXDQXHzx30HDr41Dfdt7+tMlc7C4ER32+hgCMVNHp+fddwmSXPiDa /drcjo1/AxGbMOYiUuddgGF3LeDwQb/Azxx8osWWKXL054pMcfBTqLNgYbG7PGOa9rhr w/K7/OVMya14udmpE5fNV0q3MBlvSnvswu5RMBaacBMGsOZeJ7dgYg0UMK2qftyrphz/ +UkFAHiteFEDLNpRdSK0mE4OYADO+7cb9sJolqfx7z/c6o4nqxDrsvd6HqG5v+W334cY 99mmZZDo4uShOh+Dvoo13lCnF3IIKTUlc6Ed/T8aIZ67040zN8U3Usz5AihUU6v6h/Ng PxOg== X-Gm-Message-State: AOAM5329S8yeiMROhVyNgtQ7wi0LpC8Z3iY2NxAuZnR61WzAD7k+IIue 7IZvEgUhyR+WHtsAYfMNcbQ= X-Google-Smtp-Source: ABdhPJy/ChpojeZCMxBPqpnSS0yVj5DgsV7/ZQMHgUtVrM4NZPPail2dUvZiPTLEM3aN+06C/KscTw== X-Received: by 2002:a17:902:e5ca:b0:164:1958:c84a with SMTP id u10-20020a170902e5ca00b001641958c84amr36219769plf.72.1654730411967; Wed, 08 Jun 2022 16:20:11 -0700 (PDT) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id a3-20020a170903100300b0015ea4173bd6sm15150384plb.195.2022.06.08.16.20.10 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 08 Jun 2022 16:20:11 -0700 (PDT) In-Reply-To: <2b86123e-76c1-ec0c-c767-7d821473e5e1@gmx.at> Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:233999 Archived-At: This is a multi-part message in MIME format. --------------272CDD1F49BC7A7C2991E00F Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit On 6/8/2022 1:07 AM, martin rudalics wrote: > > Fixed (and in the other function, too). > > Looks good to me.  In window.h writing > > enum window_body_unit >   { >     WINDOW_BODY_IN_CANONICAL_CHARS, >     WINDOW_BODY_IN_PIXELS, >     WINDOW_BODY_IN_REMAPPED_CHARS >   }; > > might prevent future ambiguities. Ok, done. --------------272CDD1F49BC7A7C2991E00F Content-Type: text/plain; charset=UTF-8; name="0001-Account-for-remapped-faces-in-COLUMNS-and-LINES-in-E.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Account-for-remapped-faces-in-COLUMNS-and-LINES-in-E.pa"; filename*1="tch" RnJvbSAyMzU2ZjU5MTY0NjA3YjE3YzgyODVhOGVjNzQyOWEzOTIzMWZlYmFiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFRodSwgMiBKdW4gMjAyMiAyMToxMjowNCAtMDcwMApTdWJqZWN0OiBbUEFU Q0hdIEFjY291bnQgZm9yIHJlbWFwcGVkIGZhY2VzIGluICRDT0xVTU5TIGFuZCAkTElORVMg aW4gRXNoZWxsCgoqIHNyYy93aW5kb3cuaCAod2luZG93X2JvZHlfdW5pdCk6IE5ldyBlbnVt Li4uCih3aW5kb3dfYm9keV93aWR0aCk6IC4uLiB1c2UgaXQuCgoqIHNyYy93aW5kb3cuYyAo d2luZG93X2JvZHlfdW5pdF9mcm9tX3N5bWJvbCk6IE5ldyBmdW5jdGlvbi4KKHdpbmRvd19i b2R5X2hlaWdodCwgd2luZG93X2JvZHlfd2lkdGgpOiBNYWtlIFBJWEVMV0lTRSBhCid3aW5k b3dfYm9keV91bml0Jy4KKHdpbmRvdy1ib2R5LWhlaWdodCwgd2luZG93LWJvZHktd2lkdGgp OiBBY2NlcHQgJ3JlbWFwJyBmb3IgUElYRUxXSVNFLgood2luZG93LWxpbmVzLXBpeGVsLWRp bWVuc2lvbnMsIHdpbmRvd19jaGFuZ2VfcmVjb3JkX3dpbmRvd3MpCihydW5fd2luZG93X2No YW5nZV9mdW5jdGlvbnMsIHJlc2l6ZV9mcmFtZV93aW5kb3dzLCBncm93X21pbmlfd2luZG93 KQooc2hyaW5rX21pbmlfd2luZG93LCBzY3JvbGwtbGVmdCwgc2Nyb2xsLXJpZ2h0KTogVXBk YXRlIGNhbGxzIHRvCid3aW5kb3dfYm9keV9oZWlnaHQnIGFuZCAnd2luZG93X2JvZHlfd2lk dGgnLgoKKiBzcmMvaW5kZW50LmMgKGNvbXB1dGVfbW90aW9uKTogVXBkYXRlIGNhbGxzIHRv ICd3aW5kb3dfYm9keV93aWR0aCcuCgoqIGxpc3AvZXNoZWxsL2VtLWxzLmVsIChlc2hlbGwt bHMtZmluZC1jb2x1bW4td2lkdGhzKQooZXNoZWxsLWxzLWZpbmQtY29sdW1uLWxlbmd0aHMp OiBVc2UgJ3dpbmRvdy1ib2R5LXdpZHRoJy4KCiogbGlzcC9lc2hlbGwvZXNoLXZhci5lbCAo ZXNoZWxsLXZhcmlhYmxlLWFsaWFzZXMtbGlzdCk6IFVzZQond2luZG93LWJvZHktd2lkdGgn IGFuZCAnd2luZG93LWJvZHktaGVpZ2h0Jy4KCiogdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFy LXRlc3RzLmVsIChlc2gtdmFyLXRlc3Qvd2luZG93LWhlaWdodCkKKGVzaC12YXItdGVzdC93 aW5kb3ctd2lkdGgpOiBSZW5hbWUgdG8uLi4KKGVzaC12YXItdGVzdC9saW5lcy12YXIsIGVz aC12YXItdGVzdC9jb2x1bW5zLXZhcik6IC4uLiBhbmQgdXBkYXRlCmV4cGVjdGVkIHZhbHVl LgoKKiBkb2MvbGlzcHJlZi93aW5kb3dzLnRleGkgKFdpbmRvdyBTaXplcyk6IERvY3VtZW50 IG5ldyBiZWhhdmlvciBvZgpQSVhFTFdJU0UgYXJndW1lbnQgZm9yICd3aW5kb3ctYm9keS13 aWR0aCcgYW5kICd3aW5kb3ctYm9keS1oZWlnaHQnLgoKKiBldGMvTkVXUzogQW5ub3VuY2Ug dGhpcyBjaGFuZ2UgKGJ1ZyM1NTY5NikuCi0tLQogZG9jL2xpc3ByZWYvd2luZG93cy50ZXhp ICAgICAgICAgIHwgIDM4ICsrKysrLS0tCiBldGMvTkVXUyAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDYgKysKIGxpc3AvZXNoZWxsL2VtLWxzLmVsICAgICAgICAgICAgICB8ICAg NCArLQogbGlzcC9lc2hlbGwvZXNoLXZhci5lbCAgICAgICAgICAgIHwgICA0ICstCiBzcmMv aW5kZW50LmMgICAgICAgICAgICAgICAgICAgICAgfCAgIDQgKy0KIHNyYy93aW5kb3cuYyAg ICAgICAgICAgICAgICAgICAgICB8IDE1MCArKysrKysrKysrKysrKysrKysrKystLS0tLS0t LS0KIHNyYy93aW5kb3cuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArLQogdGVzdC9s aXNwL2VzaGVsbC9lc2gtdmFyLXRlc3RzLmVsIHwgIDE2ICsrLS0KIDggZmlsZXMgY2hhbmdl ZCwgMTU2IGluc2VydGlvbnMoKyksIDc0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Rv Yy9saXNwcmVmL3dpbmRvd3MudGV4aSBiL2RvYy9saXNwcmVmL3dpbmRvd3MudGV4aQppbmRl eCAwZDI4NWIyYWQ0Li43MDRlZDMwMzY2IDEwMDY0NAotLS0gYS9kb2MvbGlzcHJlZi93aW5k b3dzLnRleGkKKysrIGIvZG9jL2xpc3ByZWYvd2luZG93cy50ZXhpCkBAIC04MjksMTQgKzgy OSwxOCBAQCBXaW5kb3cgU2l6ZXMKIEB2YXJ7d2luZG93fS4gIElmIEB2YXJ7d2luZG93fSBp cyBvbWl0dGVkIG9yIEBjb2Rle25pbH0sIGl0IGRlZmF1bHRzIHRvCiB0aGUgc2VsZWN0ZWQg d2luZG93OyBvdGhlcndpc2UgaXQgbXVzdCBiZSBhIGxpdmUgd2luZG93LgogCi1JZiB0aGUg b3B0aW9uYWwgYXJndW1lbnQgQHZhcntwaXhlbHdpc2V9IGlzIG5vbi1AY29kZXtuaWx9LCB0 aGlzCi1mdW5jdGlvbiByZXR1cm5zIHRoZSBib2R5IGhlaWdodCBvZiBAdmFye3dpbmRvd30g Y291bnRlZCBpbiBwaXhlbHMuCitUaGUgb3B0aW9uYWwgYXJndW1lbnQgQHZhcntwaXhlbHdp c2V9IGRlZmluZXMgdGhlIHVuaXRzIHRvIHVzZSBmb3IgdGhlCitoZWlnaHQuICBJZiBAY29k ZXtuaWx9LCByZXR1cm4gdGhlIGJvZHkgaGVpZ2h0IG9mIEB2YXJ7d2luZG93fSBpbgorY2hh cmFjdGVycywgcm91bmRlZCBkb3duIHRvIHRoZSBuZWFyZXN0IGludGVnZXIsIGlmIG5lY2Vz c2FyeS4gIFRoaXMKK21lYW5zIHRoYXQgaWYgYSBsaW5lIGF0IHRoZSBib3R0b20gb2YgdGhl IHRleHQgYXJlYSBpcyBvbmx5IHBhcnRpYWxseQordmlzaWJsZSwgdGhhdCBsaW5lIGlzIG5v dCBjb3VudGVkLiAgSXQgYWxzbyBtZWFucyB0aGF0IHRoZSBoZWlnaHQgb2YgYQord2luZG93 J3MgYm9keSBjYW4gbmV2ZXIgZXhjZWVkIGl0cyB0b3RhbCBoZWlnaHQgYXMgcmV0dXJuZWQg YnkKK0Bjb2Rle3dpbmRvdy10b3RhbC1oZWlnaHR9LgogCi1JZiBAdmFye3BpeGVsd2lzZX0g aXMgQGNvZGV7bmlsfSwgdGhlIHJldHVybiB2YWx1ZSBpcyByb3VuZGVkIGRvd24gdG8KLXRo ZSBuZWFyZXN0IGludGVnZXIsIGlmIG5lY2Vzc2FyeS4gIFRoaXMgbWVhbnMgdGhhdCBpZiBh IGxpbmUgYXQgdGhlCi1ib3R0b20gb2YgdGhlIHRleHQgYXJlYSBpcyBvbmx5IHBhcnRpYWxs eSB2aXNpYmxlLCB0aGF0IGxpbmUgaXMgbm90Ci1jb3VudGVkLiAgSXQgYWxzbyBtZWFucyB0 aGF0IHRoZSBoZWlnaHQgb2YgYSB3aW5kb3cncyBib2R5IGNhbiBuZXZlcgotZXhjZWVkIGl0 cyB0b3RhbCBoZWlnaHQgYXMgcmV0dXJuZWQgYnkgQGNvZGV7d2luZG93LXRvdGFsLWhlaWdo dH0uCitJZiBAdmFye3BpeGVsd2lzZX0gaXMgQGNvZGV7cmVtYXB9IGFuZCB0aGUgZGVmYXVs dCBmYWNlIGlzIHJlbWFwcGVkCisoQHB4cmVme0ZhY2UgUmVtYXBwaW5nfSksIHVzZSB0aGUg cmVtYXBwZWQgZmFjZSB0byBkZXRlcm1pbmUgdGhlCitjaGFyYWN0ZXIgaGVpZ2h0LiAgRm9y IGFueSBvdGhlciBub24tQGNvZGV7bmlsfSB2YWx1ZSwgcmV0dXJuIHRoZQoraGVpZ2h0IGlu IHBpeGVscy4KIEBlbmQgZGVmdW4KIAogQGNpbmRleCB3aW5kb3cgYm9keSB3aWR0aApAQCAt ODU3LDE0ICs4NjEsMTggQEAgV2luZG93IFNpemVzCiBAdmFye3dpbmRvd30uICBJZiBAdmFy e3dpbmRvd30gaXMgb21pdHRlZCBvciBAY29kZXtuaWx9LCBpdCBkZWZhdWx0cyB0bwogdGhl IHNlbGVjdGVkIHdpbmRvdzsgb3RoZXJ3aXNlIGl0IG11c3QgYmUgYSBsaXZlIHdpbmRvdy4K IAotSWYgdGhlIG9wdGlvbmFsIGFyZ3VtZW50IEB2YXJ7cGl4ZWx3aXNlfSBpcyBub24tQGNv ZGV7bmlsfSwgdGhpcwotZnVuY3Rpb24gcmV0dXJucyB0aGUgYm9keSB3aWR0aCBvZiBAdmFy e3dpbmRvd30gaW4gdW5pdHMgb2YgcGl4ZWxzLgotCi1JZiBAdmFye3BpeGVsd2lzZX0gaXMg QGNvZGV7bmlsfSwgdGhlIHJldHVybiB2YWx1ZSBpcyByb3VuZGVkIGRvd24gdG8KLXRoZSBu ZWFyZXN0IGludGVnZXIsIGlmIG5lY2Vzc2FyeS4gIFRoaXMgbWVhbnMgdGhhdCBpZiBhIGNv bHVtbiBvbiB0aGUKLXJpZ2h0IG9mIHRoZSB0ZXh0IGFyZWEgaXMgb25seSBwYXJ0aWFsbHkg dmlzaWJsZSwgdGhhdCBjb2x1bW4gaXMgbm90Ci1jb3VudGVkLiAgSXQgYWxzbyBtZWFucyB0 aGF0IHRoZSB3aWR0aCBvZiBhIHdpbmRvdydzIGJvZHkgY2FuIG5ldmVyCi1leGNlZWQgaXRz IHRvdGFsIHdpZHRoIGFzIHJldHVybmVkIGJ5IEBjb2Rle3dpbmRvdy10b3RhbC13aWR0aH0u CitUaGUgb3B0aW9uYWwgYXJndW1lbnQgQHZhcntwaXhlbHdpc2V9IGRlZmluZXMgdGhlIHVu aXRzIHRvIHVzZSBmb3IgdGhlCit3aWR0aC4gIElmIEBjb2Rle25pbH0sIHJldHVybiB0aGUg Ym9keSB3aWR0aCBvZiBAdmFye3dpbmRvd30gaW4KK2NoYXJhY3RlcnMsIHJvdW5kZWQgZG93 biB0byB0aGUgbmVhcmVzdCBpbnRlZ2VyLCBpZiBuZWNlc3NhcnkuICBUaGlzCittZWFucyB0 aGF0IGlmIGEgY29sdW1uIG9uIHRoZSByaWdodCBvZiB0aGUgdGV4dCBhcmVhIGlzIG9ubHkg cGFydGlhbGx5Cit2aXNpYmxlLCB0aGF0IGNvbHVtbiBpcyBub3QgY291bnRlZC4gIEl0IGFs c28gbWVhbnMgdGhhdCB0aGUgd2lkdGggb2YKK2Egd2luZG93J3MgYm9keSBjYW4gbmV2ZXIg ZXhjZWVkIGl0cyB0b3RhbCB3aWR0aCBhcyByZXR1cm5lZCBieQorQGNvZGV7d2luZG93LXRv dGFsLXdpZHRofS4KKworSWYgQHZhcntwaXhlbHdpc2V9IGlzIEBjb2Rle3JlbWFwfSBhbmQg dGhlIGRlZmF1bHQgZmFjZSBpcyByZW1hcHBlZAorKEBweHJlZntGYWNlIFJlbWFwcGluZ30p LCB1c2UgdGhlIHJlbWFwcGVkIGZhY2UgdG8gZGV0ZXJtaW5lIHRoZQorY2hhcmFjdGVyIHdp ZHRoLiAgRm9yIGFueSBvdGhlciBub24tQGNvZGV7bmlsfSB2YWx1ZSwgcmV0dXJuIHRoZSB3 aWR0aAoraW4gcGl4ZWxzLgogQGVuZCBkZWZ1bgogCiBAY2luZGV4IHdpbmRvdyBib2R5IHNp emUKZGlmZiAtLWdpdCBhL2V0Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggMzg3MGU5MzdkZi4u NzlmOTlkZDgyMiAxMDA2NDQKLS0tIGEvZXRjL05FV1MKKysrIGIvZXRjL05FV1MKQEAgLTIz OTgsNiArMjM5OCwxMiBAQCBkaW1lbnNpb25zLgogU3BlY2lmeWluZyBhIGNvbnMgYXMgdGhl IEZST00gYXJndW1lbnQgYWxsb3dzIHRvIHN0YXJ0IG1lYXN1cmluZyB0ZXh0CiBmcm9tIGEg c3BlY2lmaWVkIGFtb3VudCBvZiBwaXhlbHMgYWJvdmUgb3IgYmVsb3cgYSBwb3NpdGlvbi4K IAorKysrCisqKiAnd2luZG93LWJvZHktd2lkdGgnIGFuZCAnd2luZG93LWJvZHktaGVpZ2h0 JyBjYW4gdXNlIHJlbWFwcGVkIGZhY2VzLgorU3BlY2lmeWluZyAncmVtYXAnIGFzIHRoZSBQ SVhFTFdJU0UgYXJndW1lbnQgbm93IGNoZWNrcyBpZiB0aGUgZGVmYXVsdAorZmFjZSB3YXMg cmVtYXBwZWQsIGFuZCBpZiBzbywgdXNlcyB0aGUgcmVtYXBwZWQgZmFjZSB0byBkZXRlcm1p bmUgdGhlCitjaGFyYWN0ZXIgd2lkdGgvaGVpZ2h0LgorCiArKysKICoqICdzZXQtd2luZG93 LXZzY3JvbGwnIG5vdyBhY2NlcHRzIGEgbmV3IGFyZ3VtZW50IFBSRVNFUlZFLVZTQ1JPTEwt UC4KIFRoaXMgbWVhbnMgdGhlIHZzY3JvbGwgd2lsbCBub3QgYmUgcmVzZXQgd2hlbiBzZXQg b24gYSB3aW5kb3cgdGhhdCBpcwpkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwvZW0tbHMuZWwg Yi9saXNwL2VzaGVsbC9lbS1scy5lbAppbmRleCA4NzQ1OTFkMjUwLi5iZWJiMGQ4MWI1IDEw MDY0NAotLS0gYS9saXNwL2VzaGVsbC9lbS1scy5lbAorKysgYi9saXNwL2VzaGVsbC9lbS1s cy5lbApAQCAtODAwLDcgKzgwMCw3IEBAIGVzaGVsbC1scy1maW5kLWNvbHVtbi13aWR0aHMK ICAgICAgICAgICAgICAoKyAyIChsZW5ndGggKGNhciBmaWxlKSkpKQogCSAgIGZpbGVzKSkK IAkgOzsgbXVzdCBhY2NvdW50IGZvciB0aGUgYWRkZWQgc3BhY2UuLi4KLQkgKG1heC13aWR0 aCAoKyAod2luZG93LXdpZHRoKSAyKSkKKwkgKG1heC13aWR0aCAoKyAod2luZG93LWJvZHkt d2lkdGggbmlsICdyZW1hcCkgMikpCiAJIChiZXN0LXdpZHRoIDApCiAJIGNvbC13aWR0aHMp CiAKQEAgLTg0NSw3ICs4NDUsNyBAQCBlc2hlbGwtbHMtZmluZC1jb2x1bW4tbGVuZ3Rocwog ICAgICAgICAgICAobGFtYmRhIChmaWxlKQogICAgICAgICAgICAgICgrIDIgKGxlbmd0aCAo Y2FyIGZpbGUpKSkpCiAJICAgZmlsZXMpKQotCSAobWF4LXdpZHRoICgrICh3aW5kb3ctd2lk dGgpIDIpKQorCSAobWF4LXdpZHRoICgrICh3aW5kb3ctYm9keS13aWR0aCBuaWwgJ3JlbWFw KSAyKSkKIAkgY29sLXdpZHRocwogCSBjb2x3KQogCmRpZmYgLS1naXQgYS9saXNwL2VzaGVs bC9lc2gtdmFyLmVsIGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbAppbmRleCAxODZmNjM1OGJj Li5hNTRiZWUxYTYxIDEwMDY0NAotLS0gYS9saXNwL2VzaGVsbC9lc2gtdmFyLmVsCisrKyBi L2xpc3AvZXNoZWxsL2VzaC12YXIuZWwKQEAgLTE0OSw4ICsxNDksOCBAQCBlc2hlbGwtdmFy aWFibGUtbmFtZS1yZWdleHAKIAogKGRlZmN1c3RvbSBlc2hlbGwtdmFyaWFibGUtYWxpYXNl cy1saXN0CiAgIGAoOzsgZm9yIGVzaGVsbC5lbAotICAgICgiQ09MVU1OUyIgLChsYW1iZGEg KF9pbmRpY2VzKSAod2luZG93LXdpZHRoKSkgdCkKLSAgICAoIkxJTkVTIiAsKGxhbWJkYSAo X2luZGljZXMpICh3aW5kb3ctaGVpZ2h0KSkgdCkKKyAgICAoIkNPTFVNTlMiICwobGFtYmRh IChfaW5kaWNlcykgKHdpbmRvdy1ib2R5LXdpZHRoIG5pbCAncmVtYXApKSB0KQorICAgICgi TElORVMiICwobGFtYmRhIChfaW5kaWNlcykgKHdpbmRvdy1ib2R5LWhlaWdodCBuaWwgJ3Jl bWFwKSkgdCkKIAogICAgIDs7IGZvciBlc2hlbGwtY21kLmVsCiAgICAgKCJfIiAsKGxhbWJk YSAoaW5kaWNlcykKZGlmZiAtLWdpdCBhL3NyYy9pbmRlbnQuYyBiL3NyYy9pbmRlbnQuYwpp bmRleCBhY2JiOWRjOTcyLi41MWY2ZjQxNGRlIDEwMDY0NAotLS0gYS9zcmMvaW5kZW50LmMK KysrIGIvc3JjL2luZGVudC5jCkBAIC0xMjA0LDcgKzEyMDQsNyBAQCBjb21wdXRlX21vdGlv biAocHRyZGlmZl90IGZyb20sIHB0cmRpZmZfdCBmcm9tYnl0ZSwgRU1BQ1NfSU5UIGZyb212 cG9zLAogICAvKiBOZWdhdGl2ZSB3aWR0aCBtZWFucyB1c2UgYWxsIGF2YWlsYWJsZSB0ZXh0 IGNvbHVtbnMuICAqLwogICBpZiAod2lkdGggPCAwKQogICAgIHsKLSAgICAgIHdpZHRoID0g d2luZG93X2JvZHlfd2lkdGggKHdpbiwgMCk7CisgICAgICB3aWR0aCA9IHdpbmRvd19ib2R5 X3dpZHRoICh3aW4sIFdJTkRPV19CT0RZX0lOX0NBTk9OSUNBTF9DSEFSUyk7CiAgICAgICAv KiBXZSBtdXN0IG1ha2Ugcm9vbSBmb3IgY29udGludWF0aW9uIG1hcmtzIGlmIHdlIGRvbid0 IGhhdmUgZnJpbmdlcy4gICovCiAjaWZkZWYgSEFWRV9XSU5ET1dfU1lTVEVNCiAgICAgICBp ZiAoIUZSQU1FX1dJTkRPV19QIChYRlJBTUUgKHdpbi0+ZnJhbWUpKSkKQEAgLTE4MTQsNyAr MTgxNCw3IEBAIERFRlVOICgiY29tcHV0ZS1tb3Rpb24iLCBGY29tcHV0ZV9tb3Rpb24sIFNj b21wdXRlX21vdGlvbiwgNywgNywgMCwKIAkJCSA/IHdpbmRvd19pbnRlcm5hbF9oZWlnaHQg KHcpCiAJCQkgOiBYRklYTlVNIChYQ0RSICh0b3BvcykpKSwKIAkJCShOSUxQICh0b3BvcykK LQkJCSA/ICh3aW5kb3dfYm9keV93aWR0aCAodywgMCkKKwkJCSA/ICh3aW5kb3dfYm9keV93 aWR0aCAodywgV0lORE9XX0JPRFlfSU5fQ0FOT05JQ0FMX0NIQVJTKQogCQkJICAgIC0gKAog I2lmZGVmIEhBVkVfV0lORE9XX1NZU1RFTQogCQkJICAgICAgIEZSQU1FX1dJTkRPV19QIChY RlJBTUUgKHctPmZyYW1lKSkgPyAwIDoKZGlmZiAtLWdpdCBhL3NyYy93aW5kb3cuYyBiL3Ny Yy93aW5kb3cuYwppbmRleCBlYmExMzkwZmVkLi5lNTY2NmNlMzhlIDEwMDY0NAotLS0gYS9z cmMvd2luZG93LmMKKysrIGIvc3JjL3dpbmRvdy5jCkBAIC0xMDE0LDExICsxMDE0LDIwIEBA IERFRlVOICgid2luZG93LXRvcC1saW5lIiwgRndpbmRvd190b3BfbGluZSwgU3dpbmRvd190 b3BfbGluZSwgMCwgMSwgMCwKICAgcmV0dXJuIG1ha2VfZml4bnVtIChkZWNvZGVfdmFsaWRf d2luZG93ICh3aW5kb3cpLT50b3BfbGluZSk7CiB9CiAKK3N0YXRpYyBlbnVtIHdpbmRvd19i b2R5X3VuaXQKK3dpbmRvd19ib2R5X3VuaXRfZnJvbV9zeW1ib2wgKExpc3BfT2JqZWN0IHVu aXQpCit7CisgIHJldHVybgorICAgICh1bml0ID09IFFyZW1hcCA/IFdJTkRPV19CT0RZX0lO X1JFTUFQUEVEX0NIQVJTCisgICAgIDogTklMUCAodW5pdCkgPyBXSU5ET1dfQk9EWV9JTl9D QU5PTklDQUxfQ0hBUlMKKyAgICAgOiBXSU5ET1dfQk9EWV9JTl9QSVhFTFMpOworfQorCiAv KiBSZXR1cm4gdGhlIG51bWJlciBvZiBsaW5lcy9waXhlbHMgb2YgVydzIGJvZHkuICBEb24n dCBjb3VudCBhbnkgbW9kZQogICAgb3IgaGVhZGVyIGxpbmUgb3IgaG9yaXpvbnRhbCBkaXZp ZGVyIG9mIFcuICBSb3VuZHMgZG93biB0byBuZWFyZXN0CiAgICBpbnRlZ2VyIHdoZW4gbm90 IHdvcmtpbmcgcGl4ZWx3aXNlLiAqLwogc3RhdGljIGludAotd2luZG93X2JvZHlfaGVpZ2h0 IChzdHJ1Y3Qgd2luZG93ICp3LCBib29sIHBpeGVsd2lzZSkKK3dpbmRvd19ib2R5X2hlaWdo dCAoc3RydWN0IHdpbmRvdyAqdywgZW51bSB3aW5kb3dfYm9keV91bml0IHBpeGVsd2lzZSkK IHsKICAgaW50IGhlaWdodCA9ICh3LT5waXhlbF9oZWlnaHQKIAkJLSBXSU5ET1dfVEFCX0xJ TkVfSEVJR0hUICh3KQpAQCAtMTAyOSwxMSArMTAzOCwyNyBAQCB3aW5kb3dfYm9keV9oZWln aHQgKHN0cnVjdCB3aW5kb3cgKncsIGJvb2wgcGl4ZWx3aXNlKQogCQktIFdJTkRPV19NT0RF X0xJTkVfSEVJR0hUICh3KQogCQktIFdJTkRPV19CT1RUT01fRElWSURFUl9XSURUSCAodykp OwogCisgIGludCBkZW5vbSA9IDE7CisgIGlmIChwaXhlbHdpc2UgPT0gV0lORE9XX0JPRFlf SU5fUkVNQVBQRURfQ0hBUlMpCisgICAgeworICAgICAgaWYgKCFOSUxQIChWZmFjZV9yZW1h cHBpbmdfYWxpc3QpKQorCXsKKwkgIHN0cnVjdCBmcmFtZSAqZiA9IFhGUkFNRSAoV0lORE9X X0ZSQU1FICh3KSk7CisJICBpbnQgZmFjZV9pZCA9IGxvb2t1cF9uYW1lZF9mYWNlIChOVUxM LCBmLCBRZGVmYXVsdCwgdHJ1ZSk7CisJICBzdHJ1Y3QgZmFjZSAqZmFjZSA9IEZBQ0VfRlJP TV9JRF9PUl9OVUxMIChmLCBmYWNlX2lkKTsKKwkgIGlmIChmYWNlICYmIGZhY2UtPmZvbnQg JiYgZmFjZS0+Zm9udC0+aGVpZ2h0KQorCSAgICBkZW5vbSA9IGZhY2UtPmZvbnQtPmhlaWdo dDsKKwl9CisgICAgICAvKiBGb3IgcGVyZm9ybWFuY2UsIHVzZSBjYW5vbmljYWwgY2hhcnMg aWYgbm8gZmFjZSByZW1hcHBpbmcuICAqLworICAgICAgZWxzZQorCXBpeGVsd2lzZSA9IFdJ TkRPV19CT0RZX0lOX0NBTk9OSUNBTF9DSEFSUzsKKyAgICB9CisKKyAgaWYgKHBpeGVsd2lz ZSA9PSBXSU5ET1dfQk9EWV9JTl9DQU5PTklDQUxfQ0hBUlMpCisgICAgZGVub20gPSBGUkFN RV9MSU5FX0hFSUdIVCAoV0lORE9XX1hGUkFNRSAodykpOworCiAgIC8qIERvbid0IHJldHVy biBhIG5lZ2F0aXZlIHZhbHVlLiAgKi8KLSAgcmV0dXJuIG1heCAocGl4ZWx3aXNlCi0JICAg ICAgPyBoZWlnaHQKLQkgICAgICA6IGhlaWdodCAvIEZSQU1FX0xJTkVfSEVJR0hUIChXSU5E T1dfWEZSQU1FICh3KSksCi0JICAgICAgMCk7CisgIHJldHVybiBtYXggKGhlaWdodCAvIGRl bm9tLCAwKTsKIH0KIAogLyogUmV0dXJuIHRoZSBudW1iZXIgb2YgY29sdW1ucy9waXhlbHMg b2YgVydzIGJvZHkuICBEb24ndCBjb3VudCBjb2x1bW5zCkBAIC0xMDQyLDcgKzEwNjcsNyBA QCB3aW5kb3dfYm9keV9oZWlnaHQgKHN0cnVjdCB3aW5kb3cgKncsIGJvb2wgcGl4ZWx3aXNl KQogICAgZnJpbmdlcyBlaXRoZXIuICBSb3VuZCBkb3duIHRvIG5lYXJlc3QgaW50ZWdlciB3 aGVuIG5vdCB3b3JraW5nCiAgICBwaXhlbHdpc2UuICAqLwogaW50Ci13aW5kb3dfYm9keV93 aWR0aCAoc3RydWN0IHdpbmRvdyAqdywgYm9vbCBwaXhlbHdpc2UpCit3aW5kb3dfYm9keV93 aWR0aCAoc3RydWN0IHdpbmRvdyAqdywgZW51bSB3aW5kb3dfYm9keV91bml0IHBpeGVsd2lz ZSkKIHsKICAgc3RydWN0IGZyYW1lICpmID0gWEZSQU1FIChXSU5ET1dfRlJBTUUgKHcpKTsK IApAQCAtMTA1OSwyNCArMTA4NCw0NiBAQCB3aW5kb3dfYm9keV93aWR0aCAoc3RydWN0IHdp bmRvdyAqdywgYm9vbCBwaXhlbHdpc2UpCiAJCSAgID8gV0lORE9XX0ZSSU5HRVNfV0lEVEgg KHcpCiAJCSAgIDogMCkpOwogCisgIGludCBkZW5vbSA9IDE7CisgIGlmIChwaXhlbHdpc2Ug PT0gV0lORE9XX0JPRFlfSU5fUkVNQVBQRURfQ0hBUlMpCisgICAgeworICAgICAgaWYgKCFO SUxQIChWZmFjZV9yZW1hcHBpbmdfYWxpc3QpKQorCXsKKwkgIGludCBmYWNlX2lkID0gbG9v a3VwX25hbWVkX2ZhY2UgKE5VTEwsIGYsIFFkZWZhdWx0LCB0cnVlKTsKKwkgIHN0cnVjdCBm YWNlICpmYWNlID0gRkFDRV9GUk9NX0lEX09SX05VTEwgKGYsIGZhY2VfaWQpOworCSAgaWYg KGZhY2UgJiYgZmFjZS0+Zm9udCkKKwkgICAgeworCSAgICAgIGlmIChmYWNlLT5mb250LT5h dmVyYWdlX3dpZHRoKQorCQlkZW5vbSA9IGZhY2UtPmZvbnQtPmF2ZXJhZ2Vfd2lkdGg7CisJ ICAgICAgZWxzZSBpZiAoZmFjZS0+Zm9udC0+c3BhY2Vfd2lkdGgpCisJCWRlbm9tID0gZmFj ZS0+Zm9udC0+c3BhY2Vfd2lkdGg7CisJICAgIH0KKwl9CisgICAgICAvKiBGb3IgcGVyZm9y bWFuY2UsIHVzZSBjYW5vbmljYWwgY2hhcnMgaWYgbm8gZmFjZSByZW1hcHBpbmcuICAqLwor ICAgICAgZWxzZQorCXBpeGVsd2lzZSA9IFdJTkRPV19CT0RZX0lOX0NBTk9OSUNBTF9DSEFS UzsKKyAgICB9CisKKyAgaWYgKHBpeGVsd2lzZSA9PSBXSU5ET1dfQk9EWV9JTl9DQU5PTklD QUxfQ0hBUlMpCisgICAgZGVub20gPSBGUkFNRV9DT0xVTU5fV0lEVEggKFdJTkRPV19YRlJB TUUgKHcpKTsKKwogICAvKiBEb24ndCByZXR1cm4gYSBuZWdhdGl2ZSB2YWx1ZS4gICovCi0g IHJldHVybiBtYXggKHBpeGVsd2lzZQotCSAgICAgID8gd2lkdGgKLQkgICAgICA6IHdpZHRo IC8gRlJBTUVfQ09MVU1OX1dJRFRIIChXSU5ET1dfWEZSQU1FICh3KSksCi0JICAgICAgMCk7 CisgIHJldHVybiBtYXggKHdpZHRoIC8gZGVub20sIDApOwogfQogCiBERUZVTiAoIndpbmRv dy1ib2R5LXdpZHRoIiwgRndpbmRvd19ib2R5X3dpZHRoLCBTd2luZG93X2JvZHlfd2lkdGgs IDAsIDIsIDAsCiAgICAgICAgZG9jOiAvKiBSZXR1cm4gdGhlIHdpZHRoIG9mIFdJTkRPVydz IHRleHQgYXJlYS4KLVdJTkRPVyBtdXN0IGJlIGEgbGl2ZSB3aW5kb3cgYW5kIGRlZmF1bHRz IHRvIHRoZSBzZWxlY3RlZCBvbmUuICBPcHRpb25hbAotYXJndW1lbnQgUElYRUxXSVNFIG5v bi1uaWwgbWVhbnMgcmV0dXJuIHRoZSB3aWR0aCBpbiBwaXhlbHMuICBUaGUgcmV0dXJuCi12 YWx1ZSBkb2VzIG5vdCBpbmNsdWRlIGFueSB2ZXJ0aWNhbCBkaXZpZGVycywgZnJpbmdlcyBv ciBtYXJnaW5hbCBhcmVhcywKLW9yIHNjcm9sbCBiYXJzLgorV0lORE9XIG11c3QgYmUgYSBs aXZlIHdpbmRvdyBhbmQgZGVmYXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4gIFRoZQorcmV0 dXJuIHZhbHVlIGRvZXMgbm90IGluY2x1ZGUgYW55IHZlcnRpY2FsIGRpdmlkZXJzLCBmcmlu Z2VzIG9yCittYXJnaW5hbCBhcmVhcywgb3Igc2Nyb2xsIGJhcnMuCiAKLUlmIFBJWEVMV0lT RSBpcyBuaWwsIHJldHVybiB0aGUgbGFyZ2VzdCBpbnRlZ2VyIHNtYWxsZXIgdGhhbiBXSU5E T1cncwotcGl4ZWwgd2lkdGggZGl2aWRlZCBieSB0aGUgY2hhcmFjdGVyIHdpZHRoIG9mIFdJ TkRPVydzIGZyYW1lLiAgVGhpcwotbWVhbnMgdGhhdCBpZiBhIGNvbHVtbiBhdCB0aGUgcmln aHQgb2YgdGhlIHRleHQgYXJlYSBpcyBvbmx5IHBhcnRpYWxseQotdmlzaWJsZSwgdGhhdCBj b2x1bW4gaXMgbm90IGNvdW50ZWQuCitUaGUgb3B0aW9uYWwgYXJndW1lbnQgUElYRUxXSVNF IGRlZmluZXMgdGhlIHVuaXRzIHRvIHVzZSBmb3IgdGhlCit3aWR0aC4gIElmIG5pbCwgcmV0 dXJuIHRoZSBsYXJnZXN0IGludGVnZXIgc21hbGxlciB0aGFuIFdJTkRPVydzIHBpeGVsCit3 aWR0aCBpbiB1bml0cyBvZiB0aGUgY2hhcmFjdGVyIHdpZHRoIG9mIFdJTkRPVydzIGZyYW1l LiAgSWYgUElYRUxXSVNFCitpcyBgcmVtYXAnIGFuZCB0aGUgZGVmYXVsdCBmYWNlIGlzIHJl bWFwcGVkIChzZWUKK2BmYWNlLXJlbWFwcGluZy1hbGlzdCcpLCB1c2UgdGhlIHJlbWFwcGVk IGZhY2UgdG8gZGV0ZXJtaW5lIHRoZQorY2hhcmFjdGVyIHdpZHRoLiAgRm9yIGFueSBvdGhl ciBub24tbmlsIHZhbHVlLCByZXR1cm4gdGhlIHdpZHRoIGluCitwaXhlbHMuCiAKIE5vdGUg dGhhdCB0aGUgcmV0dXJuZWQgdmFsdWUgaW5jbHVkZXMgdGhlIGNvbHVtbiByZXNlcnZlZCBm b3IgdGhlCiBjb250aW51YXRpb24gZ2x5cGguCkBAIC0xMDg0LDI1ICsxMTMxLDI5IEBAIERF RlVOICgid2luZG93LWJvZHktd2lkdGgiLCBGd2luZG93X2JvZHlfd2lkdGgsIFN3aW5kb3df Ym9keV93aWR0aCwgMCwgMiwgMCwKIEFsc28gc2VlIGB3aW5kb3ctbWF4LWNoYXJzLXBlci1s aW5lJy4gICovKQogICAoTGlzcF9PYmplY3Qgd2luZG93LCBMaXNwX09iamVjdCBwaXhlbHdp c2UpCiB7Ci0gIHJldHVybiBtYWtlX2ZpeG51bSAod2luZG93X2JvZHlfd2lkdGggKGRlY29k ZV9saXZlX3dpbmRvdyAod2luZG93KSwKLQkJCQkJICFOSUxQIChwaXhlbHdpc2UpKSk7Cisg IHJldHVybiAobWFrZV9maXhudW0KKwkgICh3aW5kb3dfYm9keV93aWR0aCAoZGVjb2RlX2xp dmVfd2luZG93ICh3aW5kb3cpLAorCQkJICAgICAgd2luZG93X2JvZHlfdW5pdF9mcm9tX3N5 bWJvbCAocGl4ZWx3aXNlKSkpKTsKIH0KIAogREVGVU4gKCJ3aW5kb3ctYm9keS1oZWlnaHQi LCBGd2luZG93X2JvZHlfaGVpZ2h0LCBTd2luZG93X2JvZHlfaGVpZ2h0LCAwLCAyLCAwLAog ICAgICAgIGRvYzogLyogUmV0dXJuIHRoZSBoZWlnaHQgb2YgV0lORE9XJ3MgdGV4dCBhcmVh LgotV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQgZGVmYXVsdHMgdG8gdGhlIHNl bGVjdGVkIG9uZS4gIE9wdGlvbmFsCi1hcmd1bWVudCBQSVhFTFdJU0Ugbm9uLW5pbCBtZWFu cyByZXR1cm4gdGhlIGhlaWdodCBvZiBXSU5ET1cncyB0ZXh0IGFyZWEKLWluIHBpeGVscy4g IFRoZSByZXR1cm4gdmFsdWUgZG9lcyBub3QgaW5jbHVkZSB0aGUgbW9kZSBsaW5lIG9yIGhl YWRlcgotbGluZSBvciBhbnkgaG9yaXpvbnRhbCBkaXZpZGVyLgotCi1JZiBQSVhFTFdJU0Ug aXMgbmlsLCByZXR1cm4gdGhlIGxhcmdlc3QgaW50ZWdlciBzbWFsbGVyIHRoYW4gV0lORE9X J3MKLXBpeGVsIGhlaWdodCBkaXZpZGVkIGJ5IHRoZSBjaGFyYWN0ZXIgaGVpZ2h0IG9mIFdJ TkRPVydzIGZyYW1lLiAgVGhpcwotbWVhbnMgdGhhdCBpZiBhIGxpbmUgYXQgdGhlIGJvdHRv bSBvZiB0aGUgdGV4dCBhcmVhIGlzIG9ubHkgcGFydGlhbGx5Ci12aXNpYmxlLCB0aGF0IGxp bmUgaXMgbm90IGNvdW50ZWQuICAqLykKK1dJTkRPVyBtdXN0IGJlIGEgbGl2ZSB3aW5kb3cg YW5kIGRlZmF1bHRzIHRvIHRoZSBzZWxlY3RlZCBvbmUuICBUaGUKK3JldHVybiB2YWx1ZSBk b2VzIG5vdCBpbmNsdWRlIHRoZSBtb2RlIGxpbmUgb3IgaGVhZGVyIGxpbmUgb3IgYW55Cito b3Jpem9udGFsIGRpdmlkZXIuCisKK1RoZSBvcHRpb25hbCBhcmd1bWVudCBQSVhFTFdJU0Ug ZGVmaW5lcyB0aGUgdW5pdHMgdG8gdXNlIGZvciB0aGUKK2hlaWdodC4gIElmIG5pbCwgcmV0 dXJuIHRoZSBsYXJnZXN0IGludGVnZXIgc21hbGxlciB0aGFuIFdJTkRPVydzCitwaXhlbCBo ZWlnaHQgaW4gdW5pdHMgb2YgdGhlIGNoYXJhY3RlciBoZWlnaHQgb2YgV0lORE9XJ3MgZnJh bWUuICBJZgorUElYRUxXSVNFIGlzIGByZW1hcCcgYW5kIHRoZSBkZWZhdWx0IGZhY2UgaXMg cmVtYXBwZWQgKHNlZQorYGZhY2UtcmVtYXBwaW5nLWFsaXN0JyksIHVzZSB0aGUgcmVtYXBw ZWQgZmFjZSB0byBkZXRlcm1pbmUgdGhlCitjaGFyYWN0ZXIgaGVpZ2h0LiAgRm9yIGFueSBv dGhlciBub24tbmlsIHZhbHVlLCByZXR1cm4gdGhlIGhlaWdodCBpbgorcGl4ZWxzLiAgKi8p CiAgIChMaXNwX09iamVjdCB3aW5kb3csIExpc3BfT2JqZWN0IHBpeGVsd2lzZSkKIHsKLSAg cmV0dXJuIG1ha2VfZml4bnVtICh3aW5kb3dfYm9keV9oZWlnaHQgKGRlY29kZV9saXZlX3dp bmRvdyAod2luZG93KSwKLQkJCQkJICAhTklMUCAocGl4ZWx3aXNlKSkpOworICByZXR1cm4g KG1ha2VfZml4bnVtCisJICAod2luZG93X2JvZHlfaGVpZ2h0IChkZWNvZGVfbGl2ZV93aW5k b3cgKHdpbmRvdyksCisJCQkgICAgICAgd2luZG93X2JvZHlfdW5pdF9mcm9tX3N5bWJvbCAo cGl4ZWx3aXNlKSkpKTsKIH0KIAogREVGVU4gKCJ3aW5kb3ctb2xkLWJvZHktcGl4ZWwtd2lk dGgiLApAQCAtMjEyNCw3ICsyMTc1LDggQEAgREVGVU4gKCJ3aW5kb3ctbGluZXMtcGl4ZWwt ZGltZW5zaW9ucyIsIEZ3aW5kb3dfbGluZXNfcGl4ZWxfZGltZW5zaW9ucywgU3dpbmRvd18K ICAgc3RydWN0IGdseXBoX3JvdyAqcm93LCAqZW5kX3JvdzsKICAgaW50IG1heF95ID0gTklM UCAoYm9keSkgPyBXSU5ET1dfUElYRUxfSEVJR0hUICh3KSA6IHdpbmRvd190ZXh0X2JvdHRv bV95ICh3KTsKICAgTGlzcF9PYmplY3Qgcm93cyA9IFFuaWw7Ci0gIGludCB3aW5kb3dfd2lk dGggPSBOSUxQIChib2R5KSA/IHctPnBpeGVsX3dpZHRoIDogd2luZG93X2JvZHlfd2lkdGgg KHcsIHRydWUpOworICBpbnQgd2luZG93X3dpZHRoID0gTklMUCAoYm9keSkKKyAgICA/IHct PnBpeGVsX3dpZHRoIDogd2luZG93X2JvZHlfd2lkdGggKHcsIFdJTkRPV19CT0RZX0lOX1BJ WEVMUyk7CiAgIGludCB0YWJfbGluZV9oZWlnaHQgPSBXSU5ET1dfVEFCX0xJTkVfSEVJR0hU ICh3KTsKICAgaW50IGhlYWRlcl9saW5lX2hlaWdodCA9IFdJTkRPV19IRUFERVJfTElORV9I RUlHSFQgKHcpOwogICBpbnQgc3VidHJhY3QgPSBOSUxQIChib2R5KSA/IDAgOiAodGFiX2xp bmVfaGVpZ2h0ICsgaGVhZGVyX2xpbmVfaGVpZ2h0KTsKQEAgLTM2NTcsOCArMzcwOSwxMCBA QCB3aW5kb3dfY2hhbmdlX3JlY29yZF93aW5kb3dzIChMaXNwX09iamVjdCB3aW5kb3csIGlu dCBzdGFtcCwgcHRyZGlmZl90IG51bWJlcikKIAkgIHdzZXRfb2xkX2J1ZmZlciAodywgdy0+ Y29udGVudHMpOwogCSAgdy0+b2xkX3BpeGVsX3dpZHRoID0gdy0+cGl4ZWxfd2lkdGg7CiAJ ICB3LT5vbGRfcGl4ZWxfaGVpZ2h0ID0gdy0+cGl4ZWxfaGVpZ2h0OwotCSAgdy0+b2xkX2Jv ZHlfcGl4ZWxfd2lkdGggPSB3aW5kb3dfYm9keV93aWR0aCAodywgdHJ1ZSk7Ci0JICB3LT5v bGRfYm9keV9waXhlbF9oZWlnaHQgPSB3aW5kb3dfYm9keV9oZWlnaHQgKHcsIHRydWUpOwor CSAgdy0+b2xkX2JvZHlfcGl4ZWxfd2lkdGgKKwkgICAgPSB3aW5kb3dfYm9keV93aWR0aCAo dywgV0lORE9XX0JPRFlfSU5fUElYRUxTKTsKKwkgIHctPm9sZF9ib2R5X3BpeGVsX2hlaWdo dAorCSAgICA9IHdpbmRvd19ib2R5X2hlaWdodCAodywgV0lORE9XX0JPRFlfSU5fUElYRUxT KTsKIAl9CiAKICAgICAgIHcgPSBOSUxQICh3LT5uZXh0KSA/IDAgOiBYV0lORE9XICh3LT5u ZXh0KTsKQEAgLTM5MDMsOCArMzk1NywxMCBAQCBydW5fd2luZG93X2NoYW5nZV9mdW5jdGlv bnMgKHZvaWQpCiAJICAgICAmJiAod2luZG93X2J1ZmZlcl9jaGFuZ2UKIAkJIHx8IHctPnBp eGVsX3dpZHRoICE9IHctPm9sZF9waXhlbF93aWR0aAogCQkgfHwgdy0+cGl4ZWxfaGVpZ2h0 ICE9IHctPm9sZF9waXhlbF9oZWlnaHQKLQkJIHx8IHdpbmRvd19ib2R5X3dpZHRoICh3LCB0 cnVlKSAhPSB3LT5vbGRfYm9keV9waXhlbF93aWR0aAotCQkgfHwgd2luZG93X2JvZHlfaGVp Z2h0ICh3LCB0cnVlKSAhPSB3LT5vbGRfYm9keV9waXhlbF9oZWlnaHQpKTsKKwkJIHx8ICh3 aW5kb3dfYm9keV93aWR0aCAodywgV0lORE9XX0JPRFlfSU5fUElYRUxTKQorCQkgICAgICE9 IHctPm9sZF9ib2R5X3BpeGVsX3dpZHRoKQorCQkgfHwgKHdpbmRvd19ib2R5X2hlaWdodCAo dywgV0lORE9XX0JPRFlfSU5fUElYRUxTKQorCQkgICAgICE9IHctPm9sZF9ib2R5X3BpeGVs X2hlaWdodCkpKTsKIAogCSAgLyogVGhlIGZvbGxvd2luZyB0d28gYXJlIG5lZWRlZCB3aGVu IHJ1bm5pbmcgdGhlIGRlZmF1bHQKIAkgICAgIHZhbHVlcyBmb3IgdGhpcyBmcmFtZSBiZWxv dy4gICovCkBAIC00NzY4LDcgKzQ4MjQsOCBAQCByZXNpemVfZnJhbWVfd2luZG93cyAoc3Ry dWN0IGZyYW1lICpmLCBpbnQgc2l6ZSwgYm9vbCBob3JmbGFnKQogICBMaXNwX09iamVjdCBt aW5pID0gZi0+bWluaWJ1ZmZlcl93aW5kb3c7CiAgIHN0cnVjdCB3aW5kb3cgKm0gPSBXSU5E T1dQIChtaW5pKSA/IFhXSU5ET1cgKG1pbmkpIDogTlVMTDsKICAgaW50IG1pbmlfaGVpZ2h0 ID0gKChGUkFNRV9IQVNfTUlOSUJVRl9QIChmKSAmJiAhRlJBTUVfTUlOSUJVRl9PTkxZX1Ag KGYpKQotCQkgICAgID8gdW5pdCArIG0tPnBpeGVsX2hlaWdodCAtIHdpbmRvd19ib2R5X2hl aWdodCAobSwgdHJ1ZSkKKwkJICAgICA/ICh1bml0ICsgbS0+cGl4ZWxfaGVpZ2h0CisJCQkt IHdpbmRvd19ib2R5X2hlaWdodCAobSwgV0lORE9XX0JPRFlfSU5fUElYRUxTKSkKIAkJICAg ICA6IDApOwogCiAgIG5ld19waXhlbF9zaXplID0gbWF4IChob3JmbGFnID8gc2l6ZSA6IHNp emUgLSBtaW5pX2hlaWdodCwgdW5pdCk7CkBAIC01MjU1LDcgKzUzMTIsNyBAQCByZXNpemVf bWluaV93aW5kb3dfYXBwbHkgKHN0cnVjdCB3aW5kb3cgKncsIGludCBkZWx0YSkKIGdyb3df bWluaV93aW5kb3cgKHN0cnVjdCB3aW5kb3cgKncsIGludCBkZWx0YSkKIHsKICAgc3RydWN0 IGZyYW1lICpmID0gWEZSQU1FICh3LT5mcmFtZSk7Ci0gIGludCBvbGRfaGVpZ2h0ID0gd2lu ZG93X2JvZHlfaGVpZ2h0ICh3LCB0cnVlKTsKKyAgaW50IG9sZF9oZWlnaHQgPSB3aW5kb3df Ym9keV9oZWlnaHQgKHcsIFdJTkRPV19CT0RZX0lOX1BJWEVMUyk7CiAgIGludCBtaW5faGVp Z2h0ID0gRlJBTUVfTElORV9IRUlHSFQgKGYpOwogCiAgIGVhc3NlcnQgKE1JTklfV0lORE9X X1AgKHcpKTsKQEAgLTUyODksNyArNTM0Niw4IEBAIGdyb3dfbWluaV93aW5kb3cgKHN0cnVj dCB3aW5kb3cgKncsIGludCBkZWx0YSkKIHNocmlua19taW5pX3dpbmRvdyAoc3RydWN0IHdp bmRvdyAqdykKIHsKICAgc3RydWN0IGZyYW1lICpmID0gWEZSQU1FICh3LT5mcmFtZSk7Ci0g IGludCBkZWx0YSA9IHdpbmRvd19ib2R5X2hlaWdodCAodywgdHJ1ZSkgLSBGUkFNRV9MSU5F X0hFSUdIVCAoZik7CisgIGludCBkZWx0YSA9ICh3aW5kb3dfYm9keV9oZWlnaHQgKHcsIFdJ TkRPV19CT0RZX0lOX1BJWEVMUykKKwkgICAgICAgLSBGUkFNRV9MSU5FX0hFSUdIVCAoZikp OwogCiAgIGVhc3NlcnQgKE1JTklfV0lORE9XX1AgKHcpKTsKIApAQCAtNjM1Niw5ICs2NDE0 LDEwIEBAIERFRlVOICgic2Nyb2xsLWxlZnQiLCBGc2Nyb2xsX2xlZnQsIFNzY3JvbGxfbGVm dCwgMCwgMiwgIl5QXG5wIiwKICAgKHJlZ2lzdGVyIExpc3BfT2JqZWN0IGFyZywgTGlzcF9P YmplY3Qgc2V0X21pbmltdW0pCiB7CiAgIHN0cnVjdCB3aW5kb3cgKncgPSBYV0lORE9XIChz ZWxlY3RlZF93aW5kb3cpOwotICBFTUFDU19JTlQgcmVxdWVzdGVkX2FyZyA9IChOSUxQIChh cmcpCi0JCQkgICAgID8gd2luZG93X2JvZHlfd2lkdGggKHcsIDApIC0gMgotCQkJICAgICA6 IFhGSVhOVU0gKEZwcmVmaXhfbnVtZXJpY192YWx1ZSAoYXJnKSkpOworICBFTUFDU19JTlQg cmVxdWVzdGVkX2FyZyA9CisgICAgKE5JTFAgKGFyZykKKyAgICAgPyB3aW5kb3dfYm9keV93 aWR0aCAodywgV0lORE9XX0JPRFlfSU5fQ0FOT05JQ0FMX0NIQVJTKSAtIDIKKyAgICAgOiBY RklYTlVNIChGcHJlZml4X251bWVyaWNfdmFsdWUgKGFyZykpKTsKICAgTGlzcF9PYmplY3Qg cmVzdWx0ID0gc2V0X3dpbmRvd19oc2Nyb2xsICh3LCB3LT5oc2Nyb2xsICsgcmVxdWVzdGVk X2FyZyk7CiAKICAgaWYgKCFOSUxQIChzZXRfbWluaW11bSkpCkBAIC02MzgxLDkgKzY0NDAs MTAgQEAgREVGVU4gKCJzY3JvbGwtcmlnaHQiLCBGc2Nyb2xsX3JpZ2h0LCBTc2Nyb2xsX3Jp Z2h0LCAwLCAyLCAiXlBcbnAiLAogICAocmVnaXN0ZXIgTGlzcF9PYmplY3QgYXJnLCBMaXNw X09iamVjdCBzZXRfbWluaW11bSkKIHsKICAgc3RydWN0IHdpbmRvdyAqdyA9IFhXSU5ET1cg KHNlbGVjdGVkX3dpbmRvdyk7Ci0gIEVNQUNTX0lOVCByZXF1ZXN0ZWRfYXJnID0gKE5JTFAg KGFyZykKLQkJCSAgICAgPyB3aW5kb3dfYm9keV93aWR0aCAodywgMCkgLSAyCi0JCQkgICAg IDogWEZJWE5VTSAoRnByZWZpeF9udW1lcmljX3ZhbHVlIChhcmcpKSk7CisgIEVNQUNTX0lO VCByZXF1ZXN0ZWRfYXJnID0KKyAgICAoTklMUCAoYXJnKQorICAgICA/IHdpbmRvd19ib2R5 X3dpZHRoICh3LCBXSU5ET1dfQk9EWV9JTl9DQU5PTklDQUxfQ0hBUlMpIC0gMgorICAgICA6 IFhGSVhOVU0gKEZwcmVmaXhfbnVtZXJpY192YWx1ZSAoYXJnKSkpOwogICBMaXNwX09iamVj dCByZXN1bHQgPSBzZXRfd2luZG93X2hzY3JvbGwgKHcsIHctPmhzY3JvbGwgLSByZXF1ZXN0 ZWRfYXJnKTsKIAogICBpZiAoIU5JTFAgKHNldF9taW5pbXVtKSkKZGlmZiAtLWdpdCBhL3Ny Yy93aW5kb3cuaCBiL3NyYy93aW5kb3cuaAppbmRleCA3ZjdkZTU4ODQ2Li4yOThhODBhNTM2 IDEwMDY0NAotLS0gYS9zcmMvd2luZG93LmgKKysrIGIvc3JjL3dpbmRvdy5oCkBAIC0xMTg2 LDcgKzExODYsMTMgQEAgI2RlZmluZSBDSEVDS19MSVZFX1dJTkRPVyhXSU5ET1cpCQkJCVwK IGV4dGVybiBib29sIHdpbmRvd193YW50c19oZWFkZXJfbGluZSAoc3RydWN0IHdpbmRvdyAq KTsKIGV4dGVybiBib29sIHdpbmRvd193YW50c190YWJfbGluZSAoc3RydWN0IHdpbmRvdyAq KTsKIGV4dGVybiBpbnQgd2luZG93X2ludGVybmFsX2hlaWdodCAoc3RydWN0IHdpbmRvdyAq KTsKLWV4dGVybiBpbnQgd2luZG93X2JvZHlfd2lkdGggKHN0cnVjdCB3aW5kb3cgKncsIGJv b2wpOworZW51bSB3aW5kb3dfYm9keV91bml0CisgIHsKKyAgICBXSU5ET1dfQk9EWV9JTl9D QU5PTklDQUxfQ0hBUlMsCisgICAgV0lORE9XX0JPRFlfSU5fUElYRUxTLAorICAgIFdJTkRP V19CT0RZX0lOX1JFTUFQUEVEX0NIQVJTCisgIH07CitleHRlcm4gaW50IHdpbmRvd19ib2R5 X3dpZHRoIChzdHJ1Y3Qgd2luZG93ICp3LCBlbnVtIHdpbmRvd19ib2R5X3VuaXQpOwogZW51 bSBtYXJnaW5fdW5pdCB7IE1BUkdJTl9JTl9MSU5FUywgTUFSR0lOX0lOX1BJWEVMUyB9Owog ZXh0ZXJuIGludCB3aW5kb3dfc2Nyb2xsX21hcmdpbiAoc3RydWN0IHdpbmRvdyAqLCBlbnVt IG1hcmdpbl91bml0KTsKIGV4dGVybiB2b2lkIHRlbXBfb3V0cHV0X2J1ZmZlcl9zaG93IChM aXNwX09iamVjdCk7CmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVz dHMuZWwgYi90ZXN0L2xpc3AvZXNoZWxsL2VzaC12YXItdGVzdHMuZWwKaW5kZXggNGUyYTE4 ODYxZS4uN2I4YWNmY2M3ZCAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL2VzaGVsbC9lc2gtdmFy LXRlc3RzLmVsCisrKyBiL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLXZhci10ZXN0cy5lbApAQCAt NDY5LDEzICs0NjksMTUgQEAgZXNoLXZhci10ZXN0L3F1b3RlZC1pbnRlcnAtY29udmVydC1j bWQtc3BsaXQtaW5kaWNlcwogDAogOzsgQnVpbHQtaW4gdmFyaWFibGVzCiAKLShlcnQtZGVm dGVzdCBlc2gtdmFyLXRlc3Qvd2luZG93LWhlaWdodCAoKQotICAiJExJTkVTIHNob3VsZCBl cXVhbCAod2luZG93LWhlaWdodCkiCi0gIChzaG91bGQgKGVzaGVsbC10ZXN0LWNvbW1hbmQt cmVzdWx0ICI9ICRMSU5FUyAod2luZG93LWhlaWdodCkiKSkpCi0KLShlcnQtZGVmdGVzdCBl c2gtdmFyLXRlc3Qvd2luZG93LXdpZHRoICgpCi0gICIkQ09MVU1OUyBzaG91bGQgZXF1YWwg KHdpbmRvdy13aWR0aCkiCi0gIChzaG91bGQgKGVzaGVsbC10ZXN0LWNvbW1hbmQtcmVzdWx0 ICI9ICRDT0xVTU5TICh3aW5kb3ctd2lkdGgpIikpKQorKGVydC1kZWZ0ZXN0IGVzaC12YXIt dGVzdC9saW5lcy12YXIgKCkKKyAgIiRMSU5FUyBzaG91bGQgZXF1YWwgKHdpbmRvdy1ib2R5 LWhlaWdodCBuaWwgJ3JlbWFwKSIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNv bW1hbmQtcmVzdWx0ICJlY2hvICRMSU5FUyIpCisgICAgICAgICAgICAgICAgICh3aW5kb3ct Ym9keS1oZWlnaHQgbmlsICdyZW1hcCkpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC12YXItdGVz dC9jb2x1bW5zLXZhciAoKQorICAiJENPTFVNTlMgc2hvdWxkIGVxdWFsICh3aW5kb3ctYm9k eS13aWR0aCBuaWwgJ3JlbWFwKSIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC10ZXN0LWNv bW1hbmQtcmVzdWx0ICJlY2hvICRDT0xVTU5TIikKKyAgICAgICAgICAgICAgICAgKHdpbmRv dy1ib2R5LXdpZHRoIG5pbCAncmVtYXApKSkpCiAKIChlcnQtZGVmdGVzdCBlc2gtdmFyLXRl c3QvbGFzdC1yZXN1bHQtdmFyICgpCiAgICJUZXN0IHVzaW5nIHRoZSBcImxhc3QgcmVzdWx0 XCIgKCQkKSB2YXJpYWJsZSIKLS0gCjIuMjUuMQoK --------------272CDD1F49BC7A7C2991E00F--