From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Philipp Stephani Newsgroups: gmane.emacs.bugs Subject: bug#25478: 26.0.50; No hooks are called when auto-saving Date: Sat, 22 Apr 2017 19:01:50 +0000 Message-ID: References: <837f5q6rxq.fsf@gnu.org> <83wpbb98rc.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=f403045eade26d17a5054dc60291 X-Trace: blaine.gmane.org 1492887797 19305 195.159.176.226 (22 Apr 2017 19:03:17 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 22 Apr 2017 19:03:17 +0000 (UTC) Cc: 25478@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Apr 22 21:03:10 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d20JK-0004pl-93 for geb-bug-gnu-emacs@m.gmane.org; Sat, 22 Apr 2017 21:03:10 +0200 Original-Received: from localhost ([::1]:36586 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d20JO-0006rc-Be for geb-bug-gnu-emacs@m.gmane.org; Sat, 22 Apr 2017 15:03:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46329) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d20JG-0006rO-Ft for bug-gnu-emacs@gnu.org; Sat, 22 Apr 2017 15:03:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d20JC-0005RT-A7 for bug-gnu-emacs@gnu.org; Sat, 22 Apr 2017 15:03:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:36499) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d20JC-0005RP-5i for bug-gnu-emacs@gnu.org; Sat, 22 Apr 2017 15:03:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1d20JB-00006G-U6 for bug-gnu-emacs@gnu.org; Sat, 22 Apr 2017 15:03:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Philipp Stephani Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 22 Apr 2017 19:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25478 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 25478-submit@debbugs.gnu.org id=B25478.1492887731326 (code B ref 25478); Sat, 22 Apr 2017 19:03:01 +0000 Original-Received: (at 25478) by debbugs.gnu.org; 22 Apr 2017 19:02:11 +0000 Original-Received: from localhost ([127.0.0.1]:34698 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d20IM-00005A-Ti for submit@debbugs.gnu.org; Sat, 22 Apr 2017 15:02:11 -0400 Original-Received: from mail-wr0-f174.google.com ([209.85.128.174]:33367) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d20IK-00004v-Qz for 25478@debbugs.gnu.org; Sat, 22 Apr 2017 15:02:09 -0400 Original-Received: by mail-wr0-f174.google.com with SMTP id w50so47344796wrc.0 for <25478@debbugs.gnu.org>; Sat, 22 Apr 2017 12:02:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=7HIuunF6ew8SwiZaYwoWzA7KeL/+qSj0XFOA1dGIg3M=; b=juJgX1rM+lv68iAY2RY0k2JZS0mmRToWIsMwvClV31kDrP9KO0hFVnaH7qCxT9u1Bn aqGWUZzURrHkj2wBNRkeGRYK5wx+p2vExj3kPt2ZSkp7N2JFl+YDFAHdjJgFz3uiNBcZ h87PgK96Lgb38Z8gpBURZXAVRtnAtl+qhrW2w4uE1oXZdwavFWwG+FrpC6eM4SMl//ES af9gEkp5pxk7sQAodmvym9IRvf334aWCXQkrciUbh1h5NUUW8/Dikuv3z5gDNGfJskoX r2EwPn4K0QKkfLW4XpgHoe5SJR6SWYVVLxeikJLo6jp1P5lj5IXqlTg/tV2gUWLSAJQV 1Vig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=7HIuunF6ew8SwiZaYwoWzA7KeL/+qSj0XFOA1dGIg3M=; b=oWQfk34EYLj81AozTaVcljWREINNsurtkdebRGnm8M3gKjxBnFfrDfeuga7NeNuuIn 3HguRFTGdI5IitxPso27Vp1M74XtqfoArr+Pnx9KQIaDomzhbeV2FNrEnhuZG+36xdfp W/B36XCyBT1pcn551vi+hlxB8Pa2xmA+Nw9Ndt6M7xeiZcpgkdDw9I5UBDqiSUnR1RS9 fw3avHV5LcaAd+eBIboZw4JNSDaGtdloEKWnuwxJXoGgnDVB3sKdREKIzqx7EamCiw/V cWuftTuriR7YT9HWgvb04PoPNB+8Al2kI2oL/797u6Q0CgSRtOYCNzt3ZKLmBPGg6rxK 3Bjw== X-Gm-Message-State: AN3rC/6EZvgk+Uqc3w7nEf90bIphGasFtaD5LDFbjv28vdKyZe6U8n/D SY8r/x/UHjxKHmsf4vElvmP9x3jlHw== X-Received: by 10.223.139.146 with SMTP id o18mr2262637wra.175.1492887723108; Sat, 22 Apr 2017 12:02:03 -0700 (PDT) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 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.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:131885 Archived-At: --f403045eade26d17a5054dc60291 Content-Type: multipart/alternative; boundary=f403045eade26d179c054dc6028f --f403045eade26d179c054dc6028f Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Philipp Stephani schrieb am So., 26. M=C3=A4rz 2017= um 21:17 Uhr: > Eli Zaretskii schrieb am So., 26. M=C3=A4rz 2017 um 20:46 = Uhr: > >> > From: Philipp Stephani >> > Date: Sun, 26 Mar 2017 18:21:01 +0000 >> > Cc: 25478@debbugs.gnu.org >> > >> > All in all, I think this option is subtly dangerous and should be >> > either deprecated or completely reimplemented to invoke >> > basic-save-buffer instead. I'm quite sure this option made sense in >> > the past, when complications with encoding and save-related hooks >> > didn't exist, but that is no longer the case in Emacs these days. >> > If someone thinks using this option will allow them not to bother wit= h >> > saving their edits, they are in for an unpleasant surprise. >> > >> > That's quite unfortunate, as not having to bother with saving edits >> manually is a very desirable feature that I >> > think Emacs should offer out of the box. >> > >> > If you really want to deprecate auto-save-visited-file-name, how about >> adding a simple global minor mode that >> > invokes save-some-buffers from an idle timer to files.el? >> >> As I wrote, I'm also okay with Someone=E2=84=A2 volunteering to reimplem= ent >> this option such that it invokes basic-save-buffer instead. >> >> A minor mode that you describe would also be fine, but then it should >> probably disable auto-saving if auto-save-visited-file-name is set, >> right? >> > > Sounds reasonable. I'll try to come up with something by next weekend. > Probably it will be just > > (defvar auto-save--timer nil) > (defcustom auto-save-visited-interval 5 > "seconds" > :group 'files > :type 'number > :set (lambda (symbol value) > (set-default symbol value) > (when auto-save--timer > (timer-set-idle-time auto-save--timer value :repeat)))) > (define-minor-mode auto-save-visited-mode nil > :group 'files > :global t > (when auto-save--timer (kill-timer auto-save--timer)) > (setq auto-save--timer > (when auto-save-visited-mode > (run-with-idle-timer > auto-save-visited-interval :repeat > #'save-some-buffers :no-prompt > (lambda () > (not (and buffer-auto-save-file-name > auto-save-visited-file-name))))))) > > but it will also need tests and documentation, which take a bit more time= . > Here's a patch. --f403045eade26d179c054dc6028f Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


