<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>73959</bug_id>
          
          <creation_ts>2011-12-06 15:54:34 -0800</creation_ts>
          <short_desc>Web Inspector: allow cross-domain requests for inspector; use XHR, not custom InspectorFrontendHost methods to fetch things</short_desc>
          <delta_ts>2014-12-13 15:53:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>97065</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrey Kosyakov">caseq</reporter>
          <assigned_to name="Andrey Kosyakov">caseq</assigned_to>
          <cc>apavlov</cc>
    
    <cc>burg</cc>
    
    <cc>bweinstein</cc>
    
    <cc>dglazkov</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>podivilov</cc>
    
    <cc>rik</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>516320</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-06 15:54:34 -0800</bug_when>
    <thetext>We used to rely on InspectorFrontendHost::loadResourceSynchronously to fetch third-party resources into inspector front-end (currently only used by source maps). This patch changes to use XHRs instead and grants cross-domain access to inspector front-end.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516323</commentid>
    <comment_count>1</comment_count>
      <attachid>118127</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-06 15:57:24 -0800</bug_when>
    <thetext>Created attachment 118127
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516335</commentid>
    <comment_count>2</comment_count>
      <attachid>118127</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2011-12-06 16:11:29 -0800</bug_when>
    <thetext>Comment on attachment 118127
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=118127&amp;action=review

&gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:125
&gt; +    &quot;file&quot;

