<?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>13075</bug_id>
          
          <creation_ts>2007-03-14 14:13:21 -0700</creation_ts>
          <short_desc>XMLHttpRequest with failed authentication should set status to 401</short_desc>
          <delta_ts>2010-07-12 09:59:33 -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>XML</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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>
          <dependson>14704</dependson>
          <blocked>10489</blocked>
    
    <blocked>6871</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jesse Costello-Good">jesse</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>annevk</cc>
    
    <cc>ap</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>18919</commentid>
    <comment_count>0</comment_count>
    <who name="Jesse Costello-Good">jesse</who>
    <bug_when>2007-03-14 14:13:21 -0700</bug_when>
    <thetext>The current behavior is to throw an error (NETWORK_ERR: XMLHttpRequest Exception 101) for synchronous requests and set the status to 0 for asynchronous requests.

IE and Fx both correctly set the status to 401 for both synchronous and asynchronous requests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18676</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-03-15 04:54:41 -0700</bug_when>
    <thetext>Could you please provide a test case? I did not see this behavior when I was testing autentication in XHR, so I was probably doing something differently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>18556</commentid>
    <comment_count>2</comment_count>
    <who name="Jesse Costello-Good">jesse</who>
    <bug_when>2007-03-15 08:18:14 -0700</bug_when>
    <thetext>Here&apos;s 4:

var r = new XMLHttpRequest();
r.open(&quot;GET&quot;, &quot;http://gi.tibco.com/tests/auth2/data1.xml&quot;, false);
r.send();
assertEquals(401, r.status);

var r = new XMLHttpRequest();
r.open(&quot;GET&quot;, &quot;http://gi.tibco.com/tests/auth2/data1.xml&quot;, false, &quot;badname&quot;, &quot;passpw&quot;);
r.send();
assertEquals(401, r.status);

var r = new XMLHttpRequest();
r.open(&quot;GET&quot;, &quot;http://gi.tibco.com/tests/auth2/data1.xml&quot;, true);
r.onreadystatechange = function() {
  if (r.readyState == 4) {
    assertEquals(401, r.status);
  }
};
r.send();

var r = new XMLHttpRequest();
r.open(&quot;GET&quot;, &quot;http://gi.tibco.com/tests/auth2/data1.xml&quot;, true, &quot;badname&quot;, &quot;passpw&quot;);
r.onreadystatechange = function() {
  if (r.readyState == 4) {
    assertEquals(401, r.status);
  }
};
r.send();
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>5525</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-07-05 11:54:27 -0700</bug_when>
    <thetext>Confirmed with r23984.

Please note that the current draft of XMLHttpRequest spec just says that &quot;If authentication fails, user agents should prompt the users for credentials.&quot; It probably needs to say that the user can be asked for credentials only once, and if that doesn&apos;t help, the 401 response is returned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>5526</commentid>
    <comment_count>4</comment_count>
      <attachid>15402</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-07-05 11:55:23 -0700</bug_when>
    <thetext>Created attachment 15402
test case

A test case that works from LayoutTests/http/tests/xmlhttprequest.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>3439</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-07-30 11:34:31 -0700</bug_when>
    <thetext>The sync (regression) part was fixed in bug 14704. A commented out test for the async case can be found in http/tests/xmlhttprequest/failed-auth.html.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>249390</commentid>
    <comment_count>6</comment_count>
      <attachid>61123</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-07-09 17:44:28 -0700</bug_when>
    <thetext>Created attachment 61123
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>249891</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-07-12 09:59:33 -0700</bug_when>
    <thetext>Fixed on Mac in &lt;http://trac.webkit.org/changeset/63095&gt;. A Windows Safari fix is in closed source code.

The fix was to change what happens when the user cancels authentication sheet. Please file new bugs for other aspects that may be still wrong.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>15402</attachid>
            <date>2007-07-05 11:55:23 -0700</date>
            <delta_ts>2007-07-05 11:55:23 -0700</delta_ts>
            <desc>test case</desc>
            <filename>failed-auth.html</filename>
            <type>text/html</type>
            <size>1123</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">PHNjcmlwdD4KZnVuY3Rpb24gYXNzZXJ0RXF1YWxzKHgsIHkpIHsKICAgIGlmICh4ICE9IHkpCiAg
ICAgICAgYWxlcnQoeCArICIgIT0gIiArIHkpOwogICAgZWxzZQogICAgICAgIGFsZXJ0KCJPSyIp
Owp9CgoKdHJ5IHsKICAgIHZhciByID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CiAgICByLm9wZW4o
IkdFVCIsICJyZXNvdXJjZXMvYmFzaWMtYXV0aC5waHA/dWlkPWxvZ2luIiwgZmFsc2UpOwogICAg
ci5zZW5kKCk7CiAgICBhc3NlcnRFcXVhbHMoNDAxLCByLnN0YXR1cyk7Cn0gY2F0Y2ggKGV4KSB7
CiAgICBhbGVydCgiMTogIiArIGV4KTsKfQoKdHJ5IHsKICAgIHZhciByID0gbmV3IFhNTEh0dHBS
ZXF1ZXN0KCk7CiAgICByLm9wZW4oIkdFVCIsICJyZXNvdXJjZXMvYmFzaWMtYXV0aC5waHA/dWlk
PWxvZ2luIiwgZmFsc2UsICJiYWRuYW1lIiwgInBhc3NwdyIpOwogICAgci5zZW5kKCk7CiAgICBh
c3NlcnRFcXVhbHMoNDAxLCByLnN0YXR1cyk7Cn0gY2F0Y2ggKGV4KSB7CiAgICBhbGVydCgiMjog
IiArIGV4KTsKfQoKdHJ5IHsKICAgIHZhciByID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CiAgICBy
Lm9wZW4oIkdFVCIsICJyZXNvdXJjZXMvYmFzaWMtYXV0aC5waHA/dWlkPWxvZ2luIiwgdHJ1ZSk7
CiAgICByLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkgewogICAgICBpZiAoci5yZWFk
eVN0YXRlID09IDQpIHsKICAgICAgICBhc3NlcnRFcXVhbHMoNDAxLCByLnN0YXR1cyk7CiAgICAg
IH0KICAgIH07CiAgICByLnNlbmQoKTsKfSBjYXRjaCAoZXgpIHsKICAgIGFsZXJ0KCIzOiAiICsg
ZXgpOwp9Cgp0cnkgewogICAgdmFyIHIyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CiAgICByMi5v
cGVuKCJHRVQiLCAicmVzb3VyY2VzL2Jhc2ljLWF1dGgucGhwP3VpZD1sb2dpbiIsIHRydWUsICJi
YWRuYW1lIiwgInBhc3NwdyIpOwogICAgcjIub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24o
KSB7CiAgICAgIGlmIChyMi5yZWFkeVN0YXRlID09IDQpIHsKICAgICAgICBhc3NlcnRFcXVhbHMo
NDAxLCByMi5zdGF0dXMpOwogICAgICB9CiAgICB9OwogICAgcjIuc2VuZCgpOwp9IGNhdGNoIChl
eCkgewogICAgYWxlcnQoIjQ6ICIgKyBleCk7Cn0KPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61123</attachid>
            <date>2010-07-09 17:44:28 -0700</date>
            <delta_ts>2010-07-09 17:56:57 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>401.txt</filename>
            <type>text/plain</type>
            <size>12151</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MzAxNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTAtMDctMDkgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBs
ZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMDc1CisgICAgICAgIFhN
TEh0dHBSZXF1ZXN0IHdpdGggZmFpbGVkIGF1dGhlbnRpY2F0aW9uIHNob3VsZCBzZXQgc3RhdHVz
IHRvIDQwMQorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02ODcxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMzYzNDAzPiA0MDEgZXJyb3IgcGFnZSBp
cyBuZXZlciBzaG93bgorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VI
YW5kbGVNYWMubW06IChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6cmVjZWl2ZWRDcmVkZW50aWFs
KToKKyAgICAgICAgQWRkZWQgYSBjb21tZW50IGV4cGxhaW5pbmcgd2h5IHdlIGhhbmRsZSBlbXB0
eSBjcmVkZW50aWFscyBkaWZmZXJlbnRseSBoZXJlLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGTmV0LmNwcDogKFdlYkNvcmU6OlJlc291cmNlSGFuZGxl
OjpyZWNlaXZlZENyZWRlbnRpYWwpOgorICAgICAgICBCcmluZyB0aGlzIGNvZGUgaW4gc3luYyB3
aXRoIE1hYy4KKwogMjAxMC0wNy0wOSAgRHVtaXRydSBEYW5pbGl1YyAgPGR1bWlAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGJ1dCBwcmUtYXBwcm92ZWQgYnkgRXJpYyBTZWlk
ZWwuCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2YvUmVzb3VyY2VIYW5kbGVDRk5l
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2NmL1Jlc291cmNl
SGFuZGxlQ0ZOZXQuY3BwCShyZXZpc2lvbiA2MjgwNikKKysrIFdlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9jZi9SZXNvdXJjZUhhbmRsZUNGTmV0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTM4LDYg
KzUzOCwxMiBAQCB2b2lkIFJlc291cmNlSGFuZGxlOjpyZWNlaXZlZENyZWRlbnRpYWwoCiAgICAg
aWYgKGNoYWxsZW5nZSAhPSBkLT5tX2N1cnJlbnRXZWJDaGFsbGVuZ2UpCiAgICAgICAgIHJldHVy
bjsKIAorICAgIC8vIEZJWE1FOiBTdXBwb3J0IGVtcHR5IGNyZWRlbnRpYWxzLiBDdXJyZW50bHks
IGFuIGVtcHR5IGNyZWRlbnRpYWwgY2Fubm90IGJlIHN0b3JlZCBpbiBXZWJDb3JlIGNyZWRlbnRp
YWwgc3RvcmFnZSwgYXMgdGhhdCdzIGVtcHR5IHZhbHVlIGZvciBpdHMgbWFwLgorICAgIGlmIChj
cmVkZW50aWFsLmlzRW1wdHkoKSkgeworICAgICAgICByZWNlaXZlZFJlcXVlc3RUb0NvbnRpbnVl
V2l0aG91dENyZWRlbnRpYWwoY2hhbGxlbmdlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIGlmIChjcmVkZW50aWFsLnBlcnNpc3RlbmNlKCkgPT0gQ3JlZGVudGlhbFBlcnNpc3RlbmNl
Rm9yU2Vzc2lvbikgewogICAgICAgICAvLyBNYW5hZ2UgcGVyLXNlc3Npb24gY3JlZGVudGlhbHMg
aW50ZXJuYWxseSwgYmVjYXVzZSBvbmNlIE5TVVJMQ3JlZGVudGlhbFBlcnNpc3RlbmNlUGVyU2Vz
c2lvbiBpcyB1c2VkLCB0aGVyZSBpcyBubyB3YXkKICAgICAgICAgLy8gdG8gaWdub3JlIGl0IGZv
ciBhIHBhcnRpY3VsYXIgcmVxdWVzdCAoc2hvcnQgb2YgcmVtb3ZpbmcgaXQgYWx0b2dldGhlciku
CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5k
bGVNYWMubW0JKHJldmlzaW9uIDYyODA2KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL21h
Yy9SZXNvdXJjZUhhbmRsZU1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtNTgzLDcgKzU4Myw4IEBA
IHZvaWQgUmVzb3VyY2VIYW5kbGU6OnJlY2VpdmVkQ3JlZGVudGlhbCgKICAgICBBU1NFUlQoIWNo
YWxsZW5nZS5pc051bGwoKSk7CiAgICAgaWYgKGNoYWxsZW5nZSAhPSBkLT5tX2N1cnJlbnRXZWJD
aGFsbGVuZ2UpCiAgICAgICAgIHJldHVybjsKLSAgICAKKworICAgIC8vIEZJWE1FOiBTdXBwb3J0
IGVtcHR5IGNyZWRlbnRpYWxzLiBDdXJyZW50bHksIGFuIGVtcHR5IGNyZWRlbnRpYWwgY2Fubm90
IGJlIHN0b3JlZCBpbiBXZWJDb3JlIGNyZWRlbnRpYWwgc3RvcmFnZSwgYXMgdGhhdCdzIGVtcHR5
IHZhbHVlIGZvciBpdHMgbWFwLgogICAgIGlmIChjcmVkZW50aWFsLmlzRW1wdHkoKSkgewogICAg
ICAgICByZWNlaXZlZFJlcXVlc3RUb0NvbnRpbnVlV2l0aG91dENyZWRlbnRpYWwoY2hhbGxlbmdl
KTsKICAgICAgICAgcmV0dXJuOwpJbmRleDogV2ViS2l0L21hYy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDYzMDE1KQorKysgV2ViS2l0L21h
Yy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMSBAQAorMjAxMC0wNy0wOSAg
QWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTMwNzUKKyAgICAgICAgWE1MSHR0cFJlcXVlc3Qgd2l0aCBmYWlsZWQgYXV0
aGVudGljYXRpb24gc2hvdWxkIHNldCBzdGF0dXMgdG8gNDAxCisKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY4NzEKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzMzNjM0MDM+IDQwMSBlcnJvciBwYWdlIGlzIG5ldmVyIHNob3duCisKKyAgICAgICAgKiBQ
YW5lbHMvV2ViUGFuZWxBdXRoZW50aWNhdGlvbkhhbmRsZXIubToKKyAgICAgICAgKC1bV2ViUGFu
ZWxBdXRoZW50aWNhdGlvbkhhbmRsZXIgc3RhcnRBdXRoZW50aWNhdGlvbjp3aW5kb3c6XSk6IFVw
ZGF0ZWQgYSBjb21tZW50IC0gdGhpcworICAgICAgICBjb2RlIGNhbmNlbHMgbGFvZGluZywgbm90
IGF1dGhlbnRpY2F0aW9uIChjYW5jZWxpbmcgYXV0aGVudGljYXRpb24gbWVhbnMgdGVsbGluZyB0
bworICAgICAgICBjb250aW51ZSB3aXRob3V0IGNyZWRlbnRpYWxzKS4KKyAgICAgICAgKC1bV2Vi
UGFuZWxBdXRoZW50aWNhdGlvbkhhbmRsZXIgX2F1dGhlbnRpY2F0aW9uRG9uZVdpdGhDaGFsbGVu
Z2U6cmVzdWx0Ol0pOiBJZiB0aGVyZSB3ZXJlCisgICAgICAgIG5vIGNyZWRlbnRpYWxzIHByb3Zp
ZGVkLCB0ZWxsIHRvIGNvbnRpbnVlIHdpdGhvdXQgYW55LiBUaGVyZSBtYXkgYmUgYWx0ZXJuYXRp
dmUgY29udGVudAorICAgICAgICByZXR1cm5lZCB3aXRoIDQwMS4KKwogMjAxMC0wNy0wOCAgQWFy
b24gQm9vZG1hbiAgPGFhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBUaW1v
dGh5IEhhdGNoZXIuCkluZGV4OiBXZWJLaXQvbWFjL1BhbmVscy9XZWJQYW5lbEF1dGhlbnRpY2F0
aW9uSGFuZGxlci5tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvUGFuZWxzL1dlYlBhbmVsQXV0
aGVudGljYXRpb25IYW5kbGVyLm0JKHJldmlzaW9uIDYyODA2KQorKysgV2ViS2l0L21hYy9QYW5l
bHMvV2ViUGFuZWxBdXRoZW50aWNhdGlvbkhhbmRsZXIubQkod29ya2luZyBjb3B5KQpAQCAtMTEz
LDcgKzExMyw3IEBAIC0odm9pZClzdGFydEF1dGhlbnRpY2F0aW9uOihOU1VSTEF1dGhlbnQKIAog
ICAgIC8vIEluIHRoaXMgY2FzZSwgd2UgaGF2ZSBhbiBhdHRhY2hlZCBzaGVldCB0aGF0J3Mgbm90
IG9uZSBvZiBvdXIKICAgICAvLyBhdXRoZW50aWNhdGlvbiBwYW5lbHMsIHNvIGVucXVlaW5nIGlz
IG5vdCBhbiBvcHRpb24uIEp1c3QKLSAgICAvLyBjYW5jZWwgYXV0aGVudGljYXRpb24gaW5zdGVh
ZCwgc2luY2UgdGhpcyBjYXNlIGlzIGZhaXJseQorICAgIC8vIGNhbmNlbCBsb2FkaW5nIGluc3Rl
YWQsIHNpbmNlIHRoaXMgY2FzZSBpcyBmYWlybHkKICAgICAvLyB1bmxpa2VseSAoaG93IHdvdWxk
IHlvdSBiZSBsb2FkaW5nIGEgcGFnZSBpZiB5b3UgaGFkIGFuIGVycm9yCiAgICAgLy8gc2hlZXQg
dXA/KQogICAgIGlmIChbdyBhdHRhY2hlZFNoZWV0XSAhPSBuaWwpIHsKQEAgLTE1Miw3ICsxNTIs
NyBAQCAtKHZvaWQpX2F1dGhlbnRpY2F0aW9uRG9uZVdpdGhDaGFsbGVuZ2U6CiAgICAgfQogCiAg
ICAgaWYgKGNyZWRlbnRpYWwgPT0gbmlsKSB7Ci0gICAgICAgIFtbY2hhbGxlbmdlIHNlbmRlcl0g
Y2FuY2VsQXV0aGVudGljYXRpb25DaGFsbGVuZ2U6Y2hhbGxlbmdlXTsKKyAgICAgICAgW1tjaGFs
bGVuZ2Ugc2VuZGVyXSBjb250aW51ZVdpdGhvdXRDcmVkZW50aWFsRm9yQXV0aGVudGljYXRpb25D
aGFsbGVuZ2U6Y2hhbGxlbmdlXTsKICAgICB9IGVsc2UgewogICAgICAgICBbW2NoYWxsZW5nZSBz
ZW5kZXJdIHVzZUNyZWRlbnRpYWw6Y3JlZGVudGlhbCBmb3JBdXRoZW50aWNhdGlvbkNoYWxsZW5n
ZTpjaGFsbGVuZ2VdOwogICAgIH0KSW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJLaXRUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDYzMDE1KQorKysgV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTAtMDct
MDkgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzMDc1CisgICAgICAgIFhNTEh0dHBSZXF1ZXN0IHdpdGggZmFpbGVk
IGF1dGhlbnRpY2F0aW9uIHNob3VsZCBzZXQgc3RhdHVzIHRvIDQwMQorCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02ODcxCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8zMzYzNDAzPiA0MDEgZXJyb3IgcGFnZSBpcyBuZXZlciBzaG93bgorCisgICAgICAg
ICogRHVtcFJlbmRlclRyZWUvbWFjL1Jlc291cmNlTG9hZERlbGVnYXRlLm1tOgorICAgICAgICAo
LVtSZXNvdXJjZUxvYWREZWxlZ2F0ZSB3ZWJWaWV3OnJlc291cmNlOmRpZFJlY2VpdmVBdXRoZW50
aWNhdGlvbkNoYWxsZW5nZTpmcm9tRGF0YVNvdXJjZTpdKToKKyAgICAgICAgKiBEdW1wUmVuZGVy
VHJlZS93aW4vUmVzb3VyY2VMb2FkRGVsZWdhdGUuY3BwOgorICAgICAgICAoUmVzb3VyY2VMb2Fk
RGVsZWdhdGU6OmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZSk6CisgICAgICAgIERv
IHJlc3BvbmQgZXZlbiBpZiBoYW5kbGVzQXV0aGVudGljYXRpb25DaGFsbGVuZ2VzKCkgaXMgZmFs
c2UuIFByZXRlbmQgdGhhdCB0aGUgdXNlciBwcmVzc2VkCisgICAgICAgIHRoZSBDYW5jZWwgYnV0
dG9uLgorCiAyMDEwLTA3LTA5ICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KSW5kZXg6IFdlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL21hYy9SZXNvdXJjZUxvYWREZWxlZ2F0ZS5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9tYWMvUmVzb3VyY2VMb2FkRGVsZWdhdGUubW0JKHJldmlzaW9u
IDYyODA2KQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1Jlc291cmNlTG9hZERl
bGVnYXRlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xNjYsOCArMTY2LDEwIEBAIC0oTlNVUkxSZXF1
ZXN0ICopd2ViVmlldzogKFdlYlZpZXcgKil3diAKIAogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3
ICopd3YgcmVzb3VyY2U6KGlkKWlkZW50aWZpZXIgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hh
bGxlbmdlOihOU1VSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlICopY2hhbGxlbmdlIGZyb21EYXRh
U291cmNlOihXZWJEYXRhU291cmNlICopZGF0YVNvdXJjZQogewotICAgIGlmICghZ0xheW91dFRl
c3RDb250cm9sbGVyLT5oYW5kbGVzQXV0aGVudGljYXRpb25DaGFsbGVuZ2VzKCkpCisgICAgaWYg
KCFnTGF5b3V0VGVzdENvbnRyb2xsZXItPmhhbmRsZXNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZXMo
KSkgeworICAgICAgICBbW2NoYWxsZW5nZSBzZW5kZXJdIGNvbnRpbnVlV2l0aG91dENyZWRlbnRp
YWxGb3JBdXRoZW50aWNhdGlvbkNoYWxsZW5nZTpjaGFsbGVuZ2VdOwogICAgICAgICByZXR1cm47
CisgICAgfQogICAgIAogICAgIGNvbnN0IGNoYXIqIHVzZXIgPSBnTGF5b3V0VGVzdENvbnRyb2xs
ZXItPmF1dGhlbnRpY2F0aW9uVXNlcm5hbWUoKS5jX3N0cigpOwogICAgIE5TU3RyaW5nICpuc1Vz
ZXIgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIiVzIiwgdXNlciA/IHVzZXIgOiAiIl07
CkluZGV4OiBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS93aW4vUmVzb3VyY2VMb2FkRGVsZWdh
dGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3dpbi9SZXNv
dXJjZUxvYWREZWxlZ2F0ZS5jcHAJKHJldmlzaW9uIDYyODA2KQorKysgV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvd2luL1Jlc291cmNlTG9hZERlbGVnYXRlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjgwLDE4ICsyODAsMjAgQEAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBSZXNvdXJjZUxv
YWREZQogICAgIC8qIFtpbl0gKi8gSVdlYlVSTEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlICpjaGFs
bGVuZ2UsCiAgICAgLyogW2luXSAqLyBJV2ViRGF0YVNvdXJjZSAqZGF0YVNvdXJjZSkKIHsKLSAg
ICBpZiAoIWdMYXlvdXRUZXN0Q29udHJvbGxlci0+aGFuZGxlc0F1dGhlbnRpY2F0aW9uQ2hhbGxl
bmdlcygpKQorICAgIENPTVB0cjxJV2ViVVJMQXV0aGVudGljYXRpb25DaGFsbGVuZ2VTZW5kZXI+
IHNlbmRlcjsKKyAgICBpZiAoIWNoYWxsZW5nZSB8fCBGQUlMRUQoY2hhbGxlbmdlLT5zZW5kZXIo
JnNlbmRlcikpKQorICAgICAgICByZXR1cm4gRV9GQUlMOworCisgICAgaWYgKCFnTGF5b3V0VGVz
dENvbnRyb2xsZXItPmhhbmRsZXNBdXRoZW50aWNhdGlvbkNoYWxsZW5nZXMoKSkgeworICAgICAg
ICBzZW5kZXItPmNvbnRpbnVlV2l0aG91dENyZWRlbnRpYWxGb3JBdXRoZW50aWNhdGlvbkNoYWxs
ZW5nZShjaGFsbGVuZ2UpOwogICAgICAgICByZXR1cm4gRV9GQUlMOworICAgIH0KICAgICAKICAg
ICBjb25zdCBjaGFyKiB1c2VyID0gZ0xheW91dFRlc3RDb250cm9sbGVyLT5hdXRoZW50aWNhdGlv
blVzZXJuYW1lKCkuY19zdHIoKTsKICAgICBjb25zdCBjaGFyKiBwYXNzd29yZCA9IGdMYXlvdXRU
ZXN0Q29udHJvbGxlci0+YXV0aGVudGljYXRpb25QYXNzd29yZCgpLmNfc3RyKCk7CiAKICAgICBw
cmludGYoIiVTIC0gZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlIC0gUmVzcG9uZGlu
ZyB3aXRoICVzOiVzXG4iLCBkZXNjcmlwdGlvblN1aXRhYmxlRm9yVGVzdFJlc3VsdChpZGVudGlm
aWVyKS5jX3N0cigpLCB1c2VyLCBwYXNzd29yZCk7Ci0gICAgCi0gICAgQ09NUHRyPElXZWJVUkxB
dXRoZW50aWNhdGlvbkNoYWxsZW5nZVNlbmRlcj4gc2VuZGVyOwotICAgIGlmICghY2hhbGxlbmdl
IHx8IEZBSUxFRChjaGFsbGVuZ2UtPnNlbmRlcigmc2VuZGVyKSkpCi0gICAgICAgIHJldHVybiBF
X0ZBSUw7Ci0gICAgICAgIAorCiAgICAgQ09NUHRyPElXZWJVUkxDcmVkZW50aWFsPiBjcmVkZW50
aWFsOwogICAgIGlmIChGQUlMRUQoV2ViS2l0Q3JlYXRlSW5zdGFuY2UoQ0xTSURfV2ViVVJMQ3Jl
ZGVudGlhbCwgMCwgSUlEX0lXZWJVUkxDcmVkZW50aWFsLCAodm9pZCoqKSZjcmVkZW50aWFsKSkp
CiAgICAgICAgIHJldHVybiBFX0ZBSUw7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA2MzAxNSkKKysrIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEw
LTA3LTA5ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzA3NQorICAgICAgICBYTUxIdHRwUmVxdWVzdCB3aXRoIGZh
aWxlZCBhdXRoZW50aWNhdGlvbiBzaG91bGQgc2V0IHN0YXR1cyB0byA0MDEKKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njg3MQorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMzM2MzQwMz4gNDAxIGVycm9yIHBhZ2UgaXMgbmV2ZXIgc2hvd24KKworICAg
ICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvZmFpbGVkLWF1dGgtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvZmFpbGVkLWF1dGguaHRtbDoK
KyAgICAgICAgVW5jb21tZW50ZWQgcmVsZXZhbnQgc3VidGVzdHMuCisKKyAgICAgICAgKiBodHRw
L3Rlc3RzL21pc2MvNDAxLWFsdGVybmF0aXZlLWNvbnRlbnQtZXhwZWN0ZWQudHh0OgorICAgICAg
ICAqIGh0dHAvdGVzdHMvbWlzYy80MDEtYWx0ZXJuYXRpdmUtY29udGVudC5waHA6CisgICAgICAg
IEFkZGVkIGEgdGVzdCBmb3IgdGhlIG1haW4gcmVzb3VyY2UgYXNwZWN0IG9mIHRoaXMgaXNzdWUu
CisKIDIwMTAtMDctMDkgIFRvbnkgR2VudGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEdsYXprb3YuCkluZGV4OiBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL21pc2MvNDAxLWFsdGVybmF0aXZlLWNvbnRlbnQtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy80MDEtYWx0ZXJuYXRpdmUtY29u
dGVudC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L21pc2MvNDAxLWFsdGVybmF0aXZlLWNvbnRlbnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxIEBACitQQVNTCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvNDAx
LWFsdGVybmF0aXZlLWNvbnRlbnQucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAv
dGVzdHMvbWlzYy80MDEtYWx0ZXJuYXRpdmUtY29udGVudC5waHAJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvNDAxLWFsdGVybmF0aXZlLWNvbnRlbnQucGhwCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE1IEBACis8P3BocAorICBpZiAoIWlzc2V0KCRfU0VSVkVS
WydQSFBfQVVUSF9VU0VSJ10pKSB7CisgICBoZWFkZXIoJ1dXVy1BdXRoZW50aWNhdGU6IEJhc2lj
IHJlYWxtPSJQbGVhc2UgcHJlc3MgQ2FuY2VsIicpOworICAgaGVhZGVyKCdIVFRQLzEuMCA0MDEg
VW5hdXRob3JpemVkJyk7CisgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogdGV4dC9odG1sJyk7Cisg
ICBlY2hvICc8c2NyaXB0Pic7CisgICBlY2hvICcgICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKSc7CisgICBlY2hvICcgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOyc7CisgICBlY2hvICc8L3NjcmlwdD4nOworICAgZWNobyAnUEFTUyc7CisgICBleGl0Owor
ICB9IGVsc2UgeworICAgZWNobyAiRkFJTDogV2h5IGRvIHlvdSBoYXZlIGNyZWRlbnRpYWxzPyI7
CisgIH0KKz8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Zh
aWxlZC1hdXRoLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L2ZhaWxlZC1hdXRoLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gNjI4
MDkpCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2ZhaWxlZC1hdXRo
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMiw1ICsyLDUgQEAgVGVzdCBmb3IgYnVn
IDEzMDc1OiBYTUxIdHRwUmVxdWVzdCB3aXRoIAogCiBTeW5jLCBubyBjcmVkZW50aWFsczogT0sK
IFN5bmMsIGluY29ycmVjdCBjcmVkZW50aWFsczogT0sKLUFzeW5jLCBubyBjcmVkZW50aWFsczog
W3Rlc3QgZGlzYWJsZWRdCi1Bc3luYywgaW5jb3JyZWN0IGNyZWRlbnRpYWxzOiBbdGVzdCBkaXNh
YmxlZF0KK0FzeW5jLCBubyBjcmVkZW50aWFsczogT0sKK0FzeW5jLCBpbmNvcnJlY3QgY3JlZGVu
dGlhbHM6IE9LCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Zh
aWxlZC1hdXRoLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxo
dHRwcmVxdWVzdC9mYWlsZWQtYXV0aC5odG1sCShyZXZpc2lvbiA2MjgwOSkKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvZmFpbGVkLWF1dGguaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMyw4ICszLDggQEAgWE1MSHR0cFJlcXVlc3Qgd2l0aCBmYWlsZWQgYXV0aGVudGlj
YXRpbwogPG9sPgogICA8bGk+U3luYywgbm8gY3JlZGVudGlhbHM6CiAgIDxsaT5TeW5jLCBpbmNv
cnJlY3QgY3JlZGVudGlhbHM6Ci0gIDxsaT5Bc3luYywgbm8gY3JlZGVudGlhbHM6IFt0ZXN0IGRp
c2FibGVkXQotICA8bGk+QXN5bmMsIGluY29ycmVjdCBjcmVkZW50aWFsczogW3Rlc3QgZGlzYWJs
ZWRdCisgIDxsaT5Bc3luYywgbm8gY3JlZGVudGlhbHM6IAorICA8bGk+QXN5bmMsIGluY29ycmVj
dCBjcmVkZW50aWFsczogCiA8L29sPgogPHNjcmlwdD4KIGZ1bmN0aW9uIGNoZWNrUmVzdWx0KG4s
IGNvZGUpIHsKQEAgLTIwLDcgKzIwLDcgQEAgZnVuY3Rpb24gbG9nKG4sIG1lc3NhZ2UpIHsKIAog
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewogICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKLS8vICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiB9IGVsc2Ug
ewogICAgIGFsZXJ0KCJQbGVhc2UgY2FuY2VsIGFsbCBhdXRoZW50aWNhdGlvbiBkaWFsb2dzIHRo
YXQgd2lsbCBhcHBlYXIiKTsKIH0KQEAgLTQzLDcgKzQzLDYgQEAgdHJ5IHsKICAgICBsb2coMiwg
ZXgpOwogfQogCi0vKgogdHJ5IHsKICAgICB2YXIgciA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwog
ICAgIHIub3BlbigiR0VUIiwgInJlc291cmNlcy9iYXNpYy1hdXRoL2Jhc2ljLWF1dGgucGhwP3Vp
ZD1sb2dpbjMiLCB0cnVlKTsKQEAgLTc1LDUgKzc0LDQgQEAgZnVuY3Rpb24gdGVzdDQoKSB7CiAg
ICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKICAgICB9CiB9Ci0qLwog
PC9zY3JpcHQ+Cg==
</data>
<flag name="review"
          id="49104"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>