Philip= p Stephani <p.stephani2@gmail.c= om> schrieb am So., 26. M=C3=A4rz 2017 um 21:17=C2=A0Uhr:
<= blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px= #ccc solid;padding-left:1ex">
<= div dir=3D"ltr">Eli Zaretskii <eliz@gnu.org> schrieb am So., 26. M=C3=A4rz 2017 um 20:46= =C2=A0Uhr:
> From: Philipp Steph= ani <p.stephani2@gmail.com>
> Date: Sun, 26 Mar 2017 18:21:01 +0000
> Cc: 25478@debbugs.gnu.org
>
>=C2=A0 All in all, I think this option is subtly dangerous and should b= e
>=C2=A0 either deprecated or completely reimplemented to invoke
>=C2=A0 basic-save-buffer instead. I'm quite sure this option made s= ense in
>=C2=A0 the past, when complications with encoding and save-related hook= s
>=C2=A0 didn't exist, but that is no longer the case in Emacs these = days.
>=C2=A0 If someone thinks using this option will allow them not to bothe= r with
>=C2=A0 saving their edits, they are in for an unpleasant surprise.
>
> That's quite unfortunate, as not having to bother with saving edit= s manually is a very desirable feature that I
> think Emacs should offer out of the box.
>
> If you really want to deprecate auto-save-visited-file-name, how about= adding a simple global minor mode that
> invokes save-some-buffers from an idle timer to files.el?

