<?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>135121</bug_id>
          
          <creation_ts>2014-07-21 11:11:01 -0700</creation_ts>
          <short_desc>Provide networking process with access to its HSTS db</short_desc>
          <delta_ts>2014-07-22 12:59:28 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>ap</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1023720</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2014-07-21 11:11:01 -0700</bug_when>
    <thetext>Provide networking process with access to its parent app relative cache directory</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023721</commentid>
    <comment_count>1</comment_count>
      <attachid>235230</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2014-07-21 11:14:05 -0700</bug_when>
    <thetext>Created attachment 235230
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023744</commentid>
    <comment_count>2</comment_count>
      <attachid>235230</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-07-21 12:10:14 -0700</bug_when>
    <thetext>Comment on attachment 235230
Patch

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

&gt; Source/WebKit2/ChangeLog:14
&gt; +        Long term we will probably want to restrict this somewhat, but we obviously
&gt; +        can&apos;t control the exact files the CFNetwork may wish to use and create so
&gt; +        I&apos;m not sure how feasible this would be.

Having discussed this, hopefully we only need to allow HSTS.plist in this location.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1023994</commentid>
    <comment_count>3</comment_count>
      <attachid>235230</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2014-07-22 11:00:46 -0700</bug_when>
    <thetext>Comment on attachment 235230
Patch

Where trying a much more restrictive approach</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024004</commentid>
    <comment_count>4</comment_count>
      <attachid>235300</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2014-07-22 11:21:30 -0700</bug_when>
    <thetext>Created attachment 235300
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024006</commentid>
    <comment_count>5</comment_count>
      <attachid>235300</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-07-22 11:27:42 -0700</bug_when>
    <thetext>Comment on attachment 235300
Patch

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

r=me conditional on adding a FIXME with radar number to make this unnecessary. Please don&apos;t land without one.

&gt; Source/WebKit2/ChangeLog:10
&gt; +        directory in the network process, as the network sandbox

s/network process/UI process/

&gt; Source/WebKit2/NetworkProcess/cocoa/NetworkProcessCocoa.mm:64
&gt; +    SandboxExtension::consumePermanently(parameters.hstsDatabasePathExtensionHandle);

Do we need to do this on OS X? I don&apos;t think that we do, so it&apos;s confusing to have this code run on both platforms. Confusion in security sensitive code is worse than #ifs.

&gt; Source/WebKit2/Shared/Network/NetworkProcessCreationParameters.h:63
&gt; +    SandboxExtension::Handle hstsDatabasePathExtensionHandle;

Can we have a FIXME here with a bug tracking making this unnecessary please?

&gt; Source/WebKit2/UIProcess/WebContext.cpp:1218
&gt; +    if (!m_overrideNetworkingHSTSDatabasePath.isEmpty())
&gt; +        return m_overrideNetworkingHSTSDatabasePath;

There is no code anywhere to set m_overrideNetworkingHSTSDatabasePath. Please remove it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024011</commentid>
    <comment_count>6</comment_count>
      <attachid>235301</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2014-07-22 11:42:34 -0700</bug_when>
    <thetext>Created attachment 235301
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024021</commentid>
    <comment_count>7</comment_count>
      <attachid>235301</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-07-22 12:02:06 -0700</bug_when>
    <thetext>Comment on attachment 235301
Patch

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

Looks good to me, but still breaking builds.

&gt; Source/WebKit2/Shared/Network/NetworkProcessCreationParameters.h:63
&gt; +    // Remove this once &lt;rdar://problem/17726660&gt; is fixed.

&quot;FIXME: &quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1024041</commentid>
    <comment_count>8</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2014-07-22 12:59:28 -0700</bug_when>
    <thetext>Committed r171356: &lt;http://trac.webkit.org/changeset/171356&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235230</attachid>
            <date>2014-07-21 11:14:05 -0700</date>
            <delta_ts>2014-07-22 11:21:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135121-20140721111350.patch</filename>
            <type>text/plain</type>
            <size>7928</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMzA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWY0YTZjN2ZlODM0ZDgz
