Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jObut-0008Ob-VR for pgadmin-hackers@arkaria.postgresql.org; Wed, 15 Apr 2020 06:53:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1jObur-00045c-D5 for pgadmin-hackers@arkaria.postgresql.org; Wed, 15 Apr 2020 06:52:57 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jObuq-00041r-UV for pgadmin-hackers@lists.postgresql.org; Wed, 15 Apr 2020 06:52:57 +0000 Received: from mail-ot1-x32b.google.com ([2607:f8b0:4864:20::32b]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1jObun-0000Co-HO for pgadmin-hackers@postgresql.org; Wed, 15 Apr 2020 06:52:55 +0000 Received: by mail-ot1-x32b.google.com with SMTP id f52so2362124otf.8 for ; Tue, 14 Apr 2020 23:52:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=REMfahv8dSHQUlnRpb/OopNsu/Ml3RjQ8+7OfIHcu9w=; b=Tv6MYZRok9qwazk9p1CAHPCJE9T6tugnUqI6kyVV4XTfhxWFKGCJBPTAqdEKXAKLoY M7kdIE/enTax1ynF4EC5ofgvIdDFVSJsDkx35lNUvfe0U6M6kMzveDgzNJp5BgO9gKD5 +1hFyX+7JMno/ihkBqAKVN9hkxdxNgd5a8Jd/ZXMgSPQyM5mzxNlUIYkvifKspKECqYr ujLckeu+Pm/AtYw9WRXxgRWJts0tBjnLGe7eDe3/k33G2hUsJRTR6+neIulyXOczymbR 1i5TZyKnXN8w3hUI/poMG9nAfiIfPluJdXNcnyq/K9KjgzDq3Ewp4Ocwh/57EBZiCZgG B1UQ== 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=REMfahv8dSHQUlnRpb/OopNsu/Ml3RjQ8+7OfIHcu9w=; b=EY1ZM+c9lR4H99u0DM02I7PT2Clk3ReN2BigHTKZKF0aiXlEmO5SRZe33rF8ZTbAW1 YQCKMOPX7AG0hoBRVmzi5uIUYLd2b4qYe7k9U9yZvL+X6NCJeqpqmDhEZ45J8H8Qr/Qw P8Px9Msz1ZoPGfPlkd7CT9K338lsETfFxw/tJxa4/6UXEKjkCQxRb2JNcU0LlbgW7u3+ /DoGiGH9IwR40GmJi7UAwT98P4Ji9s+8Ga+cV+tqr/ZOjkdUHqI4k84W2iB6N0JDSi+o t9fwZ/t4vZP7GZBiOoaOFUTm9MLvV0Sc8r/EB4FSig+5y5tpR97ralEfeGWl2PjSvhk0 BQ2A== X-Gm-Message-State: AGi0PuZcVyWRJu/+v5gddfxZPVh42xbWwKANZk/5k1ujJ1j/MBuP7gEB pM+0OYO3MLqfxCoXo04nFvjD37GRgz6Yxip323EiJnQL6WY2Bd5lzA19vaagQcL6aeMY1Y8Fiuv HmEmSydsofrE0oCD1MhIrkkmh/sW77GsXEAjeLORatMefvbBWezP87er8+FLyEAyUXiunmKLJAg ZSxPx9V3voDVbw9R982KCppXqxCvf2Aarslm4sOeNHRBh0oQJyLV0= X-Google-Smtp-Source: APiQypIdWudT8SIYgSsBJbpaa28BUrrhkJlTV3syqV6LX6Re/WEyem05ZCxqtgy0UmM6I2br+E74MH9cwLEwFnR6ZEo= X-Received: by 2002:a4a:558f:: with SMTP id e137mr21337860oob.89.1586933572867; Tue, 14 Apr 2020 23:52:52 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Murtuza Zabuawala Date: Wed, 15 Apr 2020 12:22:36 +0530 Message-ID: Subject: Re: [pgAdmin4][RM#4858] Allow user to reconnect to DB server when connection is drop To: Akshay Joshi Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary="000000000000e4d38d05a34ec310" X-CLOUD-SEC-AV-Info: edb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000e4d38d05a34ec310 Content-Type: multipart/alternative; boundary="000000000000e4d38c05a34ec30e" --000000000000e4d38c05a34ec30e Content-Type: text/plain; charset="UTF-8" Hi Akshay, PFA updated patch. -- Regards, Murtuza Zabuawala EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Mon, Apr 13, 2020 at 2:28 PM Akshay Joshi wrote: > Hi Murtuza > > The issue has been fixed with your patch, but there is an existing issue > discover with the fix. > After disconnecting the server and click on Download CSV button > confirmation dialog comes and user needs to click twice. > Following error observed in the browser: > > sqleditor.js?ver=42000:1 Uncaught TypeError: Cannot read property 'apply' > of undefined > at Object. (sqleditor.js?ver=42000:1) > at Object.callback (vendor.others.js?ver=42000:2) > at Tt (vendor.others.js?ver=42000:2) > at Object.Ct (vendor.others.js?ver=42000:2) > at HTMLDivElement. (vendor.others.js?ver=42000:2) > > If possible can you please fix the above and resend the combined patch. > > On Fri, Apr 10, 2020 at 7:02 PM Murtuza Zabuawala < > murtuza.zabuawala@enterprisedb.com> wrote: > >> Hi, >> >> Upon downloading the csv file, we used the prompt for re-connecting to >> the database server when there is a database server connection issue. >> Currently the user tries to download CSV and there is a connection issue >> then it is showing a python exception error. >> >> Steps: >> 1) Open query tool >> 2) Execute -> SELECT 1,2,3 >> 3) Disconnect from server from browser tree >> 4) Click on Download CSV button >> >> Current: Python exception error >> Expected: It should display dialog to reconnect the server. >> >> >> -- >> Regards, >> Murtuza Zabuawala >> EnterpriseDB: http://www.enterprisedb.com >> The Enterprise PostgreSQL Company >> >> > > -- > *Thanks & Regards* > *Akshay Joshi* > > *Sr. Software Architect* > *EnterpriseDB Software India Private Limited* > *Mobile: +91 976-788-8246* > --000000000000e4d38c05a34ec30e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Akshay,

PFA u= pdated patch.


<= div dir=3D"ltr">
--
Regards,
Murtuza Zabuawala
Enterpris= eDB:=C2=A0http://www.enterprisedb.com
The Enterprise PostgreSQL C= ompany

<= /div>

=

= On Mon, Apr 13, 2020 at 2:28 PM Akshay Joshi <akshay.joshi@enterprisedb.com&= gt; wrote:
Hi=C2=A0Murtuza
<= br>
The issue has been fixed with your patch, but there is an exi= sting issue discover with the fix.
After disconnecting the server= and click on Download CSV button confirmation dialog comes and user needs = to click twice.=C2=A0
Following error observed in the browser:

sqleditor.js?ver=3D42000:1 Uncaught TypeError: Canno= t read property 'apply' of undefined
=C2=A0 =C2=A0 at Object.<= ;anonymous> (sqleditor.js?ver=3D42000:1)
=C2=A0 =C2=A0 at Object.call= back (vendor.others.js?ver=3D42000:2)
=C2=A0 =C2=A0 at Tt (vendor.others= .js?ver=3D42000:2)
=C2=A0 =C2=A0 at Object.Ct (vendor.others.js?ver=3D42= 000:2)
=C2=A0 =C2=A0 at HTMLDivElement.<anonymous> (vendor.others.= js?ver=3D42000:2)

If possible can you please f= ix the above and resend the combined patch.

On Fri, Apr 10, 2020 at 7:= 02 PM Murtuza Zabuawala <murtuza.zabuawala@enterprisedb.com> wrote:<= br>
Hi,

Upon downloading the csv = file, we used the prompt for re-connecting to the database server when ther= e is a database server connection issue. Currently the user tries to downlo= ad CSV and there is a connection issue then it is showing a python exceptio= n error.

Steps:
1) Open query tool
2) Execute -> SELECT 1,2,= 3
3) Disconnect from server from browser tree
4) Click on Download CSV button