As I wrote, I'm also okay with Someone=E2=84=A2 volunteering to reimple= ment
this option such that it invokes basic-save-buffer instead.

A minor mode that you describe would also be fine, but then it should
probably disable auto-saving if auto-save-visited-file-name is set,
right?

<= /div>
Sounds re= asonable. I'll try to come up with something by next weekend. Probably = it will be just=C2=A0

(defvar auto-save--timer nil= )
(defcustom auto-save-visited-interval 5
=C2=A0 &q= uot;seconds"
=C2=A0 :group 'files
=C2=A0 :type= 'number
=C2=A0 :set (lambda (symbol value)
=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0(set-default symbol value)
=C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0(when auto-save--timer
=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0(timer-set-idle-time auto-save--timer value :repeat= ))))
(define-minor-mode auto-save-visited-mode nil
= =C2=A0 :group 'files
=C2=A0 :global t
=C2=A0 (when = auto-save--timer (kill-timer auto-save--timer))
=C2=A0 (setq auto= -save--timer
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (when auto-save-visited-= mode
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (run-with-idle-timer
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0auto-save-visited-interval := repeat
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0#'save-some-b= uffers :no-prompt
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(lambd= a ()
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(not (and bu= ffer-auto-save-file-name auto-save-visited-file-name)))))))

<= /div>
but it will also need tests and documentation, which take a bit m= ore time.