MGFmNGIxNGJiN2IyOTEzYmY4NTk5MTI2NC4uNDNlZTE1ZmEyOGMwMTQwNmU5MWY0MmNlNWRlOGE0
ZmNkNmYzMjUyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE0LTA3LTIxICBPbGl2
ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisKKyAgICAgICAgUHJvdmlkZSBuZXR3b3JraW5n
IHByb2Nlc3Mgd2l0aCBhY2Nlc3MgdG8gaXRzIHBhcmVudCBhcHAgcmVsYXRpdmUgY2FjaGUgZGly
ZWN0b3J5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MzUxMjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBD
Rk5ldHdvcmsgcmVxdWlyZXMgYWNjZXNzIHRvIGFuIGFycmF5IG9mIGZpbGVzIGluCisgICAgICAg
ICRjb250YWluZXIvTGlicmFyeS9DYWNoZXMvY29tLmFwcGxlLldlYmtpdC5OZXR3b3JraW5nIGFu
ZCByZXF1aXJlcyB0aGUKKyAgICAgICAgYWJpbGl0eSB0byBjcmVhdGUgbmV3IGZpbGVzIChzbyB3
ZSBjYW4ndCBwcm92aWRlIGFuIGV4dGVuc2lvbiBkaXJlY3RseSkuCisKKyAgICAgICAgTG9uZyB0
ZXJtIHdlIHdpbGwgcHJvYmFibHkgd2FudCB0byByZXN0cmljdCB0aGlzIHNvbWV3aGF0LCBidXQg
d2Ugb2J2aW91c2x5CisgICAgICAgIGNhbid0IGNvbnRyb2wgdGhlIGV4YWN0IGZpbGVzIHRoZSBD
Rk5ldHdvcmsgbWF5IHdpc2ggdG8gdXNlIGFuZCBjcmVhdGUgc28KKyAgICAgICAgSSdtIG5vdCBz
dXJlIGhvdyBmZWFzaWJsZSB0aGlzIHdvdWxkIGJlLgorCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3MvY29jb2EvTmV0d29ya1Byb2Nlc3NDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29y
a1Byb2Nlc3M6OnBsYXRmb3JtSW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2EpOgorICAgICAg
ICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29k
ZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpk
ZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25Q
YXJhbWV0ZXJzLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAg
ICAoV2ViS2l0OjpXZWJDb250ZXh0OjplbnN1cmVOZXR3b3JrUHJvY2Vzcyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkNvbnRleHQ6Om5ldHdvcmtpbmdTZXJ2aWNlQ2FjaGVEaXJlY3RvcnkpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0Lmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9X
ZWJDb250ZXh0TWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpwbGF0Zm9ybURl
ZmF1bHROZXR3b3JraW5nU2VydmljZUNhY2hlRGlyZWN0b3J5KToKKwogMjAxNC0wNy0yMSAgQnJh
ZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgRGF0YWJhc2VQcm9jZXNz
IGRvZXNuJ3QgcmVsYXVuY2ggYWZ0ZXIgY3Jhc2hpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tIGIvU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya1Byb2Nlc3NDb2NvYS5tbQppbmRl
eCBiMDc2MDRkZDA0OWY2Y2U5NzZhZmRlNmQ4MzNjNjE1ZTA5NjU3MzAzLi5hMWQ4N2NiODM0ZTUw
YTgyMzcyOTAzMWZkZDgwNzU2NGEzMzQ5NDhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9O
ZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW0KQEAgLTYx
LDYgKzYxLDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cGxhdGZvcm1Mb3dNZW1vcnlIYW5kbGVy
KGJvb2wpCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxpemVOZXR3b3JrUHJv
Y2Vzc0NvY29hKGNvbnN0IE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzJiBwYXJhbWV0
ZXJzKQogewogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0
ZXJzLmNvb2tpZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOworICAgIFNhbmRib3hF
eHRlbnNpb246OmNvbnN1bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLnNlcnZpY2VDYWNoZURpcmVj
dG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAgICAgbV9kaXNrQ2FjaGVEaXJlY3RvcnkgPSBwYXJhbWV0
ZXJzLmRpc2tDYWNoZURpcmVjdG9yeTsKIAogICAgIGlmICghbV9kaXNrQ2FjaGVEaXJlY3Rvcnku
aXNOdWxsKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcAppbmRleCAzZmJj
NTdhMjI4MWQ3ZGFlYzQ0YjBhYTkwZGE4NzQxZDI0MTE4ZjI4Li5jMmU2ZGY1NTA4MGY2Nzc2ODBk
ZjRkNjhiZTFjY2JmNDg4NmIwMGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
TmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMu
Y3BwCkBAIC00NCw2ICs0NCw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRl
cnM6OmVuY29kZShJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5jb2RlcikgY29uCiAgICAgZW5jb2Rl
ciA8PCBkaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAgICAgZW5jb2RlciA8PCBj
b29raWVTdG9yYWdlRGlyZWN0b3J5OwogICAgIGVuY29kZXIgPDwgY29va2llU3RvcmFnZURpcmVj
dG9yeUV4dGVuc2lvbkhhbmRsZTsKKyAgICBlbmNvZGVyIDw8IHNlcnZpY2VDYWNoZURpcmVjdG9y
eTsKKyAgICBlbmNvZGVyIDw8IHNlcnZpY2VDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsK
ICAgICBlbmNvZGVyIDw8IHNob3VsZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbjsKICNpZiBFTkFC
TEUoQ1VTVE9NX1BST1RPQ09MUykKICAgICBlbmNvZGVyIDw8IHVybFNjaGVtZXNSZWdpc3RlcmVk
Rm9yQ3VzdG9tUHJvdG9jb2xzOwpAQCAtNzksNiArODEsMTAgQEAgYm9vbCBOZXR3b3JrUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKElQQzo6QXJndW1lbnREZWNvZGVyJiBkZWNvZGVy
LCBOZXQKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci5kZWNvZGUocmVz
dWx0LmNvb2tpZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpKQogICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuc2VydmljZUNhY2hlRGly
ZWN0b3J5KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghZGVjb2Rlci5kZWNvZGUo
cmVzdWx0LnNlcnZpY2VDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5zaG91bGRVc2VUZXN0
aW5nTmV0d29ya1Nlc3Npb24pKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAjaWYgRU5BQkxFKENV
U1RPTV9QUk9UT0NPTFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29y
ay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAppbmRleCA4YmU2
YmZmY2U3N2IwZGUyNTQzZTliNWIwYmY1ZjlkOTJlNWE4MGM2Li4zMDk5MTdhNzRkM2I4YzNmMzk3
ODljMDBhNzkyNTgyMjAxMjZiOGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
TmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgK
QEAgLTU5LDYgKzU5LDkgQEAgc3RydWN0IE5ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJz
IHsKICAgICBTdHJpbmcgY29va2llU3RvcmFnZURpcmVjdG9yeTsKICAgICBTYW5kYm94RXh0ZW5z
aW9uOjpIYW5kbGUgY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKIAorICAg
IFN0cmluZyBzZXJ2aWNlQ2FjaGVEaXJlY3Rvcnk7CisgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFu
ZGxlIHNlcnZpY2VDYWNoZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKKwogICAgIGJvb2wgc2hv
dWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uOwogCiAjaWYgRU5BQkxFKENVU1RPTV9QUk9UT0NP
TFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKaW5kZXggODRjOGQ3MGQ4
NDY0ZTMxZmNhOWE0ZDg0MjBmYzQxODRkODk0N2NhMS4uYmYyN2RlYjljOWQ0MzQ3NTI4ZTMzMTU0
YjQ2NWRiODNkNjEwNTM5NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YkNvbnRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNw
cApAQCAtNDIwLDYgKzQyMCwxMCBAQCB2b2lkIFdlYkNvbnRleHQ6OmVuc3VyZU5ldHdvcmtQcm9j
ZXNzKCkKICAgICBpZiAoIXBhcmFtZXRlcnMuY29va2llU3RvcmFnZURpcmVjdG9yeS5pc0VtcHR5
KCkpCiAgICAgICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURp
cmVjdG9yeShwYXJhbWV0ZXJzLmNvb2tpZVN0b3JhZ2VEaXJlY3RvcnksIHBhcmFtZXRlcnMuY29v
a2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAKKyAgICBwYXJhbWV0ZXJzLnNl
cnZpY2VDYWNoZURpcmVjdG9yeSA9IG5ldHdvcmtpbmdTZXJ2aWNlQ2FjaGVEaXJlY3RvcnkoKTsK
KyAgICBpZiAoIXBhcmFtZXRlcnMuc2VydmljZUNhY2hlRGlyZWN0b3J5LmlzRW1wdHkoKSkKKyAg
ICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5
KHBhcmFtZXRlcnMuc2VydmljZUNhY2hlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLnNlcnZpY2VDYWNo
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CisKICAgICBwYXJhbWV0ZXJzLnNob3VsZFVzZVRl
c3RpbmdOZXR3b3JrU2Vzc2lvbiA9IG1fc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uOwog
CiAgICAgLy8gQWRkIGFueSBwbGF0Zm9ybSBzcGVjaWZpYyBwYXJhbWV0ZXJzCkBAIC0xMjA4LDYg
KzEyMTIsMTQgQEAgU3RyaW5nIFdlYkNvbnRleHQ6Om9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29u
c3QKICAgICByZXR1cm4gcGxhdGZvcm1EZWZhdWx0T3BlbkdMQ2FjaGVEaXJlY3RvcnkoKTsKIH0K
IAorU3RyaW5nIFdlYkNvbnRleHQ6Om5ldHdvcmtpbmdTZXJ2aWNlQ2FjaGVEaXJlY3RvcnkoKSBj
b25zdAoreworICAgIGlmICghbV9vdmVycmlkZU5ldHdvcmtpbmdTZXJ2aWNlQ2FjaGVEaXJlY3Rv
cnkuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbV9vdmVycmlkZU5ldHdvcmtpbmdTZXJ2aWNl
Q2FjaGVEaXJlY3Rvcnk7CisKKyAgICByZXR1cm4gcGxhdGZvcm1EZWZhdWx0TmV0d29ya2luZ1Nl
cnZpY2VDYWNoZURpcmVjdG9yeSgpOworfQorCiBTdHJpbmcgV2ViQ29udGV4dDo6bWVkaWFDYWNo
ZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX292ZXJyaWRlTWVkaWFDYWNoZURpcmVj
dG9yeS5pc0VtcHR5KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
Q29udGV4dC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaAppbmRleCBm
MWUzNzdlYzRlYjMyYjY2MWVhM2Y0NGExOGQ4ODE0MjlkMTg2MjJmLi40M2IzMzk2YTM2ODFjOWRj
ZmVkYTE0NGQxNDRkOTFjNmNjOGI2M2EzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250
ZXh0LmgKQEAgLTQyNyw2ICs0MjcsOSBAQCBwcml2YXRlOgogICAgIFN0cmluZyBvcGVuR0xDYWNo
ZURpcmVjdG9yeSgpIGNvbnN0OwogICAgIFN0cmluZyBwbGF0Zm9ybURlZmF1bHRPcGVuR0xDYWNo
ZURpcmVjdG9yeSgpIGNvbnN0OwogCisgICAgU3RyaW5nIG5ldHdvcmtpbmdTZXJ2aWNlQ2FjaGVE
aXJlY3RvcnkoKSBjb25zdDsKKyAgICBTdHJpbmcgcGxhdGZvcm1EZWZhdWx0TmV0d29ya2luZ1Nl
cnZpY2VDYWNoZURpcmVjdG9yeSgpIGNvbnN0OworCiAgICAgU3RyaW5nIG1lZGlhQ2FjaGVEaXJl
Y3RvcnkoKSBjb25zdDsKICAgICBTdHJpbmcgcGxhdGZvcm1NZWRpYUNhY2hlRGlyZWN0b3J5KCkg
Y29uc3Q7CiAKQEAgLTUyNiw2ICs1MjksNyBAQCBwcml2YXRlOgogICAgIFN0cmluZyBtX292ZXJy
aWRlRGlza0NhY2hlRGlyZWN0b3J5OwogICAgIFN0cmluZyBtX292ZXJyaWRlQ29va2llU3RvcmFn
ZURpcmVjdG9yeTsKICAgICBTdHJpbmcgbV9vdmVycmlkZU9wZW5HTENhY2hlRGlyZWN0b3J5Owor
ICAgIFN0cmluZyBtX292ZXJyaWRlTmV0d29ya2luZ1NlcnZpY2VDYWNoZURpcmVjdG9yeTsKICAg
ICBTdHJpbmcgbV9vdmVycmlkZU1lZGlhQ2FjaGVEaXJlY3Rvcnk7CiAKICAgICBTdHJpbmcgbV93
ZWJTUUxEYXRhYmFzZURpcmVjdG9yeTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
V2ViQ29udGV4dE1hYy5tbQppbmRleCBiYTYxNDQzZjk2YzRhMTg4ZjdkMTdiYjU3OTg4ZDA5YTc2
MDA3NTgyLi5kY2JkZmEzYTk5OThhNDNhYTdiMWU5MWYwNGIwZGY3ZDMzNzA2ODk1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0KKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFjLm1tCkBAIC0zMDMsNiAr
MzAzLDIxIEBAIFN0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRPcGVuR0xDYWNoZURp
cmVjdG9yeSgpIGNvbnN0CiAjZW5kaWYKIH0KIAorU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3Jt
RGVmYXVsdE5ldHdvcmtpbmdTZXJ2aWNlQ2FjaGVEaXJlY3RvcnkoKSBjb25zdAoreworI2lmIFBM
QVRGT1JNKElPUykKKyAgICBTdHJpbmcgcGF0aCA9IHBhdGhGb3JQcm9jZXNzQ29udGFpbmVyKCk7
CisgICAgaWYgKHBhdGguaXNFbXB0eSgpKQorICAgICAgICBwYXRoID0gTlNIb21lRGlyZWN0b3J5
KCk7CisKKyAgICBwYXRoID0gcGF0aCArICIvTGlicmFyeS9DYWNoZXMvY29tLmFwcGxlLldlYktp
dC5OZXR3b3JraW5nLyI7CisgICAgcmV0dXJuIHN0cmluZ0J5UmVzb2x2aW5nU3ltbGlua3NJblBh
dGgocGF0aCk7CisjZWxzZQorICAgIG5vdEltcGxlbWVudGVkKCk7CisgICAgcmV0dXJuIFtAIiIg
c3RyaW5nQnlTdGFuZGFyZGl6aW5nUGF0aF07CisjZW5kaWYKK30KKwogU3RyaW5nIFdlYkNvbnRl
eHQ6OnBsYXRmb3JtTWVkaWFDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiB7CiAjaWYgUExBVEZPUk0o
SU9TKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235300</attachid>
            <date>2014-07-22 11:21:30 -0700</date>
            <delta_ts>2014-07-22 11:42:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135121-20140722112115.patch</filename>
            <type>text/plain</type>
            <size>7965</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMzQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggODBlOTFjMDFiZmE2OWZi