Current: Python exception error
Expected: = It should display=C2=A0dialog to reconnect the server.
=

<= div>
--
Regards,
Murtuza Zabu= awala
EnterpriseDB:=C2=A0http://www.enterprisedb.com
The Enter= prise PostgreSQL Company

<= /div>


--
Thanks & Regards
Akshay Joshi
<= font color=3D"#3333FF">Sr. Software Architect=
<= font color=3D"#000000" face=3D"arial, sans-serif">EnterpriseDB Software = India Private Limited
Mobile: +91 976-788-8246=
--000000000000e4d38c05a34ec30e-- --000000000000e4d38d05a34ec310 Content-Type: application/octet-stream; name="RM_4858_v1.diff" Content-Disposition: attachment; filename="RM_4858_v1.diff" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k90xe3zt0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3N0YXRpYy9qcy9zcWxlZGl0b3IvcXVlcnlfdG9vbF9o dHRwX2Vycm9yX2hhbmRsZXIuanMgYi93ZWIvcGdhZG1pbi9zdGF0aWMvanMvc3FsZWRpdG9yL3F1 ZXJ5X3Rvb2xfaHR0cF9lcnJvcl9oYW5kbGVyLmpzCmluZGV4IDk3NTc1YzFlYS4uNjUxZmY2ZTkx IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9zdGF0aWMvanMvc3FsZWRpdG9yL3F1ZXJ5X3Rvb2xf aHR0cF9lcnJvcl9oYW5kbGVyLmpzCisrKyBiL3dlYi9wZ2FkbWluL3N0YXRpYy9qcy9zcWxlZGl0 b3IvcXVlcnlfdG9vbF9odHRwX2Vycm9yX2hhbmRsZXIuanMKQEAgLTYzLDYgKzYzLDggQEAgZXhw b3J0IGZ1bmN0aW9uIGhhbmRsZVF1ZXJ5VG9vbEFqYXhFcnJvcigKIAogICAgIGlmKGV4Y2VwdGlv bi5zdGF0dXMgPT09IDUwMyAmJiBleGNlcHRpb24ucmVzcG9uc2VKU09OLmluZm8gIT09IHVuZGVm aW5lZCAmJgogICAgICAgICBleGNlcHRpb24ucmVzcG9uc2VKU09OLmluZm8gPT0gJ0NPTk5FQ1RJ T05fTE9TVCcpIHsKKyAgICAgIC8vIFdlIHdpbGwgZGlzcGxheSByZS1jb25uZWN0IGRpYWxvZywg bm8gbmVlZCB0byBkaXNwbGF5IGVycm9yIG1lc3NhZ2UgYWdhaW4KKyAgICAgIG1zZyA9IG51bGw7 CiAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICBpZiAoc3RhdGVUb1NhdmUp IHsKICAgICAgICAgICBoYW5kbGVyLnNhdmVTdGF0ZShzdGF0ZVRvU2F2ZSwgc3RhdGVQYXJhbWV0 ZXJzKTsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9fX2luaXRfXy5w eSBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9fX2luaXRfXy5weQppbmRleCAzODZhNjU1 ZTQuLjZkNTM2MzJhMSAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9yL19f aW5pdF9fLnB5CisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9fX2luaXRfXy5weQpA QCAtMTM3MCw4ICsxMzcwLDEyIEBAIGRlZiBzdGFydF9xdWVyeV9kb3dubG9hZF90b29sKHRyYW5z X2lkKToKICAgICAgICAgICAgICAgICBdID0gImF0dGFjaG1lbnQ7ZmlsZW5hbWU9ezB9Ii5mb3Jt YXQoZmlsZW5hbWUpCiAKICAgICAgICAgICAgICAgICByZXR1cm4gcgorICAgICAgICBleGNlcHQg KENvbm5lY3Rpb25Mb3N0LCBTU0hUdW5uZWxDb25uZWN0aW9uTG9zdCk6CisgICAgICAgICAgICBy YWlzZQogICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6Ci0gICAgICAgICAgICBlcnJfbXNn ID0gZ2V0dGV4dCgiRXJyb3I6IHswfSIpLmZvcm1hdChlLnN0cmVycm9yKQorICAgICAgICAgICAg Y3VycmVudF9hcHAubG9nZ2VyLmVycm9yKGUpCisgICAgICAgICAgICBlcnJfbXNnID0gIkVycm9y OiB7MH0iLmZvcm1hdCgKKyAgICAgICAgICAgICAgICBlLnN0cmVycm9yIGlmIGhhc2F0dHIoZSwg J3N0cmVycm9yJykgZWxzZSBzdHIoZSkpCiAgICAgICAgICAgICByZXR1cm4gaW50ZXJuYWxfc2Vy dmVyX2Vycm9yKGVycm9ybXNnPWVycl9tc2cpCiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuIGlu dGVybmFsX3NlcnZlcl9lcnJvcigKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVk aXRvci9zdGF0aWMvanMvc3FsZWRpdG9yLmpzIGIvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9y L3N0YXRpYy9qcy9zcWxlZGl0b3IuanMKaW5kZXggZjU1MTlmY2RmLi4xMjhlMzBiYjAgMTAwNjQ0 Ci0tLSBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMvanMvc3FsZWRpdG9yLmpz CisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMvanMvc3FsZWRpdG9yLmpz CkBAIC0xMzA1LDcgKzEzMDUsOCBAQCBkZWZpbmUoJ3Rvb2xzLnF1ZXJ5dG9vbCcsIFsKICAgICAg ICAgICBsZXQgbXNnID0gaHR0cEVycm9ySGFuZGxlci5oYW5kbGVRdWVyeVRvb2xBamF4RXJyb3Io CiAgICAgICAgICAgICBwZ0FkbWluLCBzZWxmLCBlLCBudWxsLCBbXSwgZmFsc2UKICAgICAgICAg ICApOwotICAgICAgICAgIHNlbGYudXBkYXRlX21zZ19oaXN0b3J5KGZhbHNlLCBtc2cpOworICAg ICAgICAgIGlmIChtc2cpCisgICAgICAgICAgICBzZWxmLnVwZGF0ZV9tc2dfaGlzdG9yeShmYWxz ZSwgbXNnKTsKICAgICAgICAgfSk7CiAgICAgfSwKIApAQCAtMjE1OSw4ICsyMTYwLDEyIEBAIGRl ZmluZSgndG9vbHMucXVlcnl0b29sJywgWwogICAgICAgICAgICAgICBpZiAoYXJncy5pbmRleE9m KCdjb25uZWN0JykgPT0gLTEpIHsKICAgICAgICAgICAgICAgICBhcmdzLnB1c2goJ2Nvbm5lY3Qn KTsKICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICBpZiAoZm4gaW4gc2VsZikgeworICAg ICAgICAgICAgICAgIHNlbGZbZm5dLmFwcGx5KHNlbGYsIGFyZ3MpOworICAgICAgICAgICAgICB9 IGVsc2UgeworICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignVGhlIGNhbGxiYWNrIGlzIG5v dCB2YWxpZCBmb3IgdGhpcyBjb250ZXh0Jyk7CisgICAgICAgICAgICAgIH0KIAotICAgICAgICAg ICAgICBzZWxmW2ZuXS5hcHBseShzZWxmLCBhcmdzKTsKICAgICAgICAgICAgIH0KICAgICAgICAg ICB9LCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgIHNlbGYuc2F2ZVN0YXRlKCk7CkBAIC0yMTk1 LDkgKzIyMDAsMTAgQEAgZGVmaW5lKCd0b29scy5xdWVyeXRvb2wnLCBbCiAgICAgICAgICAgICBs ZXQgbXNnID0gaHR0cEVycm9ySGFuZGxlci5oYW5kbGVRdWVyeVRvb2xBamF4RXJyb3IoCiAgICAg ICAgICAgICAgIHBnQWRtaW4sIHNlbGYsIHhociwgbnVsbCwgW10sIGZhbHNlCiAgICAgICAgICAg ICApOwotICAgICAgICAgICAgYWxlcnRpZnkuZGxnR2V0U2VydmVyUGFzcygKLSAgICAgICAgICAg ICAgZ2V0dGV4dCgnQ29ubmVjdCB0byBTZXJ2ZXInKSwgbXNnCi0gICAgICAgICAgICApOworICAg ICAgICAgICAgaWYgKG1zZykKKyAgICAgICAgICAgICAgYWxlcnRpZnkuZGxnR2V0U2VydmVyUGFz cygKKyAgICAgICAgICAgICAgICBnZXR0ZXh0KCdDb25uZWN0IHRvIFNlcnZlcicpLCBtc2cKKyAg ICAgICAgICAgICAgKTsKICAgICAgICAgICB9KTsKICAgICAgIH0sCiAgICAgICAvKiBUaGlzIGZ1 bmN0aW9uIGlzIHVzZWQgdG8gY3JlYXRlIGluc3RhbmNlIG9mIFNRTEVkaXRvclZpZXcsCkBAIC0y MzAwLDEwICsyMzA2LDEwIEBAIGRlZmluZSgndG9vbHMucXVlcnl0b29sJywgWwogICAgICAgICAg ICAgICAgIG1zZyA9IGh0dHBFcnJvckhhbmRsZXIuaGFuZGxlUXVlcnlUb29sQWpheEVycm9yKAog ICAgICAgICAgICAgICAgICAgcGdBZG1pbiwgc2VsZiwganF4LCBudWxsLCBbXSwgZmFsc2UKICAg ICAgICAgICAgICAgICApOwotCi0gICAgICAgICAgICAgICAgcGdCcm93c2VyLnJlcG9ydF9lcnJv cigKLSAgICAgICAgICAgICAgICAgIGdldHRleHQoJ0Vycm9yIGZldGNoaW5nIFNRTCBmb3Igc2Ny aXB0OiAlcy4nLCBtc2cpCi0gICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgICAgICBpZiAo bXNnKQorICAgICAgICAgICAgICAgICAgcGdCcm93c2VyLnJlcG9ydF9lcnJvcigKKyAgICAgICAg ICAgICAgICAgICAgZ2V0dGV4dCgnRXJyb3IgZmV0Y2hpbmcgU1FMIGZvciBzY3JpcHQ6ICVzLics IG1zZykKKyAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgIH0pOwogICAgICAgICAg IH0KICAgICAgICAgfQpAQCAtMjQ4NCw3ICsyNDkwLDggQEAgZGVmaW5lKCd0b29scy5xdWVyeXRv b2wnLCBbCiAgICAgICAgICAgICBsZXQgbXNnID0gaHR0cEVycm9ySGFuZGxlci5oYW5kbGVRdWVy eVRvb2xBamF4RXJyb3IoCiAgICAgICAgICAgICAgIHBnQWRtaW4sIHNlbGYsIGUsICdfZXhlY3V0 ZV92aWV3X2RhdGFfcXVlcnknLCBbXSwgdHJ1ZQogICAgICAgICAgICAgKTsKLSAgICAgICAgICAg IHNlbGYudXBkYXRlX21zZ19oaXN0b3J5KGZhbHNlLCBtc2cpOworICAgICAgICAgICAgaWYgKG1z ZykKKyAgICAgICAgICAgICAgc2VsZi51cGRhdGVfbXNnX2hpc3RvcnkoZmFsc2UsIG1zZyk7CiAg ICAgICAgICAgfSk7CiAgICAgICB9LAogCkBAIC0zMjM3LDcgKzMyNDQsOCBAQCBkZWZpbmUoJ3Rv b2xzLnF1ZXJ5dG9vbCcsIFsKICAgICAgICAgICAgIC8vIEVuYWJsZSBxdWVyeSB0b29sIGJ1dHRv bnMgYW5kIGNhbmNlbCBidXR0b24gb25seSBpZiBxdWVyeSB0b29sCiAgICAgICAgICAgICBpZihz ZWxmLmlzX3F1ZXJ5X3Rvb2wpCiAgICAgICAgICAgICAgIHNlbGYuZGlzYWJsZV90b29sX2J1dHRv bnMoZmFsc2UpOwotICAgICAgICAgICAgc2VsZi51cGRhdGVfbXNnX2hpc3RvcnkoZmFsc2UsIG1z Zyk7CisgICAgICAgICAgICBpZiAobXNnKQorICAgICAgICAgICAgICBzZWxmLnVwZGF0ZV9tc2df aGlzdG9yeShmYWxzZSwgbXNnKTsKICAgICAgICAgICB9KTsKICAgICAgIH0sCiAKQEAgLTMzOTUs NyArMzQwMyw4IEBAIGRlZmluZSgndG9vbHMucXVlcnl0b29sJywgWwogICAgICAgICAgICAgbGV0 IG1zZyA9IGh0dHBFcnJvckhhbmRsZXIuaGFuZGxlUXVlcnlUb29sQWpheEVycm9yKAogICAgICAg ICAgICAgICBwZ0FkbWluLCBzZWxmLCBlLCAnX3NlbGVjdF9maWxlX2hhbmRsZXInLCBzdGF0ZVBh cmFtcywgZmFsc2UKICAgICAgICAgICAgICk7Ci0gICAgICAgICAgICBhbGVydGlmeS5lcnJvciht c2cpOworICAgICAgICAgICAgaWYgKG1zZykKKyAgICAgICAgICAgICAgYWxlcnRpZnkuZXJyb3Io bXNnKTsKICAgICAgICAgICAgIC8vIGhpZGUgY3Vyc29yCiAgICAgICAgICAgICAkYnVzeV9pY29u X2Rpdi5yZW1vdmVDbGFzcygnc2hvd19wcm9ncmVzcycpOwogICAgICAgICAgIH0pOwpAQCAtMzQ0 Niw3ICszNDU1LDggQEAgZGVmaW5lKCd0b29scy5xdWVyeXRvb2wnLCBbCiAgICAgICAgICAgICBs ZXQgbXNnID0gaHR0cEVycm9ySGFuZGxlci5oYW5kbGVRdWVyeVRvb2xBamF4RXJyb3IoCiAgICAg ICAgICAgICAgIHBnQWRtaW4sIHNlbGYsIGUsICdfc2F2ZV9maWxlX2hhbmRsZXInLCBzdGF0ZVBh cmFtcywgZmFsc2UKICAgICAgICAgICAgICk7Ci0gICAgICAgICAgICBhbGVydGlmeS5lcnJvciht c2cpOworICAgICAgICAgICAgaWYgKG1zZykKKyAgICAgICAgICAgICAgYWxlcnRpZnkuZXJyb3Io bXNnKTsKICAgICAgICAgICB9KTsKICAgICAgIH0sCiAKQEAgLTM1NzUsNyArMzU4NSw4IEBAIGRl ZmluZSgndG9vbHMucXVlcnl0b29sJywgWwogICAgICAgICAgICAgbGV0IG1zZyA9IGh0dHBFcnJv ckhhbmRsZXIuaGFuZGxlUXVlcnlUb29sQWpheEVycm9yKAogICAgICAgICAgICAgICBwZ0FkbWlu LCBzZWxmLCBlLCAnX2luY2x1ZGVfZmlsdGVyJywgW10sIHRydWUKICAgICAgICAgICAgICk7Ci0g ICAgICAgICAgICBhbGVydGlmeS5hbGVydChnZXR0ZXh0KCdGaWx0ZXIgQnkgU2VsZWN0aW9uIEVy cm9yJyksIG1zZyk7CisgICAgICAgICAgICBpZiAobXNnKQorICAgICAgICAgICAgICBhbGVydGlm eS5hbGVydChnZXR0ZXh0KCdGaWx0ZXIgQnkgU2VsZWN0aW9uIEVycm9yJyksIG1zZyk7CiAgICAg ICAgICAgfSk7CiAgICAgICB9LAogCkBAIC0zNjM0LDcgKzM2NDUsOCBAQCBkZWZpbmUoJ3Rvb2xz LnF1ZXJ5dG9vbCcsIFsKICAgICAgICAgICAgIGxldCBtc2cgPSBodHRwRXJyb3JIYW5kbGVyLmhh bmRsZVF1ZXJ5VG9vbEFqYXhFcnJvcigKICAgICAgICAgICAgICAgcGdBZG1pbiwgc2VsZiwgZSwg J19leGNsdWRlX2ZpbHRlcicsIFtdLCB0cnVlCiAgICAgICAgICAgICApOwotICAgICAgICAgICAg YWxlcnRpZnkuYWxlcnQoZ2V0dGV4dCgnRmlsdGVyIEV4Y2x1ZGUgU2VsZWN0aW9uIEVycm9yJyks IG1zZyk7CisgICAgICAgICAgICBpZiAobXNnKQorICAgICAgICAgICAgICBhbGVydGlmeS5hbGVy dChnZXR0ZXh0KCdGaWx0ZXIgRXhjbHVkZSBTZWxlY3Rpb24gRXJyb3InKSwgbXNnKTsKICAgICAg ICAgICB9KTsKICAgICAgIH0sCiAKQEAgLTM2NzIsNyArMzY4NCw4IEBAIGRlZmluZSgndG9vbHMu cXVlcnl0b29sJywgWwogICAgICAgICAgICAgbGV0IG1zZyA9IGh0dHBFcnJvckhhbmRsZXIuaGFu ZGxlUXVlcnlUb29sQWpheEVycm9yKAogICAgICAgICAgICAgICBwZ0FkbWluLCBzZWxmLCBlLCAn X3JlbW92ZV9maWx0ZXInLCBbXSwgdHJ1ZQogICAgICAgICAgICAgKTsKLSAgICAgICAgICAgIGFs ZXJ0aWZ5LmFsZXJ0KGdldHRleHQoJ1JlbW92ZSBGaWx0ZXIgRXJyb3InKSwgbXNnKTsKKyAgICAg ICAgICAgIGlmIChtc2cpCisgICAgICAgICAgICAgIGFsZXJ0aWZ5LmFsZXJ0KGdldHRleHQoJ1Jl bW92ZSBGaWx0ZXIgRXJyb3InKSwgbXNnKTsKICAgICAgICAgICB9KTsKICAgICAgIH0sCiAKQEAg LTM4MDMsNyArMzgxNiw4IEBAIGRlZmluZSgndG9vbHMucXVlcnl0b29sJywgWwogICAgICAgICAg ICAgbGV0IG1zZyA9IGh0dHBFcnJvckhhbmRsZXIuaGFuZGxlUXVlcnlUb29sQWpheEVycm9yKAog ICAgICAgICAgICAgICBwZ0FkbWluLCBzZWxmLCBlLCAnX3NldF9saW1pdCcsIFtdLCB0cnVlCiAg ICAgICAgICAgICApOwotICAgICAgICAgICAgYWxlcnRpZnkuYWxlcnQoZ2V0dGV4dCgnQ2hhbmdl IGxpbWl0IEVycm9yJyksIG1zZyk7CisgICAgICAgICAgICBpZiAobXNnKQorICAgICAgICAgICAg ICBhbGVydGlmeS5hbGVydChnZXR0ZXh0KCdDaGFuZ2UgbGltaXQgRXJyb3InKSwgbXNnKTsKICAg ICAgICAgICB9KTsKICAgICAgIH0sCiAKQEAgLTM5NDgsNyArMzk2Miw4IEBAIGRlZmluZSgndG9v bHMucXVlcnl0b29sJywgWwogICAgICAgICAgICAgbGV0IG1zZyA9IGh0dHBFcnJvckhhbmRsZXIu aGFuZGxlUXVlcnlUb29sQWpheEVycm9yKAogICAgICAgICAgICAgICBwZ0FkbWluLCBzZWxmLCBl LCAnX2NhbmNlbF9xdWVyeScsIFtdLCBmYWxzZQogICAgICAgICAgICAgKTsKLSAgICAgICAgICAg IGFsZXJ0aWZ5LmFsZXJ0KGdldHRleHQoJ0NhbmNlbCBRdWVyeSBFcnJvcicpLCBtc2cpOworICAg ICAgICAgICAgaWYgKG1zZykKKyAgICAgICAgICAgICAgYWxlcnRpZnkuYWxlcnQoZ2V0dGV4dCgn Q2FuY2VsIFF1ZXJ5IEVycm9yJyksIG1zZyk7CiAgICAgICAgICAgfSk7CiAgICAgICB9LAogCkBA IC00MDEyLDcgKzQwMjcsNiBAQCBkZWZpbmUoJ3Rvb2xzLnF1ZXJ5dG9vbCcsIFsKICAgICAgICAg ICBzZWxmLnRyaWdnZXIoJ3BnYWRtaW4tc3FsZWRpdG9yOmxvYWRpbmctaWNvbjpoaWRlJyk7CiAg ICAgICAgIH0pLmZhaWwoZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgbGV0IG1zZyA9ICcnOwot CiAgICAgICAgICAgLy8gRW5hYmxlIHRoZSBleGVjdXRlIGJ1dHRvbgogICAgICAgICAgICQoJyNi dG4tZmxhc2gnKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsKICAgICAgICAgICAkKCcjYnRuLWRv d25sb2FkJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7CkBAIC00MDI0LDEwICs0MDM4LDEyIEBA IGRlZmluZSgndG9vbHMucXVlcnl0b29sJywgWwogICAgICAgICAgICAgbXNnID0gZ2V0dGV4dCgn Q1NWIERvd25sb2FkIGNhbmNlbGxlZC4nKTsKICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAg ICAgbXNnID0gaHR0cEVycm9ySGFuZGxlci5oYW5kbGVRdWVyeVRvb2xBamF4RXJyb3IoCi0gICAg ICAgICAgICAgIHBnQWRtaW4sIHNlbGYsIGVyciwgZ2V0dGV4dCgnRG93bmxvYWQgQ1NWJyksIFtd LCB0cnVlCisgICAgICAgICAgICAgIHBnQWRtaW4sIHNlbGYsIGVyciwgJ3RyaWdnZXJfY3N2X2Rv d25sb2FkJywgW10sIHRydWUKICAgICAgICAgICAgICk7CiAgICAgICAgICAgfQotICAgICAgICAg IGFsZXJ0aWZ5LmFsZXJ0KGdldHRleHQoJ0Rvd25sb2FkIENTViBlcnJvcicpLCBtc2cpOworICAg ICAgICAgIC8vIENoZWNrIGlmIGVycm9yIG1lc3NhZ2UgaXMgcHJlc2VudAorICAgICAgICAgIGlm IChtc2cpCisgICAgICAgICAgICBhbGVydGlmeS5hbGVydChnZXR0ZXh0KCdEb3dubG9hZCBDU1Yg ZXJyb3InKSwgbXNnKTsKICAgICAgICAgfSk7CiAgICAgICB9LAogCkBAIC00MDY4LDcgKzQwODQs OCBAQCBkZWZpbmUoJ3Rvb2xzLnF1ZXJ5dG9vbCcsIFsKICAgICAgICAgICAgIGxldCBtc2cgPSBo dHRwRXJyb3JIYW5kbGVyLmhhbmRsZVF1ZXJ5VG9vbEFqYXhFcnJvcigKICAgICAgICAgICAgICAg cGdBZG1pbiwgc2VsZiwgZSwgJ19hdXRvX3JvbGxiYWNrJywgW10sIHRydWUKICAgICAgICAgICAg ICk7Ci0gICAgICAgICAgICBhbGVydGlmeS5hbGVydChnZXR0ZXh0KCdBdXRvIFJvbGxiYWNrIEVy cm9yJyksIG1zZyk7CisgICAgICAgICAgICBpZiAobXNnKQorICAgICAgICAgICAgICBhbGVydGlm eS5hbGVydChnZXR0ZXh0KCdBdXRvIFJvbGxiYWNrIEVycm9yJyksIG1zZyk7CiAgICAgICAgICAg fSk7CiAgICAgICB9LAogCkBAIC00MTAwLDcgKzQxMTcsOCBAQCBkZWZpbmUoJ3Rvb2xzLnF1ZXJ5 dG9vbCcsIFsKICAgICAgICAgICAgIGxldCBtc2cgPSBodHRwRXJyb3JIYW5kbGVyLmhhbmRsZVF1 ZXJ5VG9vbEFqYXhFcnJvcigKICAgICAgICAgICAgICAgcGdBZG1pbiwgc2VsZiwgZSwgJ19hdXRv X2NvbW1pdCcsIFtdLCB0cnVlCiAgICAgICAgICAgICApOwotICAgICAgICAgICAgYWxlcnRpZnku YWxlcnQoZ2V0dGV4dCgnQXV0byBDb21taXQgRXJyb3InKSwgbXNnKTsKKyAgICAgICAgICAgIGlm IChtc2cpCisgICAgICAgICAgICAgIGFsZXJ0aWZ5LmFsZXJ0KGdldHRleHQoJ0F1dG8gQ29tbWl0 IEVycm9yJyksIG1zZyk7CiAgICAgICAgICAgfSk7CiAKICAgICAgIH0sCg== --000000000000e4d38d05a34ec310--