Here's a pa= tch.=C2=A0
--f403045eade26d179c054dc6028f-- --f403045eade26d17a5054dc60291 Content-Type: text/plain; charset=US-ASCII; name="0001-Reimplement-auto-saving-to-visited-files.txt" Content-Disposition: attachment; filename="0001-Reimplement-auto-saving-to-visited-files.txt" Content-Transfer-Encoding: base64 Content-ID: <15b970a9fd9c5bca6e21> X-Attachment-Id: 15b970a9fd9c5bca6e21 RnJvbSAyYTE0NjM2YTA2MTBkMWJjNmUwMjRhNTZiNzg4YTU3NWMwMzlmNzg0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwIFN0ZXBoYW5pIDxwaHN0QGdvb2dsZS5jb20+CkRh dGU6IFNhdCwgMjIgQXByIDIwMTcgMjA6NTg6MzggKzAyMDAKU3ViamVjdDogW1BBVENIXSBSZWlt cGxlbWVudCBhdXRvLXNhdmluZyB0byB2aXNpdGVkIGZpbGVzCgpUaGlzIHJlYWN0cyB0byBjb25m dXNpbmcgYmVoYXZpb3Igb2YgJ2F1dG8tc2F2ZS12aXNpdGVkLWZpbGUtbmFtZScsCmNmLiBCdWcj MjU0NzguCgoqIGxpc3AvZmlsZXMuZWwgKGF1dG8tc2F2ZS12aXNpdGVkLWludGVydmFsKTogTmV3 IGN1c3RvbWl6YXRpb24gb3B0aW9uLgooYXV0by1zYXZlLXZpc2l0ZWQtbW9kZSk6IE5ldyBnbG9i YWwgbWlub3IgbW9kZS4KKGF1dG8tc2F2ZS12aXNpdGVkLWZpbGUtbmFtZSk6IE1ha2Ugb2Jzb2xl dGUuCihhdXRvLXNhdmUtLXRpbWVyKTogTmV3IGludGVybmFsIGhlbHBlciB2YXJpYWJsZS4KCiog ZG9jL2VtYWNzL2ZpbGVzLnRleGkgKEF1dG8gU2F2ZSBGaWxlcyk6IERvY3VtZW50CidhdXRvLXNh dmUtdmlzaXRlZC1tb2RlJyBpbnN0ZWFkIG9mIG9ic29sZXRlCidhdXRvLXNhdmUtdmlzaXRlZC1m aWxlLW5hbWUnLgooQXV0byBTYXZlIENvbnRyb2wpOiBEb2N1bWVudCBjdXN0b21pemF0aW9uIG9w dGlvbgonYXV0by1zYXZlLXZpc2l0ZWQtaW50ZXJ2YWwnLgotLS0KIGRvYy9lbWFjcy9maWxlcy50 ZXhpIHwgMjAgKysrKysrKysrKysrKy0tLS0tLS0KIGV0Yy9ORVdTICAgICAgICAgICAgIHwgIDYg KysrKysrCiBsaXNwL2ZpbGVzLmVsICAgICAgICB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCA3IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9lbWFjcy9maWxlcy50ZXhpIGIvZG9jL2VtYWNz L2ZpbGVzLnRleGkKaW5kZXggZWQxN2Y2NmNhMi4uMDhjOGJlZWQ5NiAxMDA2NDQKLS0tIGEvZG9j L2VtYWNzL2ZpbGVzLnRleGkKKysrIGIvZG9jL2VtYWNzL2ZpbGVzLnRleGkKQEAgLTEwNDAsMTQg KzEwNDAsMTMgQEAgQXV0byBTYXZlIEZpbGVzCiB0aGlzIGhhcHBlbnMsIHNhdmUgdGhlIGJ1ZmZl ciB3aXRoIEBrYmR7Qy14IEMtc30sIG9yIHVzZSBAa2Jke0MtdSAxIE0teAogYXV0by1zYXZlLW1v ZGV9LgogCi1AdmluZGV4IGF1dG8tc2F2ZS12aXNpdGVkLWZpbGUtbmFtZQorQHZpbmRleCBhdXRv LXNhdmUtdmlzaXRlZC1tb2RlCiAgIElmIHlvdSB3YW50IGF1dG8tc2F2aW5nIHRvIGJlIGRvbmUg aW4gdGhlIHZpc2l0ZWQgZmlsZSByYXRoZXIgdGhhbgotaW4gYSBzZXBhcmF0ZSBhdXRvLXNhdmUg ZmlsZSwgc2V0IHRoZSB2YXJpYWJsZQotQGNvZGV7YXV0by1zYXZlLXZpc2l0ZWQtZmlsZS1uYW1l fSB0byBhIG5vbi1AY29kZXtuaWx9IHZhbHVlLiAgSW4gdGhpcwotbW9kZSwgYXV0by1zYXZpbmcg aXMgdmVyeSBzaW1pbGFyIHRvIGV4cGxpY2l0IHNhdmluZy4gIEhvd2V2ZXIsCi1kaWZmZXJlbmNl cyBzdGlsbCBleGlzdCwgaW4gcGFydGljdWxhciBmb3IgbW9kZXMgd2hpY2ggbW9kaWZ5IHRoZQot YnVmZmVyLXNhdmluZyBwcm9jZXNzIGluIG5vbi10cml2aWFsIHdheXMgdmlhIHZhcmlvdXMgaG9v a3MKLShAcHhyZWZ7U2F2aW5nIEJ1ZmZlcnMsLCwgZWxpc3AsIFRoZSBFbWFjcyBMaXNwIFJlZmVy ZW5jZSBNYW51YWx9KS4KK2luIGEgc2VwYXJhdGUgYXV0by1zYXZlIGZpbGUsIGVuYWJsZSB0aGUg Z2xvYmFsIG1pbm9yIG1vZGUKK0Bjb2Rle2F1dG8tc2F2ZS12aXNpdGVkLW1vZGV9LiAgSW4gdGhp cyBtb2RlLCBhdXRvLXNhdmluZyBpcyB2ZXJ5CitzaW1pbGFyIHRvIGV4cGxpY2l0IHNhdmluZy4g IE5vdGUgdGhhdCB0aGlzIG1vZGUgaXMgb3J0aG9nb25hbCB0byB0aGUKK0Bjb2Rle2F1dG8tc2F2 ZX0gbW9kZSBkZXNjcmliZWQgYWJvdmU7IHlvdSBjYW4gZW5hYmxlIGJvdGggYXQgdGhlIHNhbWUK K3RpbWUuCiAKIEB2aW5kZXggZGVsZXRlLWF1dG8tc2F2ZS1maWxlcwogICBBIGJ1ZmZlcidzIGF1 dG8tc2F2ZSBmaWxlIGlzIGRlbGV0ZWQgd2hlbiB5b3Ugc2F2ZSB0aGUgYnVmZmVyIGluIGl0cwpA QCAtMTA5MSw2ICsxMDkwLDEzIEBAIEF1dG8gU2F2ZSBDb250cm9sCiBhIHdoaWxlOyBzZWNvbmQs IGl0IG1heSBhdm9pZCBzb21lIGF1dG8tc2F2aW5nIHdoaWxlIHlvdSBhcmUgYWN0dWFsbHkKIHR5 cGluZy4KIAorQHZpbmRleCBhdXRvLXNhdmUtdmlzaXRlZC1pbnRlcnZhbAorICBXaGVuIEBjb2Rl e2F1dG8tc2F2ZS12aXNpdGVkLW1vZGV9IGlzIGVuYWJsZWQsIEVtYWNzIHdpbGwgYXV0by1zYXZl CitmaWxlLXZpc2l0aW5nIGJ1ZmZlcnMgYWZ0ZXIgZml2ZSBzZWNvbmRzIG9mIGlkbGUgdGltZS4g IFlvdSBjYW4KK2N1c3RvbWl6ZSB0aGUgdmFyaWFibGUgQGNvZGV7YXV0by1zYXZlLXZpc2l0ZWQt aW50ZXJ2YWx9IHRvIGNoYW5nZSB0aGUKK2lkbGUgdGltZSBpbnRlcnZhbC4gIEBjb2Rle2F1dG8t c2F2ZS1pbnRlcnZhbH0gYW5kCitAY29kZXthdXRvLXNhdmUtdGltZW91dH0gaGF2ZSBubyBlZmZl Y3Qgb24gdGhpcyBtb2RlLgorCiAgIEVtYWNzIGFsc28gZG9lcyBhdXRvLXNhdmluZyB3aGVuZXZl ciBpdCBnZXRzIGEgZmF0YWwgZXJyb3IuICBUaGlzCiBpbmNsdWRlcyBraWxsaW5nIHRoZSBFbWFj cyBqb2Igd2l0aCBhIHNoZWxsIGNvbW1hbmQgc3VjaCBhcyBAc2FtcHtraWxsCiAlZW1hY3N9LCBv ciBkaXNjb25uZWN0aW5nIGEgcGhvbmUgbGluZSBvciBuZXR3b3JrIGNvbm5lY3Rpb24uCmRpZmYg LS1naXQgYS9ldGMvTkVXUyBiL2V0Yy9ORVdTCmluZGV4IDcyODE4Mjc4NzguLjJmMTAyNzZkMTIg MTAwNjQ0Ci0tLSBhL2V0Yy9ORVdTCisrKyBiL2V0Yy9ORVdTCkBAIC0zODMsNiArMzgzLDEyIEBA IFN0cmluZ3Mgc3VjaCBhcyDOjM6jzp/OoyBhcmUgbm93IGNvcnJlY3RseSBjb252ZXJ0ZWQgdG8g zozPg86/z4Igd2hlbgogY2FwaXRhbGl6ZWQgaW5zdGVhZCBvZiBpbmNvcnJlY3QgzozPg86/z4Mg KGNvbXBhcmUgbG93ZXJjYXNlIHNpZ21hIGF0IHRoZQogZW5kIG9mIHRoZSB3b3JkKS4KIAorKiog RW1hY3MgY2FuIG5vdyBhdXRvLXNhdmUgYnVmZmVycyB0byB2aXNpdGVkIGZpbGVzIGluIGEgbW9y ZSByb2J1c3QKK21hbm5lciB2aWEgdGhlIG5ldyBtb2RlICdhdXRvLXNhdmUtdmlzaXRlZC1tb2Rl Jy4gIFVubGlrZQorJ2F1dG8tc2F2ZS12aXNpdGVkLWZpbGUtbmFtZScsIHRoaXMgbW9kZSB1c2Vz IHRoZSBub3JtYWwgc2F2aW5nCitwcm9jZWR1cmUgYW5kIHRoZXJlZm9yZSBvYmV5cyBzYXZpbmcg aG9va3MuCisnYXV0by1zYXZlLXZpc2l0ZWQtZmlsZS1uYW1lJyBpcyBub3cgb2Jzb2xldGUuCisK IAwKICogQ2hhbmdlcyBpbiBTcGVjaWFsaXplZCBNb2RlcyBhbmQgUGFja2FnZXMgaW4gRW1hY3Mg MjYuMQogCmRpZmYgLS1naXQgYS9saXNwL2ZpbGVzLmVsIGIvbGlzcC9maWxlcy5lbAppbmRleCA2 ODQ4ODE4Y2FkLi5jZjkwMzdlYzY4IDEwMDY0NAotLS0gYS9saXNwL2ZpbGVzLmVsCisrKyBiL2xp c3AvZmlsZXMuZWwKQEAgLTM5Myw2ICszOTMsNDUgQEAgYXV0by1zYXZlLWZpbGUtbmFtZS10cmFu c2Zvcm1zCiAgIDppbml0aWFsaXplICdjdXN0b20taW5pdGlhbGl6ZS1kZWxheQogICA6dmVyc2lv biAiMjEuMSIpCiAKKyhkZWZ2YXIgYXV0by1zYXZlLS10aW1lciBuaWwgIlRpbWVyIGZvciBgYXV0 by1zYXZlLXZpc2l0ZWQtbW9kZScuIikKKworKGRlZmN1c3RvbSBhdXRvLXNhdmUtdmlzaXRlZC1p bnRlcnZhbCA1CisgICJJbnRlcnZhbCBpbiBzZWNvbmRzIGZvciBgYXV0by1zYXZlLXZpc2l0ZWQt bW9kZScuCitJZiBgYXV0by1zYXZlLXZpc2l0ZWQtbW9kZScgaXMgZW5hYmxlZCwgRW1hY3Mgd2ls bCBzYXZlIGFsbAorYnVmZmVycyB2aXNpdGluZyBhIGZpbGUgdG8gdGhlIHZpc2l0ZWQgZmlsZSBh ZnRlciBpdCBoYXMgYmVlbgoraWRsZSBmb3IgYGF1dG8tc2F2ZS12aXNpdGVkLWludGVydmFsJyBz ZWNvbmRzLiIKKyAgOmdyb3VwICdhdXRvLXNhdmUKKyAgOnR5cGUgJ251bWJlcgorICA6c2V0IChs YW1iZGEgKHN5bWJvbCB2YWx1ZSkKKyAgICAgICAgIChzZXQtZGVmYXVsdCBzeW1ib2wgdmFsdWUp CisgICAgICAgICAod2hlbiBhdXRvLXNhdmUtLXRpbWVyCisgICAgICAgICAgICh0aW1lci1zZXQt aWRsZS10aW1lIGF1dG8tc2F2ZS0tdGltZXIgdmFsdWUgOnJlcGVhdCkpKSkKKworKGRlZmluZS1t aW5vci1tb2RlIGF1dG8tc2F2ZS12aXNpdGVkLW1vZGUKKyAgIlRvZ2dsZSBhdXRvbWF0aWMgc2F2 aW5nIHRvIGZpbGUtdmlzaXRpbmcgYnVmZmVycyBvbiBvciBvZmYuCitXaXRoIGEgcHJlZml4IGFy Z3VtZW50IEFSRywgZW5hYmxlIHJlZ3VsYXIgc2F2aW5nIG9mIGFsbCBidWZmZXJzCit2aXNpbmcg YSBmaWxlIGlmIEFSRyBpcyBwb3NpdGl2ZSwgYW5kIGRpc2FibGUgaXQgb3RoZXJ3aXNlLgorVW5s aWtlIGBhdXRvLXNhdmUtbW9kZScsIHRoaXMgbW9kZSB3aWxsIGF1dG8tc2F2ZSBidWZmZXIgY29u dGVudHMKK3RvIHRoZSB2aXNpdGVkIGZpbGVzIGRpcmVjdGx5IGFuZCB3aWxsIGFsc28gcnVuIGFs bCBzYXZlLXJlbGF0ZWQKK2hvb2tzLiAgU2VlIEluZm8gbm9kZSBgU2F2aW5nJyBmb3IgZGV0YWls cyBvZiB0aGUgc2F2ZSBwcm9jZXNzLgorCitJZiBjYWxsZWQgZnJvbSBMaXNwLCBlbmFibGUgdGhl IG1vZGUgaWYgQVJHIGlzIG9taXR0ZWQgb3IgbmlsLAorYW5kIHRvZ2dsZSBpdCBpZiBBUkcgaXMg YHRvZ2dsZScuIgorICA6Z3JvdXAgJ2F1dG8tc2F2ZQorICA6Z2xvYmFsIHQKKyAgKHdoZW4gYXV0 by1zYXZlLS10aW1lciAoa2lsbC10aW1lciBhdXRvLXNhdmUtLXRpbWVyKSkKKyAgKHNldHEgYXV0 by1zYXZlLS10aW1lcgorICAgICAgICAod2hlbiBhdXRvLXNhdmUtdmlzaXRlZC1tb2RlCisgICAg ICAgICAgKHJ1bi13aXRoLWlkbGUtdGltZXIKKyAgICAgICAgICAgYXV0by1zYXZlLXZpc2l0ZWQt aW50ZXJ2YWwgOnJlcGVhdAorICAgICAgICAgICAjJ3NhdmUtc29tZS1idWZmZXJzIDpuby1wcm9t cHQKKyAgICAgICAgICAgKGxhbWJkYSAoKQorICAgICAgICAgICAgIChub3QgKGFuZCBidWZmZXIt YXV0by1zYXZlLWZpbGUtbmFtZQorICAgICAgICAgICAgICAgICAgICAgICBhdXRvLXNhdmUtdmlz aXRlZC1maWxlLW5hbWUpKSkpKSkpCisKKyhtYWtlLW9ic29sZXRlLXZhcmlhYmxlICdhdXRvLXNh dmUtdmlzaXRlZC1maWxlLW5hbWUgJ2F1dG8tc2F2ZS12aXNpdGVkLW1vZGUKKyAgICAgICAgICAg ICAgICAgICAgICAgICJFbWFjcyAyNi4xIikKKwogKGRlZmN1c3RvbSBzYXZlLWFiYnJldnMgdAog ICAiTm9uLW5pbCBtZWFucyBzYXZlIHdvcmQgYWJicmV2cyB0b28gd2hlbiBmaWxlcyBhcmUgc2F2 ZWQuCiBJZiBgc2lsZW50bHknLCBkb24ndCBhc2sgdGhlIHVzZXIgYmVmb3JlIHNhdmluZy4iCi0t IAoyLjEyLjIKCg== --f403045eade26d17a5054dc60291--