Is &quot;file&quot; really needed? That seems like a security risk. (Though the inspector is loaded as a file URL in Safari already, so I guess this isn&apos;t any worse.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516367</commentid>
    <comment_count>3</comment_count>
      <attachid>118127</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-06 16:47:37 -0800</bug_when>
    <thetext>Comment on attachment 118127
Patch

Attachment 118127 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10741168

New failing tests:
http/tests/inspector/compiler-source-mapping.html
http/tests/inspector/compiler-source-mapping-debug.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516374</commentid>
    <comment_count>4</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-06 16:53:52 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 118127 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=118127&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:125
&gt; &gt; +    &quot;file&quot;
&gt; 
&gt; Is &quot;file&quot; really needed? That seems like a security risk. (Though the inspector is loaded as a file URL in Safari already, so I guess this isn&apos;t any worse.)

We currently use this only to fetch source maps. I assume for someone doing development locally, it might be useful to load source maps from files -- although, perhaps, not something they won&apos;t survive without.

The loadResourceSynchronously method I was replacing seems not to prevent loading resources from files, so at least we keep the existing behavior.

If anyone feels strongly about allowing file access in the inspector, I don&apos;t mind removing it -- yet, as you pointed out, Safari won&apos;t be more secure, as it both hosts inspector front-end in a file: scheme and considers different files to be in a same security origin. Fro Chrome, apparently, there also is an escalation path from compromising front-end to local file access, since it allows file: schema access from extensions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516432</commentid>
    <comment_count>5</comment_count>
      <attachid>118158</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-06 18:33:48 -0800</bug_when>
    <thetext>Created attachment 118158
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516433</commentid>
    <comment_count>6</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-06 18:34:37 -0800</bug_when>
    <thetext>Fixed another occurrence of loadResourceSynchronously() that I missed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516566</commentid>
    <comment_count>7</comment_count>
      <attachid>118158</attachid>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-12-07 02:48:02 -0800</bug_when>
    <thetext>Comment on attachment 118158
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=118158&amp;action=review

&gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:137
&gt; +    for (size_t i = 0; i &lt; sizeof schemasToAllowRequestsFor / sizeof schemasToAllowRequestsFor[0]; ++i)

Please use WTF_ARRAY_LENGTH.

&gt; Source/WebCore/inspector/front-end/CompilerSourceMapping.js:109
&gt; +        var mapping = this._loadSynchronously(this._sourceMappingURL);

Why this moved out of try/catch block?

&gt; Source/WebCore/inspector/front-end/CompilerSourceMapping.js:157
&gt; +        return this._loadSynchronously(sourceURL);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516567</commentid>
    <comment_count>8</comment_count>
    <who name="Pavel Podivilov">podivilov</who>
    <bug_when>2011-12-07 02:49:47 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 118127 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=118127&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:125
&gt; &gt; &gt; +    &quot;file&quot;
&gt; &gt; 
&gt; &gt; Is &quot;file&quot; really needed? That seems like a security risk. (Though the inspector is loaded as a file URL in Safari already, so I guess this isn&apos;t any worse.)
&gt; 
&gt; We currently use this only to fetch source maps. I assume for someone doing development locally, it might be useful to load source maps from files -- although, perhaps, not something they won&apos;t survive without.
&gt; 
&gt; The loadResourceSynchronously method I was replacing seems not to prevent loading resources from files, so at least we keep the existing behavior.
&gt; 

I think it prevents loading resources from files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>516728</commentid>
    <comment_count>9</comment_count>
      <attachid>118127</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-12-07 10:31:50 -0800</bug_when>
    <thetext>Comment on attachment 118127
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=118127&amp;action=review

&gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:136
&gt; +    KURL frontendURL = frontendPage-&gt;mainFrame()-&gt;loader()-&gt;originalRequest().url();
&gt; +    m_frontendOrigin = SecurityOrigin::create(frontendURL);

Why not just frontendPage-&gt;mainFrame()-&gt;document()-&gt;securityOrigin() ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517515</commentid>
    <comment_count>10</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-08 10:17:15 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; +    for (size_t i = 0; i &lt; sizeof schemasToAllowRequestsFor / sizeof schemasToAllowRequestsFor[0]; ++i)
&gt; Please use WTF_ARRAY_LENGTH.

Fixed.

&gt; Why this moved out of try/catch block?

Oops. Fixed as well.

&gt; I think it prevents loading resources from files.

It does not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517516</commentid>
    <comment_count>11</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-08 10:18:09 -0800</bug_when>
    <thetext>(In reply to comment #9)

&gt; Why not just frontendPage-&gt;mainFrame()-&gt;document()-&gt;securityOrigin() ?

Thanks, fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>517521</commentid>
    <comment_count>12</comment_count>
      <attachid>118414</attachid>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2011-12-08 10:24:25 -0800</bug_when>
    <thetext>Created attachment 118414
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>518898</commentid>
    <comment_count>13</comment_count>
      <attachid>118414</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-12-11 09:38:08 -0800</bug_when>
    <thetext>Comment on attachment 118414
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=118414&amp;action=review

&gt; Source/WebCore/inspector/InspectorFrontendHost.cpp:137
&gt; +        SecurityPolicy::addOriginAccessWhitelistEntry(*m_frontendOrigin, schemasToAllowRequestsFor[i], &quot;&quot;, true);

We should not grant additional privileges to the front-end origin since we can compromise the embedder. It is up to the embedder to choose the origin for the front-end and granting additional privileges there will be unexpected.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118127</attachid>
            <date>2011-12-06 15:57:24 -0800</date>
            <delta_ts>2011-12-07 10:31:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73959-20111206155723.patch</filename>
            <type>text/plain</type>
            <size>6309</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAyMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWRmZDRhN2U4OWZmYmE1
MGEzNjRiNjdiYzIwZTgzOTFjZWQwZWMxZC4uMmVjYjU5YzBiNGJhZGY1MmNkNDk4NDIzZmI0MTgx
MmIxYzA4M2E4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTEyLTA2ICBBbmRy
ZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogYWxsb3cgY3Jvc3MtZG9tYWluIHJlcXVlc3RzIGZvciBpbnNwZWN0b3I7IHVzZSBYSFIsIG5v
dCBjdXN0b20gSW5zcGVjdG9yRnJvbnRlbmRIb3N0IG1ldGhvZHMgdG8gZmV0Y2ggdGhpbmdzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mzk1OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JG
cm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JGcm9udGVuZEhvc3Q6On5JbnNwZWN0b3JGcm9udGVuZEhvc3QpOgorICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRnJvbnRlbmRIb3N0LmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L0NvbXBpbGVyU291cmNlTWFwcGluZy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DbG9zdXJl
Q29tcGlsZXJTb3VyY2VNYXBwaW5nLnByb3RvdHlwZS5sb2FkKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0luc3BlY3RvckZyb250ZW5kSG9zdFN0dWIuanM6CisgICAgICAgICguV2Vi
SW5zcGVjdG9yLkluc3BlY3RvckZyb250ZW5kSG9zdFN0dWIucHJvdG90eXBlLnJlY29yZFNldHRp
bmdDaGFuZ2VkKToKKwogMjAxMS0xMi0wNSAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBs
ZS5jb20+CiAKICAgICAgICAgS2VlcCBib3RoIEluc3BlY3RvckJhY2tlbmQuanMgYW5kIEluc3Bl
Y3RvckJhY2tlbmRTdHViLmpzIGluIFJlbGVhc2UgYnVpbGRzIGFmdGVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCmluZGV4IDcxZjZh
NzUwODUyNjEyNjNiNzg4OTRlMTBmMmRlZTk4ZjMwYTZmZTQuLjFkOWY3ZGFiMzg2NmExNDA1N2Ex
Zjc2ZjI1YzQ5YTU4OWY2OTBmMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCkBAIC0xMTksNiArMTE5LDEyIEBAIHByaXZhdGU6
CiB9OwogI2VuZGlmCiAKK3N0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBzY2hlbWFzVG9BbGxvd1Jl
cXVlc3RzRm9yW10gPSB7CisgICAgImh0dHAiLAorICAgICJodHRwcyIsCisgICAgImZpbGUiCit9
OworCiBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9zdChJbnNwZWN0
b3JGcm9udGVuZENsaWVudCogY2xpZW50LCBQYWdlKiBmcm9udGVuZFBhZ2UpCiAgICAgOiBtX2Ns
aWVudChjbGllbnQpCiAgICAgLCBtX2Zyb250ZW5kUGFnZShmcm9udGVuZFBhZ2UpCkBAIC0xMjYs
MTAgKzEzMiwxNiBAQCBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9z
dChJbnNwZWN0b3JGcm9udGVuZENsaWVudCogY2xpZW50LCBQYQogICAgICwgbV9tZW51UHJvdmlk
ZXIoMCkKICNlbmRpZgogeworICAgIEtVUkwgZnJvbnRlbmRVUkwgPSBmcm9udGVuZFBhZ2UtPm1h
aW5GcmFtZSgpLT5sb2FkZXIoKS0+b3JpZ2luYWxSZXF1ZXN0KCkudXJsKCk7CisgICAgbV9mcm9u
dGVuZE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoZnJvbnRlbmRVUkwpOworICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mIHNjaGVtYXNUb0FsbG93UmVxdWVzdHNGb3IgLyBz
aXplb2Ygc2NoZW1hc1RvQWxsb3dSZXF1ZXN0c0ZvclswXTsgKytpKQorICAgICAgICBTZWN1cml0
eVBvbGljeTo6YWRkT3JpZ2luQWNjZXNzV2hpdGVsaXN0RW50cnkoKm1fZnJvbnRlbmRPcmlnaW4s
IHNjaGVtYXNUb0FsbG93UmVxdWVzdHNGb3JbaV0sICIiLCB0cnVlKTsKIH0KIAogSW5zcGVjdG9y
RnJvbnRlbmRIb3N0Ojp+SW5zcGVjdG9yRnJvbnRlbmRIb3N0KCkKIHsKKyAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IHNpemVvZiBzY2hlbWFzVG9BbGxvd1JlcXVlc3RzRm9yIC8gc2l6ZW9mIHNj
aGVtYXNUb0FsbG93UmVxdWVzdHNGb3JbMF07ICsraSkKKyAgICAgICAgIFNlY3VyaXR5UG9saWN5
OjpyZW1vdmVPcmlnaW5BY2Nlc3NXaGl0ZWxpc3RFbnRyeSgqbV9mcm9udGVuZE9yaWdpbiwgc2No
ZW1hc1RvQWxsb3dSZXF1ZXN0c0ZvcltpXSwgIiIsIHRydWUpOwogICAgIEFTU0VSVCghbV9jbGll
bnQpOwogfQogCkBAIC0yNTAsMTggKzI2Miw2IEBAIHZvaWQgSW5zcGVjdG9yRnJvbnRlbmRIb3N0
OjpzaG93Q29udGV4dE1lbnUoRXZlbnQqIGV2ZW50LCBjb25zdCBWZWN0b3I8Q29udGV4dE1lCiB9
CiAjZW5kaWYKIAotU3RyaW5nIEluc3BlY3RvckZyb250ZW5kSG9zdDo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseShjb25zdCBTdHJpbmcmIHVybCkKLXsKLSAgICBSZXNvdXJjZVJlcXVlc3QgcmVx
dWVzdCh1cmwpOwotICAgIHJlcXVlc3Quc2V0SFRUUE1ldGhvZCgiR0VUIik7Ci0KLSAgICBWZWN0
b3I8Y2hhcj4gZGF0YTsKLSAgICBSZXNvdXJjZUVycm9yIGVycm9yOwotICAgIFJlc291cmNlUmVz
cG9uc2UgcmVzcG9uc2U7Ci0gICAgbV9mcm9udGVuZFBhZ2UtPm1haW5GcmFtZSgpLT5sb2FkZXIo
KS0+bG9hZFJlc291cmNlU3luY2hyb25vdXNseShyZXF1ZXN0LCBEb05vdEFsbG93U3RvcmVkQ3Jl
ZGVudGlhbHMsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7Ci0gICAgcmV0dXJuIFN0cmluZyhkYXRh
LmRhdGEoKSwgZGF0YS5zaXplKCkpOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5oCmluZGV4IGY1OWE2OWNhYzg2MDFmNDlmMmJkYTEzNThl
NTAwZjk3NzE3MDUyMTIuLmIyMzkwMDk5ZTA4YjZiZDg2M2IxMWIwOTEzY2Y1YThiNDdlM2FiZWIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhv
c3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0
LmgKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogI2luY2x1ZGUg
IkNvbnRleHRNZW51UHJvdmlkZXIuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2lu
Y2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgog
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTg5LDYgKzkwLDggQEAgcHJpdmF0ZToKIAogICAg
IEluc3BlY3RvckZyb250ZW5kQ2xpZW50KiBtX2NsaWVudDsKICAgICBQYWdlKiBtX2Zyb250ZW5k
UGFnZTsKKyAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG1fZnJvbnRlbmRPcmlnaW47CisKICNp
ZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKICAgICBGcm9udGVuZE1lbnVQcm92aWRlciogbV9tZW51
UHJvdmlkZXI7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JGcm9udGVuZEhvc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckZyb250ZW5kSG9zdC5pZGwKaW5kZXggNmU3ODI0YTEyMTQ5MjhmZTMyZDczZWQ4YjRmOTFj
MzJiNWRmZTBjYS4uZDZmNmEwY2I4ODUyNzMxNmUwNzVlMDg0MzNjMGY4ZjQ2OTZmMmE4YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5p
ZGwKQEAgLTYwLDcgKzYwLDUgQEAgbW9kdWxlIGNvcmUgewogICAgICAgICBbQ3VzdG9tXSB2b2lk
IHJlY29yZEFjdGlvblRha2VuKGluIHVuc2lnbmVkIGxvbmcgYWN0aW9uQ29kZSk7CiAgICAgICAg
IFtDdXN0b21dIHZvaWQgcmVjb3JkUGFuZWxTaG93bihpbiB1bnNpZ25lZCBsb25nIHBhbmVsQ29k
ZSk7CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcmVjb3JkU2V0dGluZ0NoYW5nZWQoaW4gdW5zaWdu
ZWQgbG9uZyBzZXR0aW5nQ2hhbmdlZCk7Ci0gICAgICAgIAotICAgICAgICBET01TdHJpbmcgbG9h
ZFJlc291cmNlU3luY2hyb25vdXNseShpbiBET01TdHJpbmcgdXJsKTsKICAgICB9OwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNvdXJj
ZU1hcHBpbmcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVy
U291cmNlTWFwcGluZy5qcwppbmRleCBlMGY3ODFlZmNjY2Q4ODNjOTczYzU3NmNlMzcwY2ZkNGNj
OTdiMTRiLi40NjlkNjc1ZDAyNTA4ZmNiZGNhZTZhMDg1Nzc1YWM2YTcyNmNlOWQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVyU291cmNlTWFw
cGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVy
U291cmNlTWFwcGluZy5qcwpAQCAtOTUsOSArOTUsMTEgQEAgV2ViSW5zcGVjdG9yLkNsb3N1cmVD
b21waWxlclNvdXJjZU1hcHBpbmcucHJvdG90eXBlID0gewogICAgIGxvYWQ6IGZ1bmN0aW9uKCkK
ICAgICB7CiAgICAgICAgIHRyeSB7Ci0gICAgICAgICAgICAvLyBGSVhNRTogbWFrZSBzZW5kUmVx
dWVzdCBhc3luYy4KLSAgICAgICAgICAgIHZhciByZXNwb25zZSA9IEluc3BlY3RvckZyb250ZW5k
SG9zdC5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHRoaXMuX3NvdXJjZU1hcHBpbmdVUkwpOwot
ICAgICAgICAgICAgdGhpcy5fcGFyc2VNYXBwaW5nUGF5bG9hZChKU09OLnBhcnNlKHJlc3BvbnNl
KSk7CisgICAgICAgICAgICAvLyBGSVhNRTogY2hhbmdlIHRvIHVzaW5nIGFzeW5jIHJlcXVlc3Qu
CisgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CisgICAgICAgICAg
ICB4aHIub3BlbigiR0VUIiwgdGhpcy5fc291cmNlTWFwcGluZ1VSTCwgZmFsc2UpOworICAgICAg
ICAgICAgeGhyLnNlbmQoKTsKKyAgICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ1BheWxvYWQo
SlNPTi5wYXJzZSh4aHIucmVzcG9uc2VUZXh0KSk7CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZQog
ICAgICAgICB9IGNhdGNoKGUpIHsKICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZS5tZXNzYWdl
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVj
dG9yRnJvbnRlbmRIb3N0U3R1Yi5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1l
bmQvSW5zcGVjdG9yRnJvbnRlbmRIb3N0U3R1Yi5qcwppbmRleCBiM2MwNzY5MzU5NDkyNzBiMTIz
MDczNWZjZjBmNzE5OGI1YTVkMTBiLi43YzE2NDc0ZDY0NjhkM2I1NWU0NjkwN2RhZmIzOTczN2Zm
MWFkNjQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0lu
c3BlY3RvckZyb250ZW5kSG9zdFN0dWIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9JbnNwZWN0b3JGcm9udGVuZEhvc3RTdHViLmpzCkBAIC0xNTAsMTEgKzE1MCw2
IEBAIFdlYkluc3BlY3Rvci5JbnNwZWN0b3JGcm9udGVuZEhvc3RTdHViLnByb3RvdHlwZSA9IHsK
IAogICAgIHJlY29yZFNldHRpbmdDaGFuZ2VkOiBmdW5jdGlvbihzZXR0aW5nQ29kZSkKICAgICB7
Ci0gICAgfSwKLQotICAgIGxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHk6IGZ1bmN0aW9uKHVybCkK
LSAgICB7Ci0gICAgICAgIHJldHVybiAiIjsKICAgICB9CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118158</attachid>
            <date>2011-12-06 18:33:48 -0800</date>
            <delta_ts>2011-12-08 10:24:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73959-20111206183347.patch</filename>
            <type>text/plain</type>
            <size>7185</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAyMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWRmZDRhN2U4OWZmYmE1
MGEzNjRiNjdiYzIwZTgzOTFjZWQwZWMxZC4uMmVjYjU5YzBiNGJhZGY1MmNkNDk4NDIzZmI0MTgx
MmIxYzA4M2E4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTEyLTA2ICBBbmRy
ZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogYWxsb3cgY3Jvc3MtZG9tYWluIHJlcXVlc3RzIGZvciBpbnNwZWN0b3I7IHVzZSBYSFIsIG5v
dCBjdXN0b20gSW5zcGVjdG9yRnJvbnRlbmRIb3N0IG1ldGhvZHMgdG8gZmV0Y2ggdGhpbmdzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mzk1OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JG
cm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JGcm9udGVuZEhvc3Q6On5JbnNwZWN0b3JGcm9udGVuZEhvc3QpOgorICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRnJvbnRlbmRIb3N0LmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L0NvbXBpbGVyU291cmNlTWFwcGluZy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DbG9zdXJl
Q29tcGlsZXJTb3VyY2VNYXBwaW5nLnByb3RvdHlwZS5sb2FkKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0luc3BlY3RvckZyb250ZW5kSG9zdFN0dWIuanM6CisgICAgICAgICguV2Vi
SW5zcGVjdG9yLkluc3BlY3RvckZyb250ZW5kSG9zdFN0dWIucHJvdG90eXBlLnJlY29yZFNldHRp
bmdDaGFuZ2VkKToKKwogMjAxMS0xMi0wNSAgVGltb3RoeSBIYXRjaGVyICA8dGltb3RoeUBhcHBs
ZS5jb20+CiAKICAgICAgICAgS2VlcCBib3RoIEluc3BlY3RvckJhY2tlbmQuanMgYW5kIEluc3Bl
Y3RvckJhY2tlbmRTdHViLmpzIGluIFJlbGVhc2UgYnVpbGRzIGFmdGVyCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCmluZGV4IDcxZjZh
NzUwODUyNjEyNjNiNzg4OTRlMTBmMmRlZTk4ZjMwYTZmZTQuLjFkOWY3ZGFiMzg2NmExNDA1N2Ex
Zjc2ZjI1YzQ5YTU4OWY2OTBmMTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwCkBAIC0xMTksNiArMTE5LDEyIEBAIHByaXZhdGU6
CiB9OwogI2VuZGlmCiAKK3N0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBzY2hlbWFzVG9BbGxvd1Jl
cXVlc3RzRm9yW10gPSB7CisgICAgImh0dHAiLAorICAgICJodHRwcyIsCisgICAgImZpbGUiCit9
OworCiBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9zdChJbnNwZWN0
b3JGcm9udGVuZENsaWVudCogY2xpZW50LCBQYWdlKiBmcm9udGVuZFBhZ2UpCiAgICAgOiBtX2Ns
aWVudChjbGllbnQpCiAgICAgLCBtX2Zyb250ZW5kUGFnZShmcm9udGVuZFBhZ2UpCkBAIC0xMjYs
MTAgKzEzMiwxNiBAQCBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9z
dChJbnNwZWN0b3JGcm9udGVuZENsaWVudCogY2xpZW50LCBQYQogICAgICwgbV9tZW51UHJvdmlk
ZXIoMCkKICNlbmRpZgogeworICAgIEtVUkwgZnJvbnRlbmRVUkwgPSBmcm9udGVuZFBhZ2UtPm1h
aW5GcmFtZSgpLT5sb2FkZXIoKS0+b3JpZ2luYWxSZXF1ZXN0KCkudXJsKCk7CisgICAgbV9mcm9u
dGVuZE9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUoZnJvbnRlbmRVUkwpOworICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mIHNjaGVtYXNUb0FsbG93UmVxdWVzdHNGb3IgLyBz
aXplb2Ygc2NoZW1hc1RvQWxsb3dSZXF1ZXN0c0ZvclswXTsgKytpKQorICAgICAgICBTZWN1cml0
eVBvbGljeTo6YWRkT3JpZ2luQWNjZXNzV2hpdGVsaXN0RW50cnkoKm1fZnJvbnRlbmRPcmlnaW4s
IHNjaGVtYXNUb0FsbG93UmVxdWVzdHNGb3JbaV0sICIiLCB0cnVlKTsKIH0KIAogSW5zcGVjdG9y
RnJvbnRlbmRIb3N0Ojp+SW5zcGVjdG9yRnJvbnRlbmRIb3N0KCkKIHsKKyAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IHNpemVvZiBzY2hlbWFzVG9BbGxvd1JlcXVlc3RzRm9yIC8gc2l6ZW9mIHNj
aGVtYXNUb0FsbG93UmVxdWVzdHNGb3JbMF07ICsraSkKKyAgICAgICAgIFNlY3VyaXR5UG9saWN5
OjpyZW1vdmVPcmlnaW5BY2Nlc3NXaGl0ZWxpc3RFbnRyeSgqbV9mcm9udGVuZE9yaWdpbiwgc2No
ZW1hc1RvQWxsb3dSZXF1ZXN0c0ZvcltpXSwgIiIsIHRydWUpOwogICAgIEFTU0VSVCghbV9jbGll
bnQpOwogfQogCkBAIC0yNTAsMTggKzI2Miw2IEBAIHZvaWQgSW5zcGVjdG9yRnJvbnRlbmRIb3N0
OjpzaG93Q29udGV4dE1lbnUoRXZlbnQqIGV2ZW50LCBjb25zdCBWZWN0b3I8Q29udGV4dE1lCiB9
CiAjZW5kaWYKIAotU3RyaW5nIEluc3BlY3RvckZyb250ZW5kSG9zdDo6bG9hZFJlc291cmNlU3lu
Y2hyb25vdXNseShjb25zdCBTdHJpbmcmIHVybCkKLXsKLSAgICBSZXNvdXJjZVJlcXVlc3QgcmVx
dWVzdCh1cmwpOwotICAgIHJlcXVlc3Quc2V0SFRUUE1ldGhvZCgiR0VUIik7Ci0KLSAgICBWZWN0
b3I8Y2hhcj4gZGF0YTsKLSAgICBSZXNvdXJjZUVycm9yIGVycm9yOwotICAgIFJlc291cmNlUmVz
cG9uc2UgcmVzcG9uc2U7Ci0gICAgbV9mcm9udGVuZFBhZ2UtPm1haW5GcmFtZSgpLT5sb2FkZXIo
KS0+bG9hZFJlc291cmNlU3luY2hyb25vdXNseShyZXF1ZXN0LCBEb05vdEFsbG93U3RvcmVkQ3Jl
ZGVudGlhbHMsIGVycm9yLCByZXNwb25zZSwgZGF0YSk7Ci0gICAgcmV0dXJuIFN0cmluZyhkYXRh
LmRhdGEoKSwgZGF0YS5zaXplKCkpOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5oCmluZGV4IGY1OWE2OWNhYzg2MDFmNDlmMmJkYTEzNThl
NTAwZjk3NzE3MDUyMTIuLmIyMzkwMDk5ZTA4YjZiZDg2M2IxMWIwOTEzY2Y1YThiNDdlM2FiZWIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhv
c3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0
LmgKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogI2luY2x1ZGUg
IkNvbnRleHRNZW51UHJvdmlkZXIuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2lu
Y2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgog
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KQEAgLTg5LDYgKzkwLDggQEAgcHJpdmF0ZToKIAogICAg
IEluc3BlY3RvckZyb250ZW5kQ2xpZW50KiBtX2NsaWVudDsKICAgICBQYWdlKiBtX2Zyb250ZW5k
UGFnZTsKKyAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG1fZnJvbnRlbmRPcmlnaW47CisKICNp
ZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKICAgICBGcm9udGVuZE1lbnVQcm92aWRlciogbV9tZW51
UHJvdmlkZXI7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JGcm9udGVuZEhvc3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckZyb250ZW5kSG9zdC5pZGwKaW5kZXggNmU3ODI0YTEyMTQ5MjhmZTMyZDczZWQ4YjRmOTFj
MzJiNWRmZTBjYS4uZDZmNmEwY2I4ODUyNzMxNmUwNzVlMDg0MzNjMGY4ZjQ2OTZmMmE4YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5p
ZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5p
ZGwKQEAgLTYwLDcgKzYwLDUgQEAgbW9kdWxlIGNvcmUgewogICAgICAgICBbQ3VzdG9tXSB2b2lk
IHJlY29yZEFjdGlvblRha2VuKGluIHVuc2lnbmVkIGxvbmcgYWN0aW9uQ29kZSk7CiAgICAgICAg
IFtDdXN0b21dIHZvaWQgcmVjb3JkUGFuZWxTaG93bihpbiB1bnNpZ25lZCBsb25nIHBhbmVsQ29k
ZSk7CiAgICAgICAgIFtDdXN0b21dIHZvaWQgcmVjb3JkU2V0dGluZ0NoYW5nZWQoaW4gdW5zaWdu
ZWQgbG9uZyBzZXR0aW5nQ2hhbmdlZCk7Ci0gICAgICAgIAotICAgICAgICBET01TdHJpbmcgbG9h
ZFJlc291cmNlU3luY2hyb25vdXNseShpbiBET01TdHJpbmcgdXJsKTsKICAgICB9OwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNvdXJj
ZU1hcHBpbmcuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVy
U291cmNlTWFwcGluZy5qcwppbmRleCBlMGY3ODFlZmNjY2Q4ODNjOTczYzU3NmNlMzcwY2ZkNGNj
OTdiMTRiLi5iOGE2NDRkNWIwZTA0YWYyNzM0N2Q1NjQ3YjI1MDRkZTI3ODg0ODc1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVyU291cmNlTWFw
cGluZy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0NvbXBpbGVy
U291cmNlTWFwcGluZy5qcwpAQCAtOTAsMTUgKzkwLDI5IEBAIFdlYkluc3BlY3Rvci5DbG9zdXJl
Q29tcGlsZXJTb3VyY2VNYXBwaW5nID0gZnVuY3Rpb24oc291cmNlTWFwcGluZ1VSTCkKIAogV2Vi
SW5zcGVjdG9yLkNsb3N1cmVDb21waWxlclNvdXJjZU1hcHBpbmcucHJvdG90eXBlID0gewogICAg
IC8qKgorICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwKKyAgICAgKi8KKyAgICBfbG9hZFN5bmNo
cm9ub3VzbHk6IGZ1bmN0aW9uKHVybCkKKyAgICB7CisgICAgICAgIHZhciB4aHIgPSBuZXcgWE1M
SHR0cFJlcXVlc3QoKTsKKyAgICAgICAgeGhyLm9wZW4oIkdFVCIsIHVybCwgZmFsc2UpOworICAg
ICAgICB4aHIuc2VuZCgpOworICAgICAgICByZXR1cm4geGhyLnJlc3BvbnNlVGV4dDsKKyAgICB9
LAorCisgICAgLyoqCiAgICAgICogQHJldHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBsb2Fk
OiBmdW5jdGlvbigpCiAgICAgeworICAgICAgICAvLyBGSVhNRTogY2hhbmdlIHRvIHVzaW5nIGFz
eW5jIHJlcXVlc3QuCisgICAgICAgIHZhciBtYXBwaW5nID0gdGhpcy5fbG9hZFN5bmNocm9ub3Vz
bHkodGhpcy5fc291cmNlTWFwcGluZ1VSTCk7CisgICAgICAgIGlmICghbWFwcGluZykKKyAgICAg
ICAgICAgIHJldHVybiBmYWxzZTsKKwogICAgICAgICB0cnkgewotICAgICAgICAgICAgLy8gRklY
TUU6IG1ha2Ugc2VuZFJlcXVlc3QgYXN5bmMuCi0gICAgICAgICAgICB2YXIgcmVzcG9uc2UgPSBJ
bnNwZWN0b3JGcm9udGVuZEhvc3QubG9hZFJlc291cmNlU3luY2hyb25vdXNseSh0aGlzLl9zb3Vy
Y2VNYXBwaW5nVVJMKTsKLSAgICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ1BheWxvYWQoSlNP
Ti5wYXJzZShyZXNwb25zZSkpOwotICAgICAgICAgICAgcmV0dXJuIHRydWUKKyAgICAgICAgICAg
IHRoaXMuX3BhcnNlTWFwcGluZ1BheWxvYWQoSlNPTi5wYXJzZShtYXBwaW5nKSk7CisgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgfSBjYXRjaChlKSB7CiAgICAgICAgICAgICBjb25z
b2xlLmVycm9yKGUubWVzc2FnZSk7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0xNDAs
MTMgKzE1NCw3IEBAIFdlYkluc3BlY3Rvci5DbG9zdXJlQ29tcGlsZXJTb3VyY2VNYXBwaW5nLnBy
b3RvdHlwZSA9IHsKICAgICAgKi8KICAgICBsb2FkU291cmNlQ29kZTogZnVuY3Rpb24oc291cmNl
VVJMKQogICAgIHsKLSAgICAgICAgdHJ5IHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBtYWtlIHNl
bmRSZXF1ZXN0IGFzeW5jLgotICAgICAgICAgICAgcmV0dXJuIEluc3BlY3RvckZyb250ZW5kSG9z
dC5sb2FkUmVzb3VyY2VTeW5jaHJvbm91c2x5KHNvdXJjZVVSTCk7Ci0gICAgICAgIH0gY2F0Y2go
ZSkgewotICAgICAgICAgICAgY29uc29sZS5lcnJvcihlLm1lc3NhZ2UpOwotICAgICAgICAgICAg
cmV0dXJuICIiOwotICAgICAgICB9CisgICAgICAgIHJldHVybiB0aGlzLl9sb2FkU3luY2hyb25v
dXNseShzb3VyY2VVUkwpOwogICAgIH0sCiAKICAgICBfZmluZE1hcHBpbmc6IGZ1bmN0aW9uKGxp
bmVOdW1iZXIsIGNvbHVtbk51bWJlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yRnJvbnRlbmRIb3N0U3R1Yi5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yRnJvbnRlbmRIb3N0U3R1Yi5qcwppbmRl
eCBiM2MwNzY5MzU5NDkyNzBiMTIzMDczNWZjZjBmNzE5OGI1YTVkMTBiLi43YzE2NDc0ZDY0Njhk
M2I1NWU0NjkwN2RhZmIzOTczN2ZmMWFkNjQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckZyb250ZW5kSG9zdFN0dWIuanMKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JGcm9udGVuZEhvc3RTdHVi
LmpzCkBAIC0xNTAsMTEgKzE1MCw2IEBAIFdlYkluc3BlY3Rvci5JbnNwZWN0b3JGcm9udGVuZEhv
c3RTdHViLnByb3RvdHlwZSA9IHsKIAogICAgIHJlY29yZFNldHRpbmdDaGFuZ2VkOiBmdW5jdGlv
bihzZXR0aW5nQ29kZSkKICAgICB7Ci0gICAgfSwKLQotICAgIGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHk6IGZ1bmN0aW9uKHVybCkKLSAgICB7Ci0gICAgICAgIHJldHVybiAiIjsKICAgICB9CiB9
CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118414</attachid>
            <date>2011-12-08 10:24:25 -0800</date>
            <delta_ts>2011-12-11 09:38:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-73959-20111208102424.patch</filename>
            <type>text/plain</type>
            <size>7185</size>
            <attacher name="Andrey Kosyakov">caseq</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTAyMzQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzY4ODkzNGJhNjZiMWEx
MTA1MDJkZDI4OWQ2NDZhZDhiNWNmZTk2Yi4uNDIxNWEyZGU5NGY0OTBiNjhiNGY3Y2E0NDlmMTM2
ZDlmYzNlMDI4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTEyLTA4ICBBbmRy
ZXkgS29zeWFrb3YgIDxjYXNlcUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3BlY3Rv
cjogYWxsb3cgY3Jvc3MtZG9tYWluIHJlcXVlc3RzIGZvciBpbnNwZWN0b3I7IHVzZSBYSFIsIG5v
dCBjdXN0b20gSW5zcGVjdG9yRnJvbnRlbmRIb3N0IG1ldGhvZHMgdG8gZmV0Y2ggdGhpbmdzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03Mzk1OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JG
cm9udGVuZEhvc3Q6Okluc3BlY3RvckZyb250ZW5kSG9zdCk6CisgICAgICAgIChXZWJDb3JlOjpJ
bnNwZWN0b3JGcm9udGVuZEhvc3Q6On5JbnNwZWN0b3JGcm9udGVuZEhvc3QpOgorICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRnJvbnRlbmRIb3N0LmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L0NvbXBpbGVyU291cmNlTWFwcGluZy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5DbG9zdXJl
Q29tcGlsZXJTb3VyY2VNYXBwaW5nLnByb3RvdHlwZS5sb2FkKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0luc3BlY3RvckZyb250ZW5kSG9zdFN0dWIuanM6CisgICAgICAgICguV2Vi
SW5zcGVjdG9yLkluc3BlY3RvckZyb250ZW5kSG9zdFN0dWIucHJvdG90eXBlLnJlY29yZFNldHRp
bmdDaGFuZ2VkKToKKwogMjAxMS0xMi0wOCAgVGFrYXNoaSBUb3lvc2hpbWEgIDx0b3lvc2hpbUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgUHJvdmlkZSBtb3JlIHNwZWNpZmljIGVycm9yIGRlc2Ny
aXB0aW9uIGZvciBTb2NrZXRTdHJlYW1FcnJvci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5jcHAKaW5kZXggNzFmNmE3NTA4NTI2MTI2M2I3
ODg5NGUxMGYyZGVlOThmMzBhNmZlNC4uZjk4YjJkNmM2YWQ1ZWE3ZmE0NWY2YjM4NjFiNmUwMjc1
MmY0ZTI5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZy
b250ZW5kSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZy
b250ZW5kSG9zdC5jcHAKQEAgLTExOSw2ICsxMTksMTIgQEAgcHJpdmF0ZToKIH07CiAjZW5kaWYK
IAorc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IHNjaGVtYXNUb0FsbG93UmVxdWVzdHNGb3JbXSA9
IHsKKyAgICAiaHR0cCIsCisgICAgImh0dHBzIiwKKyAgICAiZmlsZSIKK307CisKIEluc3BlY3Rv
ckZyb250ZW5kSG9zdDo6SW5zcGVjdG9yRnJvbnRlbmRIb3N0KEluc3BlY3RvckZyb250ZW5kQ2xp
ZW50KiBjbGllbnQsIFBhZ2UqIGZyb250ZW5kUGFnZSkKICAgICA6IG1fY2xpZW50KGNsaWVudCkK
ICAgICAsIG1fZnJvbnRlbmRQYWdlKGZyb250ZW5kUGFnZSkKQEAgLTEyNiwxMCArMTMyLDE1IEBA
IEluc3BlY3RvckZyb250ZW5kSG9zdDo6SW5zcGVjdG9yRnJvbnRlbmRIb3N0KEluc3BlY3RvckZy
b250ZW5kQ2xpZW50KiBjbGllbnQsIFBhCiAgICAgLCBtX21lbnVQcm92aWRlcigwKQogI2VuZGlm
CiB7CisgICAgbV9mcm9udGVuZE9yaWdpbiA9IG1fZnJvbnRlbmRQYWdlLT5tYWluRnJhbWUoKS0+
ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IFdURl9BUlJBWV9MRU5HVEgoc2NoZW1hc1RvQWxsb3dSZXF1ZXN0c0Zvcik7ICsraSkKKyAgICAg
ICAgU2VjdXJpdHlQb2xpY3k6OmFkZE9yaWdpbkFjY2Vzc1doaXRlbGlzdEVudHJ5KCptX2Zyb250
ZW5kT3JpZ2luLCBzY2hlbWFzVG9BbGxvd1JlcXVlc3RzRm9yW2ldLCAiIiwgdHJ1ZSk7CiB9CiAK
IEluc3BlY3RvckZyb250ZW5kSG9zdDo6fkluc3BlY3RvckZyb250ZW5kSG9zdCgpCiB7CisgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKHNjaGVtYXNUb0FsbG93UmVx
dWVzdHNGb3IpOyArK2kpCisgICAgICAgICBTZWN1cml0eVBvbGljeTo6cmVtb3ZlT3JpZ2luQWNj
ZXNzV2hpdGVsaXN0RW50cnkoKm1fZnJvbnRlbmRPcmlnaW4sIHNjaGVtYXNUb0FsbG93UmVxdWVz
dHNGb3JbaV0sICIiLCB0cnVlKTsKICAgICBBU1NFUlQoIW1fY2xpZW50KTsKIH0KIApAQCAtMjUw
LDE4ICsyNjEsNiBAQCB2b2lkIEluc3BlY3RvckZyb250ZW5kSG9zdDo6c2hvd0NvbnRleHRNZW51
KEV2ZW50KiBldmVudCwgY29uc3QgVmVjdG9yPENvbnRleHRNZQogfQogI2VuZGlmCiAKLVN0cmlu
ZyBJbnNwZWN0b3JGcm9udGVuZEhvc3Q6OmxvYWRSZXNvdXJjZVN5bmNocm9ub3VzbHkoY29uc3Qg
U3RyaW5nJiB1cmwpCi17Ci0gICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QodXJsKTsKLSAgICBy
ZXF1ZXN0LnNldEhUVFBNZXRob2QoIkdFVCIpOwotCi0gICAgVmVjdG9yPGNoYXI+IGRhdGE7Ci0g
ICAgUmVzb3VyY2VFcnJvciBlcnJvcjsKLSAgICBSZXNvdXJjZVJlc3BvbnNlIHJlc3BvbnNlOwot
ICAgIG1fZnJvbnRlbmRQYWdlLT5tYWluRnJhbWUoKS0+bG9hZGVyKCktPmxvYWRSZXNvdXJjZVN5
bmNocm9ub3VzbHkocmVxdWVzdCwgRG9Ob3RBbGxvd1N0b3JlZENyZWRlbnRpYWxzLCBlcnJvciwg
cmVzcG9uc2UsIGRhdGEpOwotICAgIHJldHVybiBTdHJpbmcoZGF0YS5kYXRhKCksIGRhdGEuc2l6
ZSgpKTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gRU5BQkxFKElO
U1BFQ1RPUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JG
cm9udGVuZEhvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVu
ZEhvc3QuaAppbmRleCBmNTlhNjljYWM4NjAxZjQ5ZjJiZGExMzU4ZTUwMGY5NzcxNzA1MjEyLi5i
MjM5MDA5OWUwOGI2YmQ4NjNiMTFiMDkxM2NmNWE4YjQ3ZTNhYmViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kSG9zdC5oCkBAIC0zMyw2ICszMyw3
IEBACiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudVByb3Zp
ZGVyLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlICJTZWN1cml0eU9y
aWdpbi5oIgogCiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvVmVj
dG9yLmg+CkBAIC04OSw2ICs5MCw4IEBAIHByaXZhdGU6CiAKICAgICBJbnNwZWN0b3JGcm9udGVu
ZENsaWVudCogbV9jbGllbnQ7CiAgICAgUGFnZSogbV9mcm9udGVuZFBhZ2U7CisgICAgUmVmUHRy
PFNlY3VyaXR5T3JpZ2luPiBtX2Zyb250ZW5kT3JpZ2luOworCiAjaWYgRU5BQkxFKENPTlRFWFRf
TUVOVVMpCiAgICAgRnJvbnRlbmRNZW51UHJvdmlkZXIqIG1fbWVudVByb3ZpZGVyOwogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmRI
b3N0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3Qu
aWRsCmluZGV4IDZlNzgyNGExMjE0OTI4ZmUzMmQ3M2VkOGI0ZjkxYzMyYjVkZmUwY2EuLmQ2ZjZh
MGNiODg1MjczMTZlMDc1ZTA4NDMzYzBmOGY0Njk2ZjJhOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaWRsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZEhvc3QuaWRsCkBAIC02MCw3ICs2MCw1
IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgW0N1c3RvbV0gdm9pZCByZWNvcmRBY3Rpb25UYWtl
bihpbiB1bnNpZ25lZCBsb25nIGFjdGlvbkNvZGUpOwogICAgICAgICBbQ3VzdG9tXSB2b2lkIHJl
Y29yZFBhbmVsU2hvd24oaW4gdW5zaWduZWQgbG9uZyBwYW5lbENvZGUpOwogICAgICAgICBbQ3Vz
dG9tXSB2b2lkIHJlY29yZFNldHRpbmdDaGFuZ2VkKGluIHVuc2lnbmVkIGxvbmcgc2V0dGluZ0No
YW5nZWQpOwotICAgICAgICAKLSAgICAgICAgRE9NU3RyaW5nIGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHkoaW4gRE9NU3RyaW5nIHVybCk7CiAgICAgfTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvQ29tcGlsZXJTb3VyY2VNYXBwaW5nLmpzIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNvdXJjZU1hcHBpbmcuanMK
aW5kZXggZTBmNzgxZWZjY2NkODgzYzk3M2M1NzZjZTM3MGNmZDRjYzk3YjE0Yi4uYmI2NmU3N2I5
MDM0MThhNWRhMjI2M2VmMGIxOTM1N2NkNWI2YmFkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNvdXJjZU1hcHBpbmcuanMKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9Db21waWxlclNvdXJjZU1hcHBpbmcuanMK
QEAgLTkwLDE1ICs5MCwzNCBAQCBXZWJJbnNwZWN0b3IuQ2xvc3VyZUNvbXBpbGVyU291cmNlTWFw
cGluZyA9IGZ1bmN0aW9uKHNvdXJjZU1hcHBpbmdVUkwpCiAKIFdlYkluc3BlY3Rvci5DbG9zdXJl
Q29tcGlsZXJTb3VyY2VNYXBwaW5nLnByb3RvdHlwZSA9IHsKICAgICAvKioKKyAgICAgKiBAcGFy
YW0ge3N0cmluZ30gdXJsCisgICAgICogQHJldHVybiB7c3RyaW5nfQorICAgICAqLworICAgIF9s
b2FkU3luY2hyb25vdXNseTogZnVuY3Rpb24odXJsKQorICAgIHsKKyAgICAgICAgdmFyIHhociA9
IG5ldyBYTUxIdHRwUmVxdWVzdCgpOworICAgICAgICB0cnkgeworICAgICAgICAgICAgeGhyLm9w
ZW4oIkdFVCIsIHVybCwgZmFsc2UpOworICAgICAgICAgICAgeGhyLnNlbmQoKTsKKyAgICAgICAg
ICAgIHJldHVybiB4aHIucmVzcG9uc2VUZXh0OworICAgICAgICB9IGNhdGNoIChlKSB7CisgICAg
ICAgICAgICBjb25zb2xlLmVycm9yKGUubWVzc2FnZSk7CisgICAgICAgIH0KKyAgICB9LAorCisg
ICAgLyoqCiAgICAgICogQHJldHVybiB7Ym9vbGVhbn0KICAgICAgKi8KICAgICBsb2FkOiBmdW5j
dGlvbigpCiAgICAgeworICAgICAgICAvLyBGSVhNRTogY2hhbmdlIHRvIHVzaW5nIGFzeW5jIHJl
cXVlc3QuCisgICAgICAgIHZhciBtYXBwaW5nID0gdGhpcy5fbG9hZFN5bmNocm9ub3VzbHkodGhp
cy5fc291cmNlTWFwcGluZ1VSTCk7CisgICAgICAgIGlmICghbWFwcGluZykKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKwogICAgICAgICB0cnkgewotICAgICAgICAgICAgLy8gRklYTUU6IG1h
a2Ugc2VuZFJlcXVlc3QgYXN5bmMuCi0gICAgICAgICAgICB2YXIgcmVzcG9uc2UgPSBJbnNwZWN0
b3JGcm9udGVuZEhvc3QubG9hZFJlc291cmNlU3luY2hyb25vdXNseSh0aGlzLl9zb3VyY2VNYXBw
aW5nVVJMKTsKLSAgICAgICAgICAgIHRoaXMuX3BhcnNlTWFwcGluZ1BheWxvYWQoSlNPTi5wYXJz
ZShyZXNwb25zZSkpOwotICAgICAgICAgICAgcmV0dXJuIHRydWUKKyAgICAgICAgICAgIHRoaXMu
X3BhcnNlTWFwcGluZ1BheWxvYWQoSlNPTi5wYXJzZShtYXBwaW5nKSk7CisgICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICAgICAgfSBjYXRjaChlKSB7CiAgICAgICAgICAgICBjb25zb2xlLmVy
cm9yKGUubWVzc2FnZSk7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0xNDAsMTMgKzE1
OSw3IEBAIFdlYkluc3BlY3Rvci5DbG9zdXJlQ29tcGlsZXJTb3VyY2VNYXBwaW5nLnByb3RvdHlw
ZSA9IHsKICAgICAgKi8KICAgICBsb2FkU291cmNlQ29kZTogZnVuY3Rpb24oc291cmNlVVJMKQog
ICAgIHsKLSAgICAgICAgdHJ5IHsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBtYWtlIHNlbmRSZXF1
ZXN0IGFzeW5jLgotICAgICAgICAgICAgcmV0dXJuIEluc3BlY3RvckZyb250ZW5kSG9zdC5sb2Fk
UmVzb3VyY2VTeW5jaHJvbm91c2x5KHNvdXJjZVVSTCk7Ci0gICAgICAgIH0gY2F0Y2goZSkgewot
ICAgICAgICAgICAgY29uc29sZS5lcnJvcihlLm1lc3NhZ2UpOwotICAgICAgICAgICAgcmV0dXJu
ICIiOwotICAgICAgICB9CisgICAgICAgIHJldHVybiB0aGlzLl9sb2FkU3luY2hyb25vdXNseShz
b3VyY2VVUkwpIHx8ICIiOwogICAgIH0sCiAKICAgICBfZmluZE1hcHBpbmc6IGZ1bmN0aW9uKGxp
bmVOdW1iZXIsIGNvbHVtbk51bWJlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yRnJvbnRlbmRIb3N0U3R1Yi5qcyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW5zcGVjdG9yRnJvbnRlbmRIb3N0U3R1Yi5qcwppbmRl
eCBiM2MwNzY5MzU5NDkyNzBiMTIzMDczNWZjZjBmNzE5OGI1YTVkMTBiLi43YzE2NDc0ZDY0Njhk
M2I1NWU0NjkwN2RhZmIzOTczN2ZmMWFkNjQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0luc3BlY3RvckZyb250ZW5kSG9zdFN0dWIuanMKKysrIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbnNwZWN0b3JGcm9udGVuZEhvc3RTdHVi
LmpzCkBAIC0xNTAsMTEgKzE1MCw2IEBAIFdlYkluc3BlY3Rvci5JbnNwZWN0b3JGcm9udGVuZEhv
c3RTdHViLnByb3RvdHlwZSA9IHsKIAogICAgIHJlY29yZFNldHRpbmdDaGFuZ2VkOiBmdW5jdGlv
bihzZXR0aW5nQ29kZSkKICAgICB7Ci0gICAgfSwKLQotICAgIGxvYWRSZXNvdXJjZVN5bmNocm9u
b3VzbHk6IGZ1bmN0aW9uKHVybCkKLSAgICB7Ci0gICAgICAgIHJldHVybiAiIjsKICAgICB9CiB9
CiAK
</data>
<flag name="review"
          id="118156"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>