NTc0MzRhMzFiMzE2YTVlZmVhMjVkY2FmNy4uNjc1MDAwMjAzYzYzMzUyOTBlYTZmNDA0NWEyNzVi
OGEzNDgzNzIyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE0LTA3LTIyICBPbGl2
ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisKKyAgICAgICAgUHJvdmlkZSBuZXR3b3JraW5n
IHByb2Nlc3Mgd2l0aCBhY2Nlc3MgdG8gaXRzIEhTVFMgZGIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTEyMQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhbiBleHRlbnNpb24gcGFyYW1ldGVyIHRv
IHBhc3MgdGhlIGhzdHMgZGF0YWJhc2UgZmlsZS4KKyAgICAgICAgVGhpcyByZXF1aXJlcyB1cyB0
byBjcmVhdGUgdGhlIENhY2hlcy9jb20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmcKKyAgICAgICAg
ZGlyZWN0b3J5IGluIHRoZSBuZXR3b3JrIHByb2Nlc3MsIGFzIHRoZSBuZXR3b3JrIHNhbmRib3gK
KyAgICAgICAgZG9lcyBub3QgYWxsb3cgaXQgdG8gY3JlYXRlIHRoZSBjb250YWluaW5nIGRpcmVj
dG9yeS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29j
b2EubW06CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9ybUluaXRpYWxp
emVOZXR3b3JrUHJvY2Vzc0NvY29hKToKKyAgICAgICAgKiBTaGFyZWQvTmV0d29yay9OZXR3b3Jr
UHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQ
cm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQv
TmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5oOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9XZWJDb250ZXh0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6ZW5z
dXJlTmV0d29ya1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpuZXR3b3Jr
aW5nSFNUU0RhdGFiYXNlUGF0aCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW06CisgICAgICAgIChXZWJL
aXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdE5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRo
KToKKwogMjAxNC0wNy0yMiAgU2hpdmFrdW1hciBKTSAgPHNoaXZhLmptQHNhbXN1bmcuY29tPgog
CiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEZpeCB1bnVzZWQgcGFyYW1ldGVyIGJ1aWxkIHdhcm5p
bmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdv
cmtQcm9jZXNzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9O
ZXR3b3JrUHJvY2Vzc0NvY29hLm1tCmluZGV4IGIwNzYwNGRkMDQ5ZjZjZTk3NmFmZGU2ZDgzM2M2
MTVlMDk2NTczMDMuLjQzZmJkOWU5OTA4NTU1M2EwMjFlYzE4NTgyODRjNDE3MDUxZTliNDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQcm9j
ZXNzQ29jb2EubW0KKysrIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0
d29ya1Byb2Nlc3NDb2NvYS5tbQpAQCAtNjEsNiArNjEsNyBAQCB2b2lkIE5ldHdvcmtQcm9jZXNz
OjpwbGF0Zm9ybUxvd01lbW9yeUhhbmRsZXIoYm9vbCkKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnBs
YXRmb3JtSW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQ29jb2EoY29uc3QgTmV0d29ya1Byb2Nlc3ND
cmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMpCiB7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6
Y29uc3VtZVBlcm1hbmVudGx5KHBhcmFtZXRlcnMuY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVu
c2lvbkhhbmRsZSk7CisgICAgU2FuZGJveEV4dGVuc2lvbjo6Y29uc3VtZVBlcm1hbmVudGx5KHBh
cmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aEV4dGVuc2lvbkhhbmRsZSk7CiAgICAgbV9kaXNrQ2Fj
aGVEaXJlY3RvcnkgPSBwYXJhbWV0ZXJzLmRpc2tDYWNoZURpcmVjdG9yeTsKIAogICAgIGlmICgh
bV9kaXNrQ2FjaGVEaXJlY3RvcnkuaXNOdWxsKCkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmNwcAppbmRleCAzZmJjNTdhMjI4MWQ3ZGFlYzQ0YjBhYTkwZGE4NzQxZDI0MTE4ZjI4
Li5lMTdiZjliMTYxMDNjNzg2MWYzNDcxOWU4YTI5MDA2NTBmNTYwZThmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Byb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCkBAIC00NCw2ICs0NCw4IEBAIHZvaWQgTmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmVuY29kZShJUEM6OkFyZ3VtZW50RW5jb2RlciYgZW5j
b2RlcikgY29uCiAgICAgZW5jb2RlciA8PCBkaXNrQ2FjaGVEaXJlY3RvcnlFeHRlbnNpb25IYW5k
bGU7CiAgICAgZW5jb2RlciA8PCBjb29raWVTdG9yYWdlRGlyZWN0b3J5OwogICAgIGVuY29kZXIg
PDwgY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKKyAgICBlbmNvZGVyIDw8
IGhzdHNEYXRhYmFzZVBhdGg7CisgICAgZW5jb2RlciA8PCBoc3RzRGF0YWJhc2VQYXRoRXh0ZW5z
aW9uSGFuZGxlOwogICAgIGVuY29kZXIgPDwgc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9u
OwogI2lmIEVOQUJMRShDVVNUT01fUFJPVE9DT0xTKQogICAgIGVuY29kZXIgPDwgdXJsU2NoZW1l
c1JlZ2lzdGVyZWRGb3JDdXN0b21Qcm90b2NvbHM7CkBAIC03OSw2ICs4MSwxMCBAQCBib29sIE5l
dHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUoSVBDOjpBcmd1bWVudERlY29k
ZXImIGRlY29kZXIsIE5ldAogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVy
LmRlY29kZShyZXN1bHQuY29va2llU3RvcmFnZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSkpCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIWRlY29kZXIuZGVjb2RlKHJlc3VsdC5oc3Rz
RGF0YWJhc2VQYXRoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlmICghZGVjb2Rlci5k
ZWNvZGUocmVzdWx0LmhzdHNEYXRhYmFzZVBhdGhFeHRlbnNpb25IYW5kbGUpKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgaWYgKCFkZWNvZGVyLmRlY29kZShyZXN1bHQuc2hvdWxkVXNlVGVz
dGluZ05ldHdvcmtTZXNzaW9uKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogI2lmIEVOQUJMRShD
VVNUT01fUFJPVE9DT0xTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdv
cmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaCBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmgKaW5kZXggOGJl
NmJmZmNlNzdiMGRlMjU0M2U5YjViMGJmNWY5ZDkyZTVhODBjNi4uN2JiOGE1OGZiNWRlODg4YTcx
NjY2MWU5ODcxNTFmYTAyNmM1ZDhmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVk
L05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
CkBAIC01OSw2ICs1OSw5IEBAIHN0cnVjdCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVy
cyB7CiAgICAgU3RyaW5nIGNvb2tpZVN0b3JhZ2VEaXJlY3Rvcnk7CiAgICAgU2FuZGJveEV4dGVu
c2lvbjo6SGFuZGxlIGNvb2tpZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7CiAKKyAg
ICBTdHJpbmcgaHN0c0RhdGFiYXNlUGF0aDsKKyAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUg
aHN0c0RhdGFiYXNlUGF0aEV4dGVuc2lvbkhhbmRsZTsKKwogICAgIGJvb2wgc2hvdWxkVXNlVGVz
dGluZ05ldHdvcmtTZXNzaW9uOwogCiAjaWYgRU5BQkxFKENVU1RPTV9QUk9UT0NPTFMpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKaW5kZXggODRjOGQ3MGQ4NDY0ZTMxZmNh
OWE0ZDg0MjBmYzQxODRkODk0N2NhMS4uNTViMWYxNjY4ZWE0ZWJmNDljN2JjNTA2NTUxNzgzOTcy
YWM3Yzg0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcApAQCAtNDIw
LDYgKzQyMCwxMCBAQCB2b2lkIFdlYkNvbnRleHQ6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkKICAg
ICBpZiAoIXBhcmFtZXRlcnMuY29va2llU3RvcmFnZURpcmVjdG9yeS5pc0VtcHR5KCkpCiAgICAg
ICAgIFNhbmRib3hFeHRlbnNpb246OmNyZWF0ZUhhbmRsZUZvclJlYWRXcml0ZURpcmVjdG9yeShw
YXJhbWV0ZXJzLmNvb2tpZVN0b3JhZ2VEaXJlY3RvcnksIHBhcmFtZXRlcnMuY29va2llU3RvcmFn
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7CiAKKyAgICBwYXJhbWV0ZXJzLmhzdHNEYXRhYmFz
ZVBhdGggPSBuZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpOworICAgIGlmICghcGFyYW1ldGVy
cy5oc3RzRGF0YWJhc2VQYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgU2FuZGJveEV4dGVuc2lvbjo6
Y3JlYXRlSGFuZGxlKHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aCwgU2FuZGJveEV4dGVuc2lv
bjo6UmVhZFdyaXRlLCBwYXJhbWV0ZXJzLmhzdHNEYXRhYmFzZVBhdGhFeHRlbnNpb25IYW5kbGUp
OworCiAgICAgcGFyYW1ldGVycy5zaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb24gPSBtX3No
b3VsZFVzZVRlc3RpbmdOZXR3b3JrU2Vzc2lvbjsKIAogICAgIC8vIEFkZCBhbnkgcGxhdGZvcm0g
c3BlY2lmaWMgcGFyYW1ldGVycwpAQCAtMTIwOCw2ICsxMjEyLDE0IEBAIFN0cmluZyBXZWJDb250
ZXh0OjpvcGVuR0xDYWNoZURpcmVjdG9yeSgpIGNvbnN0CiAgICAgcmV0dXJuIHBsYXRmb3JtRGVm
YXVsdE9wZW5HTENhY2hlRGlyZWN0b3J5KCk7CiB9CiAKK1N0cmluZyBXZWJDb250ZXh0OjpuZXR3
b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpIGNvbnN0Cit7CisgICAgaWYgKCFtX292ZXJyaWRlTmV0
d29ya2luZ0hTVFNEYXRhYmFzZVBhdGguaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbV9vdmVy
cmlkZU5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoOworCisgICAgcmV0dXJuIHBsYXRmb3JtRGVm
YXVsdE5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoKCk7Cit9CisKIFN0cmluZyBXZWJDb250ZXh0
OjptZWRpYUNhY2hlRGlyZWN0b3J5KCkgY29uc3QKIHsKICAgICBpZiAoIW1fb3ZlcnJpZGVNZWRp
YUNhY2hlRGlyZWN0b3J5LmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4
dC5oCmluZGV4IGYxZTM3N2VjNGViMzJiNjYxZWEzZjQ0YTE4ZDg4MTQyOWQxODYyMmYuLjBjMDAz
YWMzNjkxNTkyNGU1ODM0OGI4YWQ2Yjk5ZTU3NGRkMmI4NjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkNvbnRleHQuaApAQCAtNDI3LDYgKzQyNyw5IEBAIHByaXZhdGU6CiAgICAgU3RyaW5n
IG9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3Q7CiAgICAgU3RyaW5nIHBsYXRmb3JtRGVmYXVs
dE9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3Q7CiAKKyAgICBTdHJpbmcgbmV0d29ya2luZ0hT
VFNEYXRhYmFzZVBhdGgoKSBjb25zdDsKKyAgICBTdHJpbmcgcGxhdGZvcm1EZWZhdWx0TmV0d29y
a2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdDsKKwogICAgIFN0cmluZyBtZWRpYUNhY2hlRGly
ZWN0b3J5KCkgY29uc3Q7CiAgICAgU3RyaW5nIHBsYXRmb3JtTWVkaWFDYWNoZURpcmVjdG9yeSgp
IGNvbnN0OwogCkBAIC01MjYsNiArNTI5LDcgQEAgcHJpdmF0ZToKICAgICBTdHJpbmcgbV9vdmVy
cmlkZURpc2tDYWNoZURpcmVjdG9yeTsKICAgICBTdHJpbmcgbV9vdmVycmlkZUNvb2tpZVN0b3Jh
Z2VEaXJlY3Rvcnk7CiAgICAgU3RyaW5nIG1fb3ZlcnJpZGVPcGVuR0xDYWNoZURpcmVjdG9yeTsK
KyAgICBTdHJpbmcgbV9vdmVycmlkZU5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoOwogICAgIFN0
cmluZyBtX292ZXJyaWRlTWVkaWFDYWNoZURpcmVjdG9yeTsKIAogICAgIFN0cmluZyBtX3dlYlNR
TERhdGFiYXNlRGlyZWN0b3J5OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L21hYy9XZWJDb250ZXh0TWFjLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJD
b250ZXh0TWFjLm1tCmluZGV4IDE4ZGM3NGM5MjM0NjdmMGZiNDdiZDVjNDg3MjY0ZjQzNWRjYzkz
YWIuLmQxODIzNTZjNGMwMDVkM2U0YjMxNTc5Y2JhYWQxNWZkZWJkMGY2Y2IgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0KQEAgLTI5OSw2ICsyOTks
MzAgQEAgU3RyaW5nIFdlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdE9wZW5HTENhY2hlRGlyZWN0
b3J5KCkgY29uc3QKICNlbmRpZgogfQogCitTdHJpbmcgV2ViQ29udGV4dDo6cGxhdGZvcm1EZWZh
dWx0TmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKSBjb25zdAoreworI2lmIFBMQVRGT1JNKElP
UykKKyAgICBTdHJpbmcgcGF0aCA9IHBhdGhGb3JQcm9jZXNzQ29udGFpbmVyKCk7CisgICAgaWYg
KHBhdGguaXNFbXB0eSgpKQorICAgICAgICBwYXRoID0gTlNIb21lRGlyZWN0b3J5KCk7CisKKyAg
ICBwYXRoID0gcGF0aCArICIvTGlicmFyeS9DYWNoZXMvY29tLmFwcGxlLldlYktpdC5OZXR3b3Jr
aW5nLyI7CisgICAgcGF0aCA9IHN0cmluZ0J5UmVzb2x2aW5nU3ltbGlua3NJblBhdGgocGF0aCk7
CisKKyAgICBOU0Vycm9yICplcnJvciA9IG5pbDsKKyAgICBOU1N0cmluZyogbnNQYXRoID0gcGF0
aDsKKyAgICBpZiAoIVtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gY3JlYXRlRGlyZWN0
b3J5QXRQYXRoOm5zUGF0aCB3aXRoSW50ZXJtZWRpYXRlRGlyZWN0b3JpZXM6WUVTIGF0dHJpYnV0
ZXM6bmlsIGVycm9yOiZlcnJvcl0pIHsKKyAgICAgICAgTlNMb2coQCJjb3VsZCBub3QgY3JlYXRl
IFwiJUBcIiwgZXJyb3IgJUAiLCBuc1BhdGgsIGVycm9yKTsKKyAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOworICAgIH0KKworICAgIHJldHVybiBwYXRoICsgIkhTVFMucGxpc3QiOworI2Vsc2UKKyAg
ICBub3RJbXBsZW1lbnRlZCgpOworICAgIHJldHVybiBbQCIiIHN0cmluZ0J5U3RhbmRhcmRpemlu
Z1BhdGhdOworI2VuZGlmCit9CisKIFN0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9ybU1lZGlhQ2Fj
aGVEaXJlY3RvcnkoKSBjb25zdAogewogI2lmIFBMQVRGT1JNKElPUykK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>235301</attachid>
            <date>2014-07-22 11:42:34 -0700</date>
            <delta_ts>2014-07-22 12:02:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-135121-20140722114219.patch</filename>
            <type>text/plain</type>
            <size>7747</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTcxMzQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggODBlOTFjMDFiZmE2OWZi
