From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.bugs Subject: bug#18367: 24.4.50; [PATCH] Text property `font-lock-ignore', to protect from font-lock Date: Sat, 30 Aug 2014 13:12:44 -0700 (PDT) Message-ID: <86f1a219-9ab5-439f-85ca-936b942cb034@default> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="__1409429562652271229abhmp0018.oracle.com" X-Trace: ger.gmane.org 1409429668 3262 80.91.229.3 (30 Aug 2014 20:14:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 30 Aug 2014 20:14:28 +0000 (UTC) To: 18367@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Aug 30 22:14:20 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XNp2R-0006CT-4M for geb-bug-gnu-emacs@m.gmane.org; Sat, 30 Aug 2014 22:14:19 +0200 Original-Received: from localhost ([::1]:47645 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNp2Q-0008TS-Gj for geb-bug-gnu-emacs@m.gmane.org; Sat, 30 Aug 2014 16:14:18 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45619) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNp2G-0008S2-Vx for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:14:15 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XNp2A-0007iF-Cl for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:14:08 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:34846) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNp2A-0007i5-9o for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:14:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XNp29-00043E-Se for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:14:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 30 Aug 2014 20:14:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 18367 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.140942960315516 (code B ref -1); Sat, 30 Aug 2014 20:14:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 30 Aug 2014 20:13:23 +0000 Original-Received: from localhost ([127.0.0.1]:54643 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XNp1W-00042B-Tp for submit@debbugs.gnu.org; Sat, 30 Aug 2014 16:13:23 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:43806) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XNp1U-00041x-Bs for submit@debbugs.gnu.org; Sat, 30 Aug 2014 16:13:21 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XNp1I-0007bs-EX for submit@debbugs.gnu.org; Sat, 30 Aug 2014 16:13:14 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:39207) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNp1I-0007bl-Bl for submit@debbugs.gnu.org; Sat, 30 Aug 2014 16:13:08 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45508) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNp1C-0008Id-6D for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:13:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XNp12-0007Yt-SH for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:13:02 -0400 Original-Received: from userp1040.oracle.com ([156.151.31.81]:18844) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNp12-0007YL-Hn for bug-gnu-emacs@gnu.org; Sat, 30 Aug 2014 16:12:52 -0400 Original-Received: from acsinet22.oracle.com (acsinet22.oracle.com [141.146.126.238]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id s7UKCiOX018252 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Sat, 30 Aug 2014 20:12:45 GMT Original-Received: from userz7021.oracle.com (userz7021.oracle.com [156.151.31.85]) by acsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s7UKChZv008883 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Sat, 30 Aug 2014 20:12:44 GMT Original-Received: from abhmp0018.oracle.com (abhmp0018.oracle.com [141.146.116.24]) by userz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id s7UKCg9X001868 for ; Sat, 30 Aug 2014 20:12:43 GMT X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.8.2 (807160) [OL 12.0.6691.5000 (x86)] X-Source-IP: acsinet22.oracle.com [141.146.126.238] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.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-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:92883 Archived-At: --__1409429562652271229abhmp0018.oracle.com Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Bug or missing feature: Prevent font-lock from changing text properties on text that has property `font-lock-ignore'. See http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00540.html Patch attached. ChangeLog entry: 2014-08-30 Drew Adams =09* font-lock.el: Respect text property `font-lock-ignore'. (put-text-property-unless-ignore): New function. =09(font-lock-default-unfontify-region): Do not unfontify if =09text has property `font-lock-ignore'. =09(font-lock-prepend-text-property, font-lock-append-text-property) =09(font-lock-fillin-text-property, font-lock-apply-syntactic-highlight) =09(font-lock-fontify-syntactically-region, font-lock-apply-highlight) =09(font-lock-fontify-anchored-keywords) =09(font-lock-fontify-keywords-region): Use put-text-property-unless-ignore, not put-text-property. In GNU Emacs 24.4.50.1 (i686-pc-mingw32) of 2014-08-15 on LEG570 Bzr revision: 117706 rgm@gnu.org-20140815043406-p5hbu97cbm7pulcn Windowing system distributor `Microsoft Corp.', version 6.1.7601 Configured using: `configure --enable-checking 'CFLAGS=3D-O0 -g3' CPPFLAGS=3D-DGLYPH_DEBUG= =3D1' --__1409429562652271229abhmp0018.oracle.com Content-Type: application/octet-stream; name="font-lock-2014-08-30.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="font-lock-2014-08-30.patch" ZGlmZiAtYyBmb250LWxvY2suZWwgZm9udC1sb2NrLXBhdGNoZWQtMjAxNC0wOC0zMC5lbAoqKiog Zm9udC1sb2NrLmVsCVNhdCBBdWcgMzAgMTA6MTk6MjYgMjAxNAotLS0gZm9udC1sb2NrLXBhdGNo ZWQtMjAxNC0wOC0zMC5lbAlTYXQgQXVnIDMwIDExOjQ1OjUyIDIwMTQKKioqKioqKioqKioqKioq CioqKiAxMjM2LDEyNDkgKioqKgogIHdoYXQgcHJvcGVydGllcyB0byBjbGVhciBiZWZvcmUgcmVm b250aWZ5aW5nIGEgcmVnaW9uLiIpCiAgCiAgKGRlZnVuIGZvbnQtbG9jay1kZWZhdWx0LXVuZm9u dGlmeS1yZWdpb24gKGJlZyBlbmQpCiEgICAiVW5mb250aWZ5IHRoZSB0ZXh0IGJldHdlZW4gQkVH IGFuZCBFTkQuCiEgVGhpcyBmdW5jdGlvbiBpcyB0aGUgZGVmYXVsdCBgZm9udC1sb2NrLXVuZm9u dGlmeS1yZWdpb24tZnVuY3Rpb24nLiIKISAgIChyZW1vdmUtbGlzdC1vZi10ZXh0LXByb3BlcnRp ZXMKISAgICBiZWcgZW5kIChhcHBlbmQKISAJICAgIGZvbnQtbG9jay1leHRyYS1tYW5hZ2VkLXBy b3BzCiEgCSAgICAoaWYgZm9udC1sb2NrLXN5bnRhY3RpYy1rZXl3b3JkcwohIAkJJyhzeW50YXgt dGFibGUgZmFjZSBmb250LWxvY2stbXVsdGlsaW5lKQohIAkgICAgICAnKGZhY2UgZm9udC1sb2Nr LW11bHRpbGluZSkpKSkpCiAgCiAgOzsgQ2FsbGVkIHdoZW4gYW55IG1vZGlmaWNhdGlvbiBpcyBt YWRlIHRvIGJ1ZmZlciB0ZXh0LgogIChkZWZ1biBmb250LWxvY2stYWZ0ZXItY2hhbmdlLWZ1bmN0 aW9uIChiZWcgZW5kICZvcHRpb25hbCBvbGQtbGVuKQotLS0gMTIzNiwxMjU0IC0tLS0KICB3aGF0 IHByb3BlcnRpZXMgdG8gY2xlYXIgYmVmb3JlIHJlZm9udGlmeWluZyBhIHJlZ2lvbi4iKQogIAog IChkZWZ1biBmb250LWxvY2stZGVmYXVsdC11bmZvbnRpZnktcmVnaW9uIChiZWcgZW5kKQohICAg IlVuZm9udGlmeSBmcm9tIEJFRyB0byBFTkQsIGV4Y2VwdCB0ZXh0IHdpdGggcHJvcGVydHkgYGZv bnQtbG9jay1pZ25vcmUnLiIKISAgIChsZXQgKChoZXJlICAobWluIGJlZyBlbmQpKQohICAgICAg ICAgKGVuZDEgIChtYXggYmVnIGVuZCkpCiEgICAgICAgICBjaGcpCiEgICAgICh3aGlsZSAoPCBo ZXJlIGVuZDEpCiEgICAgICAgKHNldHEgY2hnICAobmV4dC1zaW5nbGUtcHJvcGVydHktY2hhbmdl IGhlcmUgJ2ZvbnQtbG9jay1pZ25vcmUgbmlsIGVuZDEpKQohICAgICAgICh1bmxlc3MgKGdldC10 ZXh0LXByb3BlcnR5IGhlcmUgJ2ZvbnQtbG9jay1pZ25vcmUpCiEgICAgICAgICAocmVtb3ZlLWxp c3Qtb2YtdGV4dC1wcm9wZXJ0aWVzCiEgICAgICAgICAgaGVyZSBjaGcgKGFwcGVuZCBmb250LWxv Y2stZXh0cmEtbWFuYWdlZC1wcm9wcwohICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGZv bnQtbG9jay1zeW50YWN0aWMta2V5d29yZHMKISAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAnKHN5bnRheC10YWJsZSBmYWNlIGZvbnQtbG9jay1tdWx0aWxpbmUpCiEgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICcoZmFjZSBmb250LWxvY2stbXVsdGlsaW5lKSkpKSkKISAgICAgICAo c2V0cSBoZXJlICBjaGcpKSkpCiAgCiAgOzsgQ2FsbGVkIHdoZW4gYW55IG1vZGlmaWNhdGlvbiBp cyBtYWRlIHRvIGJ1ZmZlciB0ZXh0LgogIChkZWZ1biBmb250LWxvY2stYWZ0ZXItY2hhbmdlLWZ1 bmN0aW9uIChiZWcgZW5kICZvcHRpb25hbCBvbGQtbGVuKQoqKioqKioqKioqKioqKioKKioqIDEz ODAsMTM4OCAqKioqCiAgCSAgIChvciAoa2V5d29yZHAgKGNhciBwcmV2KSkKICAJICAgICAgICht ZW1xIChjYXIgcHJldikgJyhmb3JlZ3JvdW5kLWNvbG9yIGJhY2tncm91bmQtY29sb3IpKSkKICAJ ICAgKHNldHEgcHJldiAobGlzdCBwcmV2KSkpCiEgICAgICAgKHB1dC10ZXh0LXByb3BlcnR5IHN0 YXJ0IG5leHQgcHJvcAohIAkJCSAoYXBwZW5kIHZhbCAoaWYgKGxpc3RwIHByZXYpIHByZXYgKGxp c3QgcHJldikpKQohIAkJCSBvYmplY3QpCiAgICAgICAgKHNldHEgc3RhcnQgbmV4dCkpKSkKICAK ICAoZGVmdW4gZm9udC1sb2NrLWFwcGVuZC10ZXh0LXByb3BlcnR5IChzdGFydCBlbmQgcHJvcCB2 YWx1ZSAmb3B0aW9uYWwgb2JqZWN0KQotLS0gMTM4NSwxMzkzIC0tLS0KICAJICAgKG9yIChrZXl3 b3JkcCAoY2FyIHByZXYpKQogIAkgICAgICAgKG1lbXEgKGNhciBwcmV2KSAnKGZvcmVncm91bmQt Y29sb3IgYmFja2dyb3VuZC1jb2xvcikpKQogIAkgICAoc2V0cSBwcmV2IChsaXN0IHByZXYpKSkK ISAgICAgICAocHV0LXRleHQtcHJvcGVydHktdW5sZXNzLWlnbm9yZSBzdGFydCBuZXh0IHByb3AK ISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYXBwZW5kIHZhbCAoaWYg KGxpc3RwIHByZXYpIHByZXYgKGxpc3QgcHJldikpKQohICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG9iamVjdCkKICAgICAgICAoc2V0cSBzdGFydCBuZXh0KSkpKQogIAog IChkZWZ1biBmb250LWxvY2stYXBwZW5kLXRleHQtcHJvcGVydHkgKHN0YXJ0IGVuZCBwcm9wIHZh bHVlICZvcHRpb25hbCBvYmplY3QpCioqKioqKioqKioqKioqKgoqKiogMTQwMCwxNDA4ICoqKioK ICAJICAgKG9yIChrZXl3b3JkcCAoY2FyIHByZXYpKQogIAkgICAgICAgKG1lbXEgKGNhciBwcmV2 KSAnKGZvcmVncm91bmQtY29sb3IgYmFja2dyb3VuZC1jb2xvcikpKQogIAkgICAoc2V0cSBwcmV2 IChsaXN0IHByZXYpKSkKISAgICAgICAocHV0LXRleHQtcHJvcGVydHkgc3RhcnQgbmV4dCBwcm9w CiEgCQkJIChhcHBlbmQgKGlmIChsaXN0cCBwcmV2KSBwcmV2IChsaXN0IHByZXYpKSB2YWwpCiEg CQkJIG9iamVjdCkKICAgICAgICAoc2V0cSBzdGFydCBuZXh0KSkpKQogIAogIChkZWZ1biBmb250 LWxvY2stZmlsbGluLXRleHQtcHJvcGVydHkgKHN0YXJ0IGVuZCBwcm9wIHZhbHVlICZvcHRpb25h bCBvYmplY3QpCi0tLSAxNDA1LDE0MTMgLS0tLQogIAkgICAob3IgKGtleXdvcmRwIChjYXIgcHJl dikpCiAgCSAgICAgICAobWVtcSAoY2FyIHByZXYpICcoZm9yZWdyb3VuZC1jb2xvciBiYWNrZ3Jv dW5kLWNvbG9yKSkpCiAgCSAgIChzZXRxIHByZXYgKGxpc3QgcHJldikpKQohICAgICAgIChwdXQt dGV4dC1wcm9wZXJ0eS11bmxlc3MtaWdub3JlIHN0YXJ0IG5leHQgcHJvcAohICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChhcHBlbmQgKGlmIChsaXN0cCBwcmV2KSBwcmV2 IChsaXN0IHByZXYpKSB2YWwpCiEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgb2JqZWN0KQogICAgICAgIChzZXRxIHN0YXJ0IG5leHQpKSkpCiAgCiAgKGRlZnVuIGZvbnQt bG9jay1maWxsaW4tdGV4dC1wcm9wZXJ0eSAoc3RhcnQgZW5kIHByb3AgdmFsdWUgJm9wdGlvbmFs IG9iamVjdCkKKioqKioqKioqKioqKioqCioqKiAxNDEzLDE0MTkgKioqKgogICAgKGxldCAoKHN0 YXJ0ICh0ZXh0LXByb3BlcnR5LWFueSBzdGFydCBlbmQgcHJvcCBuaWwgb2JqZWN0KSkgbmV4dCkK ICAgICAgKHdoaWxlIHN0YXJ0CiAgICAgICAgKHNldHEgbmV4dCAobmV4dC1zaW5nbGUtcHJvcGVy dHktY2hhbmdlIHN0YXJ0IHByb3Agb2JqZWN0IGVuZCkpCiEgICAgICAgKHB1dC10ZXh0LXByb3Bl cnR5IHN0YXJ0IG5leHQgcHJvcCB2YWx1ZSBvYmplY3QpCiAgICAgICAgKHNldHEgc3RhcnQgKHRl eHQtcHJvcGVydHktYW55IG5leHQgZW5kIHByb3AgbmlsIG9iamVjdCkpKSkpCiAgCiAgOzsgRm9y IGNvbXBsZXRlbmVzczogdGhpcyBpcyB0byBgcmVtb3ZlLXRleHQtcHJvcGVydGllcycgYXMgYHB1 dC10ZXh0LXByb3BlcnR5JwotLS0gMTQxOCwxNDI0IC0tLS0KICAgIChsZXQgKChzdGFydCAodGV4 dC1wcm9wZXJ0eS1hbnkgc3RhcnQgZW5kIHByb3AgbmlsIG9iamVjdCkpIG5leHQpCiAgICAgICh3 aGlsZSBzdGFydAogICAgICAgIChzZXRxIG5leHQgKG5leHQtc2luZ2xlLXByb3BlcnR5LWNoYW5n ZSBzdGFydCBwcm9wIG9iamVjdCBlbmQpKQohICAgICAgIChwdXQtdGV4dC1wcm9wZXJ0eS11bmxl c3MtaWdub3JlIHN0YXJ0IG5leHQgcHJvcCB2YWx1ZSBvYmplY3QpCiAgICAgICAgKHNldHEgc3Rh cnQgKHRleHQtcHJvcGVydHktYW55IG5leHQgZW5kIHByb3AgbmlsIG9iamVjdCkpKSkpCiAgCiAg OzsgRm9yIGNvbXBsZXRlbmVzczogdGhpcyBpcyB0byBgcmVtb3ZlLXRleHQtcHJvcGVydGllcycg YXMgYHB1dC10ZXh0LXByb3BlcnR5JwoqKioqKioqKioqKioqKioKKioqIDE0ODAsMTQ5NSAqKioq CiAgICAgICAgOzsgc3RpbGwgYmUgbmVjZXNzYXJ5IGZvciBvdGhlciB1c2VycyBvZiBzeW50YXgt cHBzcyBhbnl3YXkuCiAgICAgICAgKHN5bnRheC1wcHNzLWFmdGVyLWNoYW5nZS1mdW5jdGlvbiBz dGFydCkKICAgICAgICAoY29uZAohICAgICAgICAoKG5vdCBvdmVycmlkZSkKISAJOzsgQ2Fubm90 IG92ZXJyaWRlIGV4aXN0aW5nIGZvbnRpZmljYXRpb24uCiEgCShvciAodGV4dC1wcm9wZXJ0eS1u b3QtYWxsIHN0YXJ0IGVuZCAnc3ludGF4LXRhYmxlIG5pbCkKISAJICAgIChwdXQtdGV4dC1wcm9w ZXJ0eSBzdGFydCBlbmQgJ3N5bnRheC10YWJsZSB2YWx1ZSkpKQohICAgICAgICAoKGVxIG92ZXJy aWRlIHQpCiEgCTs7IE92ZXJyaWRlIGV4aXN0aW5nIGZvbnRpZmljYXRpb24uCiEgCShwdXQtdGV4 dC1wcm9wZXJ0eSBzdGFydCBlbmQgJ3N5bnRheC10YWJsZSB2YWx1ZSkpCiEgICAgICAgICgoZXEg b3ZlcnJpZGUgJ2tlZXApCiEgCTs7IEtlZXAgZXhpc3RpbmcgZm9udGlmaWNhdGlvbi4KISAJKGZv bnQtbG9jay1maWxsaW4tdGV4dC1wcm9wZXJ0eSBzdGFydCBlbmQgJ3N5bnRheC10YWJsZSB2YWx1 ZSkpKSkpKQogIAogIChkZWZ1biBmb250LWxvY2stZm9udGlmeS1zeW50YWN0aWMtYW5jaG9yZWQt a2V5d29yZHMgKGtleXdvcmRzIGxpbWl0KQogICAgIkZvbnRpZnkgYWNjb3JkaW5nIHRvIEtFWVdP UkRTIHVudGlsIExJTUlULgotLS0gMTQ4NSwxNTAwIC0tLS0KICAgICAgICA7OyBzdGlsbCBiZSBu ZWNlc3NhcnkgZm9yIG90aGVyIHVzZXJzIG9mIHN5bnRheC1wcHNzIGFueXdheS4KICAgICAgICAo c3ludGF4LXBwc3MtYWZ0ZXItY2hhbmdlLWZ1bmN0aW9uIHN0YXJ0KQogICAgICAgIChjb25kCiEg ICAgICAgICAoKG5vdCBvdmVycmlkZSkKISAgICAgICAgICA7OyBDYW5ub3Qgb3ZlcnJpZGUgZXhp c3RpbmcgZm9udGlmaWNhdGlvbi4KISAgICAgICAgICAob3IgKHRleHQtcHJvcGVydHktbm90LWFs bCBzdGFydCBlbmQgJ3N5bnRheC10YWJsZSBuaWwpCiEgICAgICAgICAgICAgIChwdXQtdGV4dC1w cm9wZXJ0eS11bmxlc3MtaWdub3JlIHN0YXJ0IGVuZCAnc3ludGF4LXRhYmxlIHZhbHVlKSkpCiEg ICAgICAgICAoKGVxIG92ZXJyaWRlIHQpCiEgICAgICAgICAgOzsgT3ZlcnJpZGUgZXhpc3Rpbmcg Zm9udGlmaWNhdGlvbi4KISAgICAgICAgICAocHV0LXRleHQtcHJvcGVydHktdW5sZXNzLWlnbm9y ZSBzdGFydCBlbmQgJ3N5bnRheC10YWJsZSB2YWx1ZSkpCiEgICAgICAgICAoKGVxIG92ZXJyaWRl ICdrZWVwKQohICAgICAgICAgIDs7IEtlZXAgZXhpc3RpbmcgZm9udGlmaWNhdGlvbi4KISAgICAg ICAgICAoZm9udC1sb2NrLWZpbGxpbi10ZXh0LXByb3BlcnR5IHN0YXJ0IGVuZCAnc3ludGF4LXRh YmxlIHZhbHVlKSkpKSkpCiAgCiAgKGRlZnVuIGZvbnQtbG9jay1mb250aWZ5LXN5bnRhY3RpYy1h bmNob3JlZC1rZXl3b3JkcyAoa2V5d29yZHMgbGltaXQpCiAgICAiRm9udGlmeSBhY2NvcmRpbmcg dG8gS0VZV09SRFMgdW50aWwgTElNSVQuCioqKioqKioqKioqKioqKgoqKiogMTU4NSwxNTkxICoq KioKICAJICAgIChzZXRxIGJlZyAobWF4IChudGggOCBzdGF0ZSkgc3RhcnQpKQogIAkgICAgKHNl dHEgc3RhdGUgKHBhcnNlLXBhcnRpYWwtc2V4cCAocG9pbnQpIGVuZCBuaWwgbmlsIHN0YXRlCiAg CQkJCQkgICAgJ3N5bnRheC10YWJsZSkpCiEgCSAgICAod2hlbiBmYWNlIChwdXQtdGV4dC1wcm9w ZXJ0eSBiZWcgKHBvaW50KSAnZmFjZSBmYWNlKSkKICAJICAgICh3aGVuIChhbmQgKGVxIGZhY2Ug J2ZvbnQtbG9jay1jb21tZW50LWZhY2UpCiAgICAgICAgICAgICAgICAgICAgICAgICAob3IgZm9u dC1sb2NrLWNvbW1lbnQtc3RhcnQtc2tpcAogIAkJCSAgIGNvbW1lbnQtc3RhcnQtc2tpcCkpCi0t LSAxNTkwLDE1OTYgLS0tLQogIAkgICAgKHNldHEgYmVnIChtYXggKG50aCA4IHN0YXRlKSBzdGFy dCkpCiAgCSAgICAoc2V0cSBzdGF0ZSAocGFyc2UtcGFydGlhbC1zZXhwIChwb2ludCkgZW5kIG5p bCBuaWwgc3RhdGUKICAJCQkJCSAgICAnc3ludGF4LXRhYmxlKSkKISAJICAgICh3aGVuIGZhY2Ug KHB1dC10ZXh0LXByb3BlcnR5LXVubGVzcy1pZ25vcmUgYmVnIChwb2ludCkgJ2ZhY2UgZmFjZSkp CiAgCSAgICAod2hlbiAoYW5kIChlcSBmYWNlICdmb250LWxvY2stY29tbWVudC1mYWNlKQogICAg ICAgICAgICAgICAgICAgICAgICAgKG9yIGZvbnQtbG9jay1jb21tZW50LXN0YXJ0LXNraXAKICAJ CQkgICBjb21tZW50LXN0YXJ0LXNraXApKQoqKioqKioqKioqKioqKioKKioqIDE1OTUsMTYwNCAq KioqCiAgCQkoZ290by1jaGFyIGJlZykKICAJCShpZiAobG9va2luZy1hdCAob3IgZm9udC1sb2Nr LWNvbW1lbnQtc3RhcnQtc2tpcAogIAkJCQkgICAgY29tbWVudC1zdGFydC1za2lwKSkKISAJCSAg ICAocHV0LXRleHQtcHJvcGVydHkgYmVnIChtYXRjaC1lbmQgMCkgJ2ZhY2UKICAJCQkJICAgICAg IGZvbnQtbG9jay1jb21tZW50LWRlbGltaXRlci1mYWNlKSkpCiAgCSAgICAgIChpZiAobG9va2lu Zy1iYWNrIGNvbW1lbnQtZW5kLXJlZ2V4cCAocG9pbnQtYXQtYm9sKSB0KQohIAkJICAocHV0LXRl eHQtcHJvcGVydHkgKG1hdGNoLWJlZ2lubmluZyAwKSAocG9pbnQpICdmYWNlCiAgCQkJCSAgICAg Zm9udC1sb2NrLWNvbW1lbnQtZGVsaW1pdGVyLWZhY2UpKSkpCiAgCSAgKDwgKHBvaW50KSBlbmQp KQogICAgICAgIChzZXRxIHN0YXRlIChwYXJzZS1wYXJ0aWFsLXNleHAgKHBvaW50KSBlbmQgbmls IG5pbCBzdGF0ZQotLS0gMTYwMCwxNjA5IC0tLS0KICAJCShnb3RvLWNoYXIgYmVnKQogIAkJKGlm IChsb29raW5nLWF0IChvciBmb250LWxvY2stY29tbWVudC1zdGFydC1za2lwCiAgCQkJCSAgICBj b21tZW50LXN0YXJ0LXNraXApKQohIAkJICAgIChwdXQtdGV4dC1wcm9wZXJ0eS11bmxlc3MtaWdu b3JlIGJlZyAobWF0Y2gtZW5kIDApICdmYWNlCiAgCQkJCSAgICAgICBmb250LWxvY2stY29tbWVu dC1kZWxpbWl0ZXItZmFjZSkpKQogIAkgICAgICAoaWYgKGxvb2tpbmctYmFjayBjb21tZW50LWVu ZC1yZWdleHAgKHBvaW50LWF0LWJvbCkgdCkKISAJCSAgKHB1dC10ZXh0LXByb3BlcnR5LXVubGVz cy1pZ25vcmUgKG1hdGNoLWJlZ2lubmluZyAwKSAocG9pbnQpICdmYWNlCiAgCQkJCSAgICAgZm9u dC1sb2NrLWNvbW1lbnQtZGVsaW1pdGVyLWZhY2UpKSkpCiAgCSAgKDwgKHBvaW50KSBlbmQpKQog ICAgICAgIChzZXRxIHN0YXRlIChwYXJzZS1wYXJ0aWFsLXNleHAgKHBvaW50KSBlbmQgbmlsIG5p bCBzdGF0ZQoqKioqKioqKioqKioqKioKKioqIDE2MzIsMTY0MSAqKioqCiAgCSAoKG5vdCBvdmVy cmlkZSkKICAJICA7OyBDYW5ub3Qgb3ZlcnJpZGUgZXhpc3RpbmcgZm9udGlmaWNhdGlvbi4KICAJ ICAob3IgKHRleHQtcHJvcGVydHktbm90LWFsbCBzdGFydCBlbmQgJ2ZhY2UgbmlsKQohIAkgICAg ICAocHV0LXRleHQtcHJvcGVydHkgc3RhcnQgZW5kICdmYWNlIHZhbCkpKQogIAkgKChlcSBvdmVy cmlkZSB0KQogIAkgIDs7IE92ZXJyaWRlIGV4aXN0aW5nIGZvbnRpZmljYXRpb24uCiEgCSAgKHB1 dC10ZXh0LXByb3BlcnR5IHN0YXJ0IGVuZCAnZmFjZSB2YWwpKQogIAkgKChlcSBvdmVycmlkZSAn cHJlcGVuZCkKICAJICA7OyBQcmVwZW5kIHRvIGV4aXN0aW5nIGZvbnRpZmljYXRpb24uCiAgCSAg KGZvbnQtbG9jay1wcmVwZW5kLXRleHQtcHJvcGVydHkgc3RhcnQgZW5kICdmYWNlIHZhbCkpCi0t LSAxNjM3LDE2NDYgLS0tLQogIAkgKChub3Qgb3ZlcnJpZGUpCiAgCSAgOzsgQ2Fubm90IG92ZXJy aWRlIGV4aXN0aW5nIGZvbnRpZmljYXRpb24uCiAgCSAgKG9yICh0ZXh0LXByb3BlcnR5LW5vdC1h bGwgc3RhcnQgZW5kICdmYWNlIG5pbCkKISAJICAgICAgKHB1dC10ZXh0LXByb3BlcnR5LXVubGVz cy1pZ25vcmUgc3RhcnQgZW5kICdmYWNlIHZhbCkpKQogIAkgKChlcSBvdmVycmlkZSB0KQogIAkg IDs7IE92ZXJyaWRlIGV4aXN0aW5nIGZvbnRpZmljYXRpb24uCiEgCSAgKHB1dC10ZXh0LXByb3Bl cnR5LXVubGVzcy1pZ25vcmUgc3RhcnQgZW5kICdmYWNlIHZhbCkpCiAgCSAoKGVxIG92ZXJyaWRl ICdwcmVwZW5kKQogIAkgIDs7IFByZXBlbmQgdG8gZXhpc3RpbmcgZm9udGlmaWNhdGlvbi4KICAJ ICAoZm9udC1sb2NrLXByZXBlbmQtdGV4dC1wcm9wZXJ0eSBzdGFydCBlbmQgJ2ZhY2UgdmFsKSkK KioqKioqKioqKioqKioqCioqKiAxNjYxLDE2NzEgKioqKgogICAgICAgICh3aGVuIChhbmQgZm9u dC1sb2NrLW11bHRpbGluZSAoPj0gbGltaXQgKGxpbmUtYmVnaW5uaW5nLXBvc2l0aW9uIDIpKSkK ICAJOzsgdGhpcyBpcyBhIG11bHRpbGluZSBhbmNob3JlZCBtYXRjaAogIAk7OyAoc2V0cSBmb250 LWxvY2stbXVsdGlsaW5lIHQpCiEgCShwdXQtdGV4dC1wcm9wZXJ0eSAoaWYgKD0gbGltaXQgKGxp bmUtYmVnaW5uaW5nLXBvc2l0aW9uIDIpKQohIAkJCSAgICAgICAoMS0gbGltaXQpCiEgCQkJICAg ICAobWluIGxlYWQtc3RhcnQgKHBvaW50KSkpCiEgCQkJICAgbGltaXQKISAJCQkgICAnZm9udC1s b2NrLW11bHRpbGluZSB0KSkpCiAgICAgIChzYXZlLW1hdGNoLWRhdGEKICAgICAgICA7OyBGaW5k IGFuIG9jY3VycmVuY2Ugb2YgYG1hdGNoZXInIGJlZm9yZSBgbGltaXQnLgogICAgICAgICh3aGls ZSAoYW5kICg8IChwb2ludCkgbGltaXQpCi0tLSAxNjY2LDE2NzYgLS0tLQogICAgICAgICh3aGVu IChhbmQgZm9udC1sb2NrLW11bHRpbGluZSAoPj0gbGltaXQgKGxpbmUtYmVnaW5uaW5nLXBvc2l0 aW9uIDIpKSkKICAJOzsgdGhpcyBpcyBhIG11bHRpbGluZSBhbmNob3JlZCBtYXRjaAogIAk7OyAo c2V0cSBmb250LWxvY2stbXVsdGlsaW5lIHQpCiEgCShwdXQtdGV4dC1wcm9wZXJ0eS11bmxlc3Mt aWdub3JlIChpZiAoPSBsaW1pdCAobGluZS1iZWdpbm5pbmctcG9zaXRpb24gMikpCiEgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDEtIGxpbWl0KQohICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWluIGxlYWQtc3RhcnQgKHBv aW50KSkpCiEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW1pdAoh ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtbG9jay1tdWx0 aWxpbmUgdCkpKQogICAgICAoc2F2ZS1tYXRjaC1kYXRhCiAgICAgICAgOzsgRmluZCBhbiBvY2N1 cnJlbmNlIG9mIGBtYXRjaGVyJyBiZWZvcmUgYGxpbWl0Jy4KICAgICAgICAod2hpbGUgKGFuZCAo PCAocG9pbnQpIGxpbWl0KQoqKioqKioqKioqKioqKioKKioqIDE3MDcsMTczNSAqKioqCiAgCQkg ICAgKGZ1bmNhbGwgbWF0Y2hlciBlbmQpKQogICAgICAgICAgICAgICAgICAgIDs7IEJld2FyZSBl bXB0eSBzdHJpbmcgbWF0Y2hlcyBzaW5jZSB0aGV5IHdpbGwKICAgICAgICAgICAgICAgICAgICA7 OyBsb29wIGluZGVmaW5pdGVseS4KISAgICAgICAgICAgICAgICAgICAob3IgKD4gKHBvaW50KSAo bWF0Y2gtYmVnaW5uaW5nIDApKQohICAgICAgICAgICAgICAgICAgICAgICAocHJvZ24gKGZvcndh cmQtY2hhciAxKSB0KSkpCiEgCSh3aGVuIChhbmQgZm9udC1sb2NrLW11bHRpbGluZQohIAkJICAg KD49IChwb2ludCkKISAJCSAgICAgICAoc2F2ZS1leGN1cnNpb24gKGdvdG8tY2hhciAobWF0Y2gt YmVnaW5uaW5nIDApKQohIAkJCQkgICAgICAgKGZvcndhcmQtbGluZSAxKSAocG9pbnQpKSkpCiEg CSAgOzsgdGhpcyBpcyBhIG11bHRpbGluZSByZWdleHAgbWF0Y2gKISAJICA7OyAoc2V0cSBmb250 LWxvY2stbXVsdGlsaW5lIHQpCiEgCSAgKHB1dC10ZXh0LXByb3BlcnR5IChpZiAoPSAocG9pbnQp CiEgCQkJCSAgICAoc2F2ZS1leGN1cnNpb24KISAJCQkJICAgICAgKGdvdG8tY2hhciAobWF0Y2gt YmVnaW5uaW5nIDApKQohIAkJCQkgICAgICAoZm9yd2FyZC1saW5lIDEpIChwb2ludCkpKQohIAkJ CQkgKDEtIChwb2ludCkpCiEgCQkJICAgICAgIChtYXRjaC1iZWdpbm5pbmcgMCkpCiEgCQkJICAg ICAocG9pbnQpCiEgCQkJICAgICAnZm9udC1sb2NrLW11bHRpbGluZSB0KSkKISAJOzsgQXBwbHkg ZWFjaCBoaWdobGlnaHQgdG8gdGhpcyBpbnN0YW5jZSBvZiBgbWF0Y2hlcicsIHdoaWNoIG1heSBi ZQohIAk7OyBzcGVjaWZpYyBoaWdobGlnaHRzIG9yIG1vcmUga2V5d29yZHMgYW5jaG9yZWQgdG8g YG1hdGNoZXInLgohIAkoc2V0cSBoaWdobGlnaHRzIChjZHIga2V5d29yZCkpCiEgCSh3aGlsZSBo aWdobGlnaHRzCiEgCSAgKGlmIChudW1iZXJwIChjYXIgKGNhciBoaWdobGlnaHRzKSkpCiEgCSAg ICAgIChmb250LWxvY2stYXBwbHktaGlnaGxpZ2h0IChjYXIgaGlnaGxpZ2h0cykpCiEgCSAgICAo c2V0LW1hcmtlciBwb3MgKHBvaW50KSkKICAgICAgICAgICAgICAoZm9udC1sb2NrLWZvbnRpZnkt YW5jaG9yZWQta2V5d29yZHMgKGNhciBoaWdobGlnaHRzKSBlbmQpCiAgICAgICAgICAgICAgOzsg RW5zdXJlIGZvcndhcmQgcHJvZ3Jlc3MuICBgcG9zJyBpcyBhIG1hcmtlciBiZWNhdXNlIGFuY2hv cmVkCiAgICAgICAgICAgICAgOzsga2V5d29yZCBtYXkgYWRkL2RlbGV0ZSB0ZXh0ICh0aGlzIGhh cHBlbnMgZS5nLiBpbiBncmVwLmVsKS4KLS0tIDE3MTIsMTczOCAtLS0tCiAgCQkgICAgKGZ1bmNh bGwgbWF0Y2hlciBlbmQpKQogICAgICAgICAgICAgICAgICAgIDs7IEJld2FyZSBlbXB0eSBzdHJp bmcgbWF0Y2hlcyBzaW5jZSB0aGV5IHdpbGwKICAgICAgICAgICAgICAgICAgICA7OyBsb29wIGlu ZGVmaW5pdGVseS4KISAgICAgICAgICAgICAgICAgICAob3IgKD4gKHBvaW50KSAobWF0Y2gtYmVn aW5uaW5nIDApKSAgKHByb2duIChmb3J3YXJkLWNoYXIgMSkgdCkpKQohICAgICAgICAgKHdoZW4g KGFuZCBmb250LWxvY2stbXVsdGlsaW5lCiEgICAgICAgICAgICAgICAgICAgICg+PSAocG9pbnQp IChzYXZlLWV4Y3Vyc2lvbiAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCiEgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZm9yd2FyZC1saW5lIDEp IChwb2ludCkpKSkKISAgICAgICAgICAgOzsgdGhpcyBpcyBhIG11bHRpbGluZSByZWdleHAgbWF0 Y2gKISAgICAgICAgICAgOzsgKHNldHEgZm9udC1sb2NrLW11bHRpbGluZSAgdCkKISAgICAgICAg ICAgKHB1dC10ZXh0LXByb3BlcnR5LXVubGVzcy1pZ25vcmUgKGlmICg9IChwb2ludCkKISAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzYXZlLWV4Y3Vy c2lvbgohICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCiEgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmb3J3YXJkLWxpbmUgMSkgKHBvaW50KSkp CiEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMS0gKHBv aW50KSkKISAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWF0 Y2gtYmVnaW5uaW5nIDApKQohICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAocG9pbnQpCiEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICdmb250LWxvY2stbXVsdGlsaW5lIHQpKQohICAgICAgICAgOzsgQXBwbHkgZWFjaCBoaWdobGln aHQgdG8gdGhpcyBpbnN0YW5jZSBvZiBgbWF0Y2hlcicsIHdoaWNoIG1heSBiZQohICAgICAgICAg Ozsgc3BlY2lmaWMgaGlnaGxpZ2h0cyBvciBtb3JlIGtleXdvcmRzIGFuY2hvcmVkIHRvIGBtYXRj aGVyJy4KISAgICAgICAgIChzZXRxIGhpZ2hsaWdodHMgIChjZHIga2V5d29yZCkpCiEgICAgICAg ICAod2hpbGUgaGlnaGxpZ2h0cwohICAgICAgICAgICAoaWYgKG51bWJlcnAgKGNhciAoY2FyIGhp Z2hsaWdodHMpKSkKISAgICAgICAgICAgICAgIChmb250LWxvY2stYXBwbHktaGlnaGxpZ2h0IChj YXIgaGlnaGxpZ2h0cykpCiEgICAgICAgICAgICAgKHNldC1tYXJrZXIgcG9zIChwb2ludCkpCiAg ICAgICAgICAgICAgKGZvbnQtbG9jay1mb250aWZ5LWFuY2hvcmVkLWtleXdvcmRzIChjYXIgaGln aGxpZ2h0cykgZW5kKQogICAgICAgICAgICAgIDs7IEVuc3VyZSBmb3J3YXJkIHByb2dyZXNzLiAg YHBvcycgaXMgYSBtYXJrZXIgYmVjYXVzZSBhbmNob3JlZAogICAgICAgICAgICAgIDs7IGtleXdv cmQgbWF5IGFkZC9kZWxldGUgdGV4dCAodGhpcyBoYXBwZW5zIGUuZy4gaW4gZ3JlcC5lbCkuCioq KioqKioqKioqKioqKgoqKiogMTc0MiwxNzQ3ICoqKioKLS0tIDE3NDUsMTc2MSAtLS0tCiAgDAog IDs7IFZhcmlvdXMgZnVuY3Rpb25zLgogIAorIChkZWZ1biBwdXQtdGV4dC1wcm9wZXJ0eS11bmxl c3MtaWdub3JlIChzdGFydCBlbmQgcHJvcGVydHkgdmFsdWUgJm9wdGlvbmFsIG9iamVjdCkKKyAg ICJgcHV0LXRleHQtcHJvcGVydHknLCBidXQgaWdub3JlIHRleHQgd2l0aCBwcm9wZXJ0eSBgZm9u dC1sb2NrLWlnbm9yZScuIgorICAgKGxldCAoKGhlcmUgIChtaW4gc3RhcnQgZW5kKSkKKyAgICAg ICAgIChlbmQxICAobWF4IHN0YXJ0IGVuZCkpCisgICAgICAgICBjaGcpCisgICAgICh3aGlsZSAo PCBoZXJlIGVuZDEpCisgICAgICAgKHNldHEgY2hnICAobmV4dC1zaW5nbGUtcHJvcGVydHktY2hh bmdlIGhlcmUgJ2ZvbnQtbG9jay1pZ25vcmUgb2JqZWN0IGVuZDEpKQorICAgICAgICh1bmxlc3Mg KGdldC10ZXh0LXByb3BlcnR5IGhlcmUgJ2ZvbnQtbG9jay1pZ25vcmUgb2JqZWN0KQorICAgICAg ICAgKHB1dC10ZXh0LXByb3BlcnR5IGhlcmUgY2hnIHByb3BlcnR5IHZhbHVlIG9iamVjdCkpCisg ICAgICAgKHNldHEgaGVyZSAgY2hnKSkpKQorIAogIChkZWZ1biBmb250LWxvY2stY29tcGlsZS1r ZXl3b3JkcyAoa2V5d29yZHMgJm9wdGlvbmFsIHN5bnRhY3RpYy1rZXl3b3JkcykKICAgICJDb21w aWxlIEtFWVdPUkRTIGludG8gdGhlIGZvcm0gKHQgS0VZV09SRFMgQ09NUElMRUQuLi4pCiAgSGVy ZSBlYWNoIENPTVBJTEVEIGlzIG9mIHRoZSBmb3JtIChNQVRDSEVSIEhJR0hMSUdIVCAuLi4pIGFz IHNob3duIGluIHRoZQo= --__1409429562652271229abhmp0018.oracle.com--