NTc0MzRhMzFiMzE2YTVlZmVhMjVkY2FmNy4uYWM4MzNhMDU2OGFhMWM3MTM2MGRiNTlhYzUzZDEx
ZjYwYzA0NDkyOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE0LTA3LTIyICBPbGl2
ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CisKKyAgICAgICAgUHJvdmlkZSBuZXR3b3JraW5n
IHByb2Nlc3Mgd2l0aCBhY2Nlc3MgdG8gaXRzIEhTVFMgZGIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTEyMQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhbiBleHRlbnNpb24gcGFyYW1ldGVyIHRv
IHBhc3MgdGhlIGhzdHMgZGF0YWJhc2UgZmlsZS4KKyAgICAgICAgVGhpcyByZXF1aXJlcyB1cyB0
byBjcmVhdGUgdGhlIENhY2hlcy9jb20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmcKKyAgICAgICAg
ZGlyZWN0b3J5IGluIHRoZSBVSSBwcm9jZXNzLCBhcyB0aGUgbmV0d29yayBzYW5kYm94CisgICAg
ICAgIGRvZXMgbm90IGFsbG93IGl0IHRvIGNyZWF0ZSB0aGUgY29udGFpbmluZyBkaXJlY3Rvcnku
CisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0NvY29hLm1t
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6cGxhdGZvcm1Jbml0aWFsaXplTmV0
d29ya1Byb2Nlc3NDb2NvYSk6CisgICAgICAgICogU2hhcmVkL05ldHdvcmsvTmV0d29ya1Byb2Nl
c3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vz
c0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL05ldHdv
cmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuaDoKKyAgICAgICAgKiBVSVByb2Nl
c3MvV2ViQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OmVuc3VyZU5l
dHdvcmtQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6bmV0d29ya2luZ0hT
VFNEYXRhYmFzZVBhdGgpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0Lmg6CisgICAg
ICAgICogVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpX
ZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHROZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCk6CisK
IDIwMTQtMDctMjIgIFNoaXZha3VtYXIgSk0gIDxzaGl2YS5qbUBzYW1zdW5nLmNvbT4KIAogICAg
ICAgICBXZWIgSW5zcGVjdG9yOiBGaXggdW51c2VkIHBhcmFtZXRlciBidWlsZCB3YXJuaW5nCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJv
Y2Vzc0NvY29hLm1tIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29y
a1Byb2Nlc3NDb2NvYS5tbQppbmRleCBiMDc2MDRkZDA0OWY2Y2U5NzZhZmRlNmQ4MzNjNjE1ZTA5
NjU3MzAzLi4xYWFkNDI4ZDFjYWNjZWZlZmY5OTM5MDEwNjA1N2RmNDgzZTNjOTA1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrUHJvY2Vzc0Nv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtQ
cm9jZXNzQ29jb2EubW0KQEAgLTYxLDYgKzYxLDkgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cGxh
dGZvcm1Mb3dNZW1vcnlIYW5kbGVyKGJvb2wpCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpwbGF0Zm9y
bUluaXRpYWxpemVOZXR3b3JrUHJvY2Vzc0NvY29hKGNvbnN0IE5ldHdvcmtQcm9jZXNzQ3JlYXRp
b25QYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogewogICAgIFNhbmRib3hFeHRlbnNpb246OmNvbnN1
bWVQZXJtYW5lbnRseShwYXJhbWV0ZXJzLmNvb2tpZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25I
YW5kbGUpOworI2lmIFBMQVRGT1JNKElPUykKKyAgICBTYW5kYm94RXh0ZW5zaW9uOjpjb25zdW1l
UGVybWFuZW50bHkocGFyYW1ldGVycy5oc3RzRGF0YWJhc2VQYXRoRXh0ZW5zaW9uSGFuZGxlKTsK
KyNlbmRpZgogICAgIG1fZGlza0NhY2hlRGlyZWN0b3J5ID0gcGFyYW1ldGVycy5kaXNrQ2FjaGVE
aXJlY3Rvcnk7CiAKICAgICBpZiAoIW1fZGlza0NhY2hlRGlyZWN0b3J5LmlzTnVsbCgpKSB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Ny
ZWF0aW9uUGFyYW1ldGVycy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3
b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAKaW5kZXggM2ZiYzU3YTIyODFkN2RhZWM0
NGIwYWE5MGRhODc0MWQyNDExOGYyOC4uOWIwMzhlOGJkM2NjYjc1ZjJjYzFiOTM1N2RhYjA5NDQw
NDhmMDhiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29y
a1Byb2Nlc3NDcmVhdGlvblBhcmFtZXRlcnMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ3JlYXRpb25QYXJhbWV0ZXJzLmNwcApAQCAtNDQsNiAr
NDQsMTAgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVyczo6ZW5jb2RlKElQ
Qzo6QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyKSBjb24KICAgICBlbmNvZGVyIDw8IGRpc2tDYWNo
ZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZTsKICAgICBlbmNvZGVyIDw8IGNvb2tpZVN0b3JhZ2VE
aXJlY3Rvcnk7CiAgICAgZW5jb2RlciA8PCBjb29raWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9u
SGFuZGxlOworI2lmIFBMQVRGT1JNKElPUykKKyAgICBlbmNvZGVyIDw8IGhzdHNEYXRhYmFzZVBh
dGg7CisgICAgZW5jb2RlciA8PCBoc3RzRGF0YWJhc2VQYXRoRXh0ZW5zaW9uSGFuZGxlOworI2Vu
ZGlmCiAgICAgZW5jb2RlciA8PCBzaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb247CiAjaWYg
RU5BQkxFKENVU1RPTV9QUk9UT0NPTFMpCiAgICAgZW5jb2RlciA8PCB1cmxTY2hlbWVzUmVnaXN0
ZXJlZEZvckN1c3RvbVByb3RvY29sczsKQEAgLTc5LDYgKzgzLDEyIEBAIGJvb2wgTmV0d29ya1By
b2Nlc3NDcmVhdGlvblBhcmFtZXRlcnM6OmRlY29kZShJUEM6OkFyZ3VtZW50RGVjb2RlciYgZGVj
b2RlciwgTmV0CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHJlc3VsdC5jb29raWVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOworI2lmIFBMQVRGT1JNKElPUykKKyAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHJlc3VsdC5oc3RzRGF0YWJhc2VQYXRoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIGlm
ICghZGVjb2Rlci5kZWNvZGUocmVzdWx0LmhzdHNEYXRhYmFzZVBhdGhFeHRlbnNpb25IYW5kbGUp
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKICAgICBpZiAoIWRlY29kZXIuZGVjb2Rl
KHJlc3VsdC5zaG91bGRVc2VUZXN0aW5nTmV0d29ya1Nlc3Npb24pKQogICAgICAgICByZXR1cm4g
ZmFsc2U7CiAjaWYgRU5BQkxFKENVU1RPTV9QUk9UT0NPTFMpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5o
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDcmVhdGlvblBh
cmFtZXRlcnMuaAppbmRleCA4YmU2YmZmY2U3N2IwZGUyNTQzZTliNWIwYmY1ZjlkOTJlNWE4MGM2
Li43MDg2ZDU2ZTI5NDY0ZTYzZjAwNmY1NjJhY2NiMmI1M2EwYjkzOGQ2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0NyZWF0aW9uUGFyYW1l
dGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTU5LDYgKzU5LDExIEBAIHN0cnVjdCBOZXR3b3JrUHJv
Y2Vzc0NyZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgU3RyaW5nIGNvb2tpZVN0b3JhZ2VEaXJlY3Rv
cnk7CiAgICAgU2FuZGJveEV4dGVuc2lvbjo6SGFuZGxlIGNvb2tpZVN0b3JhZ2VEaXJlY3RvcnlF
eHRlbnNpb25IYW5kbGU7CiAKKyNpZiBQTEFURk9STShJT1MpCisgICAgLy8gUmVtb3ZlIHRoaXMg
b25jZSA8cmRhcjovL3Byb2JsZW0vMTc3MjY2NjA+IGlzIGZpeGVkLgorICAgIFN0cmluZyBoc3Rz
RGF0YWJhc2VQYXRoOworICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBoc3RzRGF0YWJhc2VQ
YXRoRXh0ZW5zaW9uSGFuZGxlOworI2VuZGlmCiAgICAgYm9vbCBzaG91bGRVc2VUZXN0aW5nTmV0
d29ya1Nlc3Npb247CiAKICNpZiBFTkFCTEUoQ1VTVE9NX1BST1RPQ09MUykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcAppbmRleCA4NGM4ZDcwZDg0NjRlMzFmY2E5YTRkODQy
MGZjNDE4NGQ4OTQ3Y2ExLi43NzM1YmY4NTBkODQ5ZGJjNDFhMzVkZDQ1NjA1ZDAxYzBkNmQ3MTRh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCkBAIC00MjAsNiArNDIw
LDEyIEBAIHZvaWQgV2ViQ29udGV4dDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoKQogICAgIGlmICgh
cGFyYW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0b3J5LmlzRW1wdHkoKSkKICAgICAgICAgU2Fu
ZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5KHBhcmFtZXRl
cnMuY29va2llU3RvcmFnZURpcmVjdG9yeSwgcGFyYW1ldGVycy5jb29raWVTdG9yYWdlRGlyZWN0
b3J5RXh0ZW5zaW9uSGFuZGxlKTsKIAorI2lmIFBMQVRGT1JNKElPUykKKyAgICBwYXJhbWV0ZXJz
LmhzdHNEYXRhYmFzZVBhdGggPSBuZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpOworICAgIGlm
ICghcGFyYW1ldGVycy5oc3RzRGF0YWJhc2VQYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgU2FuZGJv
eEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlKHBhcmFtZXRlcnMuaHN0c0RhdGFiYXNlUGF0aCwgU2Fu
ZGJveEV4dGVuc2lvbjo6UmVhZFdyaXRlLCBwYXJhbWV0ZXJzLmhzdHNEYXRhYmFzZVBhdGhFeHRl
bnNpb25IYW5kbGUpOworI2VuZGlmCisKICAgICBwYXJhbWV0ZXJzLnNob3VsZFVzZVRlc3RpbmdO
ZXR3b3JrU2Vzc2lvbiA9IG1fc2hvdWxkVXNlVGVzdGluZ05ldHdvcmtTZXNzaW9uOwogCiAgICAg
Ly8gQWRkIGFueSBwbGF0Zm9ybSBzcGVjaWZpYyBwYXJhbWV0ZXJzCkBAIC0xMjA4LDYgKzEyMTQs
MTEgQEAgU3RyaW5nIFdlYkNvbnRleHQ6Om9wZW5HTENhY2hlRGlyZWN0b3J5KCkgY29uc3QKICAg
ICByZXR1cm4gcGxhdGZvcm1EZWZhdWx0T3BlbkdMQ2FjaGVEaXJlY3RvcnkoKTsKIH0KIAorU3Ry
aW5nIFdlYkNvbnRleHQ6Om5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoKCkgY29uc3QKK3sKKyAg
ICByZXR1cm4gcGxhdGZvcm1EZWZhdWx0TmV0d29ya2luZ0hTVFNEYXRhYmFzZVBhdGgoKTsKK30K
KwogU3RyaW5nIFdlYkNvbnRleHQ6Om1lZGlhQ2FjaGVEaXJlY3RvcnkoKSBjb25zdAogewogICAg
IGlmICghbV9vdmVycmlkZU1lZGlhQ2FjaGVEaXJlY3RvcnkuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKaW5kZXggZjFlMzc3ZWM0ZWIzMmI2NjFlYTNmNDRhMThk
ODgxNDI5ZDE4NjIyZi4uZTk4YzY0ZDdhZjBhMWNjYmRmNGQxNTU3MWFlMjFkOWVmZDk0YThlZiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oCkBAIC00MjcsNiArNDI3LDkgQEAg
cHJpdmF0ZToKICAgICBTdHJpbmcgb3BlbkdMQ2FjaGVEaXJlY3RvcnkoKSBjb25zdDsKICAgICBT
dHJpbmcgcGxhdGZvcm1EZWZhdWx0T3BlbkdMQ2FjaGVEaXJlY3RvcnkoKSBjb25zdDsKIAorICAg
IFN0cmluZyBuZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpIGNvbnN0OworICAgIFN0cmluZyBw
bGF0Zm9ybURlZmF1bHROZXR3b3JraW5nSFNUU0RhdGFiYXNlUGF0aCgpIGNvbnN0OworCiAgICAg
U3RyaW5nIG1lZGlhQ2FjaGVEaXJlY3RvcnkoKSBjb25zdDsKICAgICBTdHJpbmcgcGxhdGZvcm1N
ZWRpYUNhY2hlRGlyZWN0b3J5KCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9tYWMvV2ViQ29udGV4dE1hYy5tbQppbmRleCAxOGRjNzRjOTIzNDY3ZjBmYjQ3YmQ1YzQ4NzI2
NGY0MzVkY2M5M2FiLi5kMTgyMzU2YzRjMDA1ZDNlNGIzMTU3OWNiYWFkMTVmZGViZDBmNmNiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNYWMubW0K
KysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWFjLm1tCkBAIC0y
OTksNiArMjk5LDMwIEBAIFN0cmluZyBXZWJDb250ZXh0OjpwbGF0Zm9ybURlZmF1bHRPcGVuR0xD
YWNoZURpcmVjdG9yeSgpIGNvbnN0CiAjZW5kaWYKIH0KIAorU3RyaW5nIFdlYkNvbnRleHQ6OnBs
YXRmb3JtRGVmYXVsdE5ldHdvcmtpbmdIU1RTRGF0YWJhc2VQYXRoKCkgY29uc3QKK3sKKyNpZiBQ
TEFURk9STShJT1MpCisgICAgU3RyaW5nIHBhdGggPSBwYXRoRm9yUHJvY2Vzc0NvbnRhaW5lcigp
OworICAgIGlmIChwYXRoLmlzRW1wdHkoKSkKKyAgICAgICAgcGF0aCA9IE5TSG9tZURpcmVjdG9y
eSgpOworCisgICAgcGF0aCA9IHBhdGggKyAiL0xpYnJhcnkvQ2FjaGVzL2NvbS5hcHBsZS5XZWJL
aXQuTmV0d29ya2luZy8iOworICAgIHBhdGggPSBzdHJpbmdCeVJlc29sdmluZ1N5bWxpbmtzSW5Q
YXRoKHBhdGgpOworCisgICAgTlNFcnJvciAqZXJyb3IgPSBuaWw7CisgICAgTlNTdHJpbmcqIG5z
UGF0aCA9IHBhdGg7CisgICAgaWYgKCFbW05TRmlsZU1hbmFnZXIgZGVmYXVsdE1hbmFnZXJdIGNy
ZWF0ZURpcmVjdG9yeUF0UGF0aDpuc1BhdGggd2l0aEludGVybWVkaWF0ZURpcmVjdG9yaWVzOllF
UyBhdHRyaWJ1dGVzOm5pbCBlcnJvcjomZXJyb3JdKSB7CisgICAgICAgIE5TTG9nKEAiY291bGQg
bm90IGNyZWF0ZSBcIiVAXCIsIGVycm9yICVAIiwgbnNQYXRoLCBlcnJvcik7CisgICAgICAgIHJl
dHVybiBTdHJpbmcoKTsKKyAgICB9CisKKyAgICByZXR1cm4gcGF0aCArICJIU1RTLnBsaXN0IjsK
KyNlbHNlCisgICAgbm90SW1wbGVtZW50ZWQoKTsKKyAgICByZXR1cm4gW0AiIiBzdHJpbmdCeVN0
YW5kYXJkaXppbmdQYXRoXTsKKyNlbmRpZgorfQorCiBTdHJpbmcgV2ViQ29udGV4dDo6cGxhdGZv
cm1NZWRpYUNhY2hlRGlyZWN0b3J5KCkgY29uc3QKIHsKICNpZiBQTEFURk9STShJT1MpCg==
</data>
<flag name="review"
          id="259870"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>