<?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>81998</bug_id>
          
          <creation_ts>2012-03-22 17:19:54 -0700</creation_ts>
          <short_desc>When &lt;img crossorigin&gt; fails the CORS check, we should fire the error event</short_desc>
          <delta_ts>2012-06-19 00:32:51 -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="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>ap</cc>
    
    <cc>eric</cc>
    
    <cc>japhet</cc>
    
    <cc>niklasvh</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>585895</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-22 17:19:54 -0700</bug_when>
    <thetext>When &lt;img crossorigin&gt; fails the CORS check, we should fire the error event</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585900</commentid>
    <comment_count>1</comment_count>
      <attachid>133395</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-22 17:24:01 -0700</bug_when>
    <thetext>Created attachment 133395
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585906</commentid>
    <comment_count>2</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-22 17:30:56 -0700</bug_when>
    <thetext>http://code.google.com/p/chromium/issues/detail?id=112170</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586586</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-03-23 12:15:05 -0700</bug_when>
    <thetext>Is this the same as bug 80028?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586591</commentid>
    <comment_count>4</comment_count>
      <attachid>133395</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-03-23 12:16:19 -0700</bug_when>
    <thetext>Comment on attachment 133395
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        otherwise be because we&apos;re firing the event asynchronously, but that
&gt; +        seems like the right thing to do.

Could you please explain why this is the right thing to do? Can CORS failure happen synchronously somehow?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586593</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-23 12:18:08 -0700</bug_when>
    <thetext>Yes, I forgot we had it on file already. CORS can probably fail synchronously if we get a hit in the MemoryCache.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586603</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-03-23 12:24:48 -0700</bug_when>
    <thetext>Hmm, I think that memory cache works asynchronously. Not as sure about CORS own cache though. I think that it&apos;s worth checking before adding code for asynchronous event dispatch, we usually try to avoid it for events triggered by network.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586694</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-23 13:53:36 -0700</bug_when>
    <thetext>The memory cache can definitely respond synchronously on a cache hit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588241</commentid>
    <comment_count>8</comment_count>
      <attachid>133395</attachid>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2012-03-26 15:57:41 -0700</bug_when>
    <thetext>Comment on attachment 133395
Patch

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

&gt; Source/WebCore/loader/ImageLoader.cpp:90
&gt;      , m_firedLoad(true)
&gt; +    , m_firedError(true)
&gt;      , m_imageComplete(true)

Is there any hope of merging any of these booleans? In particular, I would have thought m_firedLoad and m_firedError would be mutually exclusive.

Also, I had never noticed that these are initialized to true. That&apos;s counter-intuitive to me, do you know the history behind it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588256</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-26 16:05:16 -0700</bug_when>
    <thetext>&gt; Also, I had never noticed that these are initialized to true. That&apos;s counter-intuitive to me, do you know the history behind it?

I think they have slightly non-intuitive names.  The &quot;true&quot; state is the quiescent state.  The &quot;false&quot; state means &quot;I wanted to fire this event, but I haven&apos;t gotten around to it yet,&quot; which has some consequences (like remembering to cancel the event if we don&apos;t want it to fire anymore).

Perhaps we should rename m_firedLoad (and friends) to m_loadEventIsPending (and negate the value).  Then the initialization should make sense since &quot;false&quot; would be the quiescent state.

As for merging the bools, they&apos;re somewhat separate pieces of state.  I almost was tempted to break them out into a little subobject, but that seemed a bit overkill.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588261</commentid>
    <comment_count>10</comment_count>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2012-03-26 16:09:06 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; &gt; Also, I had never noticed that these are initialized to true. That&apos;s counter-intuitive to me, do you know the history behind it?
&gt; 
&gt; I think they have slightly non-intuitive names.  The &quot;true&quot; state is the quiescent state.  The &quot;false&quot; state means &quot;I wanted to fire this event, but I haven&apos;t gotten around to it yet,&quot; which has some consequences (like remembering to cancel the event if we don&apos;t want it to fire anymore).
&gt; 
&gt; Perhaps we should rename m_firedLoad (and friends) to m_loadEventIsPending (and negate the value).  Then the initialization should make sense since &quot;false&quot; would be the quiescent state.
&gt; 
&gt; As for merging the bools, they&apos;re somewhat separate pieces of state.  I almost was tempted to break them out into a little subobject, but that seemed a bit overkill.

Ok, things make sense now. I&apos;d be in favor of the m_loadEventIsPending naming scheme.

I&apos;m not sure whether they&apos;re truly separate pieces of state, though, unless we can have both a pending load event and a pending error event at the same time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588275</commentid>
    <comment_count>11</comment_count>
      <attachid>133395</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-03-26 16:26:14 -0700</bug_when>
    <thetext>Comment on attachment 133395
Patch

Would you mind if we changed the names in a follow-up patch.  The issue is that the state is public:

    bool haveFiredBeforeLoadEvent() const { return m_firedBeforeLoad; }
    bool haveFiredLoadEvent() const { return m_firedLoad; }

so the renaming is going to spider a bit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588278</commentid>
    <comment_count>12</comment_count>
      <attachid>133395</attachid>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2012-03-26 16:27:47 -0700</bug_when>
    <thetext>Comment on attachment 133395
Patch

Yeah, I think it&apos;s ok. I don&apos;t see any reason to hold this patch up because of the existing weird name convention.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588463</commentid>
    <comment_count>13</comment_count>
      <attachid>133395</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-26 18:59:24 -0700</bug_when>
    <thetext>Comment on attachment 133395
Patch

Clearing flags on attachment: 133395

Committed r112190: &lt;http://trac.webkit.org/changeset/112190&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>588464</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-26 18:59:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652155</commentid>
    <comment_count>15</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-06-19 00:32:51 -0700</bug_when>
    <thetext>*** Bug 80028 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133395</attachid>
            <date>2012-03-22 17:24:01 -0700</date>
            <delta_ts>2012-03-26 18:59:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81998-20120322172359.patch</filename>
            <type>text/plain</type>
            <size>9385</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMTc5MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDEyLTAzLTIyICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgV2hlbiA8aW1nIGNyb3Nzb3JpZ2lu
PiBmYWlscyB0aGUgQ09SUyBjaGVjaywgd2Ugc2hvdWxkIGZpcmUgdGhlIGVycm9yIGV2ZW50Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTk5OAorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBzcGVjIHNh
eXMgd2UncmUgc3VwcG9zZWQgdG8gZmlyZSB0aGUgZXJyb3IgZXZlbnQgd2hlbiB0aGUgQ09SUwor
ICAgICAgICBjaGVjayBmYWlscywgYnV0IHdlIGhhdmVuJ3QgYmVlbi4gIFRoaXMgcGF0Y2ggaXMg
bGFyZ2VyIHRoYW4gaXQgbWlnaHQKKyAgICAgICAgb3RoZXJ3aXNlIGJlIGJlY2F1c2Ugd2UncmUg
ZmlyaW5nIHRoZSBldmVudCBhc3luY2hyb25vdXNseSwgYnV0IHRoYXQKKyAgICAgICAgc2VlbXMg
bGlrZSB0aGUgcmlnaHQgdGhpbmcgdG8gZG8uCisKKyAgICAgICAgVGVzdHM6IGh0dHAvdGVzdHMv
c2VjdXJpdHkvaW1nLXdpdGgtZmFpbGVkLWNvcnMtY2hlY2stZmFpbHMtdG8tbG9hZC5odG1sCisK
KyAgICAgICAgKiBkb20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6
OmltcGxpY2l0Q2xvc2UpOgorICAgICAgICAqIGxvYWRlci9JbWFnZUxvYWRlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjplcnJvckV2ZW50U2VuZGVyKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAg
ICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OkltYWdlTG9hZGVyKToKKyAgICAgICAgKFdlYkNv
cmU6OkltYWdlTG9hZGVyOjp+SW1hZ2VMb2FkZXIpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VM
b2FkZXI6OnNldEltYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVyOjp1cGRhdGVG
cm9tRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6bm90aWZ5RmluaXNo
ZWQpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OmRpc3BhdGNoUGVuZGluZ0V2ZW50
KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdFcnJvckV2
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdFcnJv
ckV2ZW50cyk6CisgICAgICAgICogbG9hZGVyL0ltYWdlTG9hZGVyLmg6CisgICAgICAgIChJbWFn
ZUxvYWRlcik6CisKIDIwMTItMDMtMjIgIFRvbnkgQ2hhbmcgIDx0b255QGNocm9taXVtLm9yZz4K
IAogICAgICAgICBVbnJldmlld2VkLCBmaXggY2hyb21pdW0gYnVpbGQgYWZ0ZXIgd3RmIG1vdmUu
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHJldmlzaW9uIDExMTc2NikKKysrIFNvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIyODksNiArMjI4
OSw3IEBAIHZvaWQgRG9jdW1lbnQ6OmltcGxpY2l0Q2xvc2UoKQogCiAgICAgSW1hZ2VMb2FkZXI6
OmRpc3BhdGNoUGVuZGluZ0JlZm9yZUxvYWRFdmVudHMoKTsKICAgICBJbWFnZUxvYWRlcjo6ZGlz
cGF0Y2hQZW5kaW5nTG9hZEV2ZW50cygpOworICAgIEltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRp
bmdFcnJvckV2ZW50cygpOwogCiAgICAgSFRNTExpbmtFbGVtZW50OjpkaXNwYXRjaFBlbmRpbmdM
b2FkRXZlbnRzKCk7CiAgICAgSFRNTFN0eWxlRWxlbWVudDo6ZGlzcGF0Y2hQZW5kaW5nTG9hZEV2
ZW50cygpOwpJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCShyZXZpc2lv
biAxMTE3NjYpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC03NSwxMSArNzUsMTggQEAgc3RhdGljIEltYWdlRXZlbnRTZW5kZXImIGxv
YWRFdmVudFNlbmRlcgogICAgIHJldHVybiBzZW5kZXI7CiB9CiAKK3N0YXRpYyBJbWFnZUV2ZW50
U2VuZGVyJiBlcnJvckV2ZW50U2VuZGVyKCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKElt
YWdlRXZlbnRTZW5kZXIsIHNlbmRlciwgKGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50KSk7CisgICAg
cmV0dXJuIHNlbmRlcjsKK30KKwogSW1hZ2VMb2FkZXI6OkltYWdlTG9hZGVyKEVsZW1lbnQqIGVs
ZW1lbnQpCiAgICAgOiBtX2VsZW1lbnQoZWxlbWVudCkKICAgICAsIG1faW1hZ2UoMCkKICAgICAs
IG1fZmlyZWRCZWZvcmVMb2FkKHRydWUpCiAgICAgLCBtX2ZpcmVkTG9hZCh0cnVlKQorICAgICwg
bV9maXJlZEVycm9yKHRydWUpCiAgICAgLCBtX2ltYWdlQ29tcGxldGUodHJ1ZSkKICAgICAsIG1f
bG9hZE1hbnVhbGx5KGZhbHNlKQogewpAQCAtOTcsNiArMTA0LDEwIEBAIEltYWdlTG9hZGVyOjp+
SW1hZ2VMb2FkZXIoKQogICAgIEFTU0VSVCghbV9maXJlZExvYWQgfHwgIWxvYWRFdmVudFNlbmRl
cigpLmhhc1BlbmRpbmdFdmVudHModGhpcykpOwogICAgIGlmICghbV9maXJlZExvYWQpCiAgICAg
ICAgIGxvYWRFdmVudFNlbmRlcigpLmNhbmNlbEV2ZW50KHRoaXMpOworCisgICAgQVNTRVJUKCFt
X2ZpcmVkRXJyb3IgfHwgIWVycm9yRXZlbnRTZW5kZXIoKS5oYXNQZW5kaW5nRXZlbnRzKHRoaXMp
KTsKKyAgICBpZiAoIW1fZmlyZWRFcnJvcikKKyAgICAgICAgZXJyb3JFdmVudFNlbmRlcigpLmNh
bmNlbEV2ZW50KHRoaXMpOwogfQogCiB2b2lkIEltYWdlTG9hZGVyOjpzZXRJbWFnZShDYWNoZWRJ
bWFnZSogbmV3SW1hZ2UpCkBAIC0xMTMsNiArMTI0LDEwIEBAIHZvaWQgSW1hZ2VMb2FkZXI6OnNl
dEltYWdlKENhY2hlZEltYWdlKiAKICAgICAgICAgICAgIGxvYWRFdmVudFNlbmRlcigpLmNhbmNl
bEV2ZW50KHRoaXMpOwogICAgICAgICAgICAgbV9maXJlZExvYWQgPSB0cnVlOwogICAgICAgICB9
CisgICAgICAgIGlmICghbV9maXJlZEVycm9yKSB7CisgICAgICAgICAgICBlcnJvckV2ZW50U2Vu
ZGVyKCkuY2FuY2VsRXZlbnQodGhpcyk7CisgICAgICAgICAgICBtX2ZpcmVkRXJyb3IgPSB0cnVl
OworICAgICAgICB9CiAgICAgICAgIG1faW1hZ2VDb21wbGV0ZSA9IHRydWU7CiAgICAgICAgIGlm
IChuZXdJbWFnZSkKICAgICAgICAgICAgIG5ld0ltYWdlLT5hZGRDbGllbnQodGhpcyk7CkBAIC0x
NjMsOCArMTc4LDExIEBAIHZvaWQgSW1hZ2VMb2FkZXI6OnVwZGF0ZUZyb21FbGVtZW50KCkKICAg
ICAgICAgLy8gSWYgd2UgZG8gbm90IGhhdmUgYW4gaW1hZ2UgaGVyZSwgaXQgbWVhbnMgdGhhdCBh
IGNyb3NzLXNpdGUKICAgICAgICAgLy8gdmlvbGF0aW9uIG9jY3VycmVkLgogICAgICAgICBtX2Zh
aWxlZExvYWRVUkwgPSAhbmV3SW1hZ2UgPyBhdHRyIDogQXRvbWljU3RyaW5nKCk7Ci0gICAgfSBl
bHNlIGlmICghYXR0ci5pc051bGwoKSkgLy8gRmlyZSBhbiBlcnJvciBldmVudCBpZiB0aGUgdXJs
IGlzIGVtcHR5LgorICAgIH0gZWxzZSBpZiAoIWF0dHIuaXNOdWxsKCkpIHsKKyAgICAgICAgLy8g
RmlyZSBhbiBlcnJvciBldmVudCBpZiB0aGUgdXJsIGlzIGVtcHR5LgorICAgICAgICAvLyBGSVhN
RTogU2hvdWxkIHdlIGZpcmUgdGhpcyBldmVudCBhc3luY2hyb25vdWxzeSB2aWEgZXJyb3JFdmVu
dFNlbmRlcigpPwogICAgICAgICBtX2VsZW1lbnQtPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgfQogICAgIAog
ICAgIENhY2hlZEltYWdlKiBvbGRJbWFnZSA9IG1faW1hZ2UuZ2V0KCk7CiAgICAgaWYgKG5ld0lt
YWdlICE9IG9sZEltYWdlKSB7CkBAIC0xNzIsNiArMTkwLDggQEAgdm9pZCBJbWFnZUxvYWRlcjo6
dXBkYXRlRnJvbUVsZW1lbnQoKQogICAgICAgICAgICAgYmVmb3JlTG9hZEV2ZW50U2VuZGVyKCku
Y2FuY2VsRXZlbnQodGhpcyk7CiAgICAgICAgIGlmICghbV9maXJlZExvYWQpCiAgICAgICAgICAg
ICBsb2FkRXZlbnRTZW5kZXIoKS5jYW5jZWxFdmVudCh0aGlzKTsKKyAgICAgICAgaWYgKCFtX2Zp
cmVkRXJyb3IpCisgICAgICAgICAgICBlcnJvckV2ZW50U2VuZGVyKCkuY2FuY2VsRXZlbnQodGhp
cyk7CiAKICAgICAgICAgbV9pbWFnZSA9IG5ld0ltYWdlOwogICAgICAgICBtX2ZpcmVkQmVmb3Jl
TG9hZCA9ICFuZXdJbWFnZTsKQEAgLTIyMiw2ICsyNDIsOSBAQCB2b2lkIEltYWdlTG9hZGVyOjpu
b3RpZnlGaW5pc2hlZChDYWNoZWRSCiAKICAgICAgICAgc2V0SW1hZ2UoMCk7CiAKKyAgICAgICAg
bV9maXJlZEVycm9yID0gZmFsc2U7CisgICAgICAgIGVycm9yRXZlbnRTZW5kZXIoKS5kaXNwYXRj
aEV2ZW50U29vbih0aGlzKTsKKwogICAgICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywg
Y29uc29sZU1lc3NhZ2UsICgiQ3Jvc3Mtb3JpZ2luIGltYWdlIGxvYWQgZGVuaWVkIGJ5IENyb3Nz
LU9yaWdpbiBSZXNvdXJjZSBTaGFyaW5nIHBvbGljeS4iKSk7CiAgICAgICAgIG1fZWxlbWVudC0+
ZG9jdW1lbnQoKS0+YWRkQ29uc29sZU1lc3NhZ2UoSlNNZXNzYWdlU291cmNlLCBMb2dNZXNzYWdl
VHlwZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIGNvbnNvbGVNZXNzYWdlKTsKIApAQCAtMjc5LDEyICsz
MDIsMTQgQEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlUmVuZGVyZXIoKQogCiB2b2lkIEltYWdl
TG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdFdmVudChJbWFnZUV2ZW50U2VuZGVyKiBldmVudFNlbmRl
cikKIHsKLSAgICBBU1NFUlQoZXZlbnRTZW5kZXIgPT0gJmJlZm9yZUxvYWRFdmVudFNlbmRlcigp
IHx8IGV2ZW50U2VuZGVyID09ICZsb2FkRXZlbnRTZW5kZXIoKSk7CisgICAgQVNTRVJUKGV2ZW50
U2VuZGVyID09ICZiZWZvcmVMb2FkRXZlbnRTZW5kZXIoKSB8fCBldmVudFNlbmRlciA9PSAmbG9h
ZEV2ZW50U2VuZGVyKCkgfHwgZXZlbnRTZW5kZXIgPT0gJmVycm9yRXZlbnRTZW5kZXIoKSk7CiAg
ICAgY29uc3QgQXRvbWljU3RyaW5nJiBldmVudFR5cGUgPSBldmVudFNlbmRlci0+ZXZlbnRUeXBl
KCk7CiAgICAgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuYmVmb3JlbG9hZEV2ZW50KQog
ICAgICAgICBkaXNwYXRjaFBlbmRpbmdCZWZvcmVMb2FkRXZlbnQoKTsKICAgICBpZiAoZXZlbnRU
eXBlID09IGV2ZW50TmFtZXMoKS5sb2FkRXZlbnQpCiAgICAgICAgIGRpc3BhdGNoUGVuZGluZ0xv
YWRFdmVudCgpOworICAgIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLmVycm9yRXZlbnQp
CisgICAgICAgIGRpc3BhdGNoUGVuZGluZ0Vycm9yRXZlbnQoKTsKIH0KIAogdm9pZCBJbWFnZUxv
YWRlcjo6ZGlzcGF0Y2hQZW5kaW5nQmVmb3JlTG9hZEV2ZW50KCkKQEAgLTMyNCw2ICszNDksMTYg
QEAgdm9pZCBJbWFnZUxvYWRlcjo6ZGlzcGF0Y2hQZW5kaW5nTG9hZEV2ZQogICAgIGRpc3BhdGNo
TG9hZEV2ZW50KCk7CiB9CiAKK3ZvaWQgSW1hZ2VMb2FkZXI6OmRpc3BhdGNoUGVuZGluZ0Vycm9y
RXZlbnQoKQoreworICAgIGlmIChtX2ZpcmVkRXJyb3IpCisgICAgICAgIHJldHVybjsKKyAgICBp
ZiAoIW1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+YXR0YWNoZWQoKSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIG1fZmlyZWRFcnJvciA9IHRydWU7CisgICAgbV9lbGVtZW50LT5kaXNwYXRjaEV2ZW50KEV2
ZW50OjpjcmVhdGUoZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworfQor
CiB2b2lkIEltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdCZWZvcmVMb2FkRXZlbnRzKCkKIHsK
ICAgICBiZWZvcmVMb2FkRXZlbnRTZW5kZXIoKS5kaXNwYXRjaFBlbmRpbmdFdmVudHMoKTsKQEAg
LTMzNCw2ICszNjksMTEgQEAgdm9pZCBJbWFnZUxvYWRlcjo6ZGlzcGF0Y2hQZW5kaW5nTG9hZEV2
ZQogICAgIGxvYWRFdmVudFNlbmRlcigpLmRpc3BhdGNoUGVuZGluZ0V2ZW50cygpOwogfQogCit2
b2lkIEltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdFcnJvckV2ZW50cygpCit7CisgICAgZXJy
b3JFdmVudFNlbmRlcigpLmRpc3BhdGNoUGVuZGluZ0V2ZW50cygpOworfQorCiB2b2lkIEltYWdl
TG9hZGVyOjplbGVtZW50RGlkTW92ZVRvTmV3RG9jdW1lbnQoKQogewogICAgIHNldEltYWdlKDAp
OwpJbmRleDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdlTG9hZGVyLmgJKHJldmlzaW9uIDExMTc2NikK
KysrIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5oCSh3b3JraW5nIGNvcHkpCkBA
IC02Niw2ICs2Niw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyB2b2lkIGRpc3BhdGNoUGVuZGlu
Z0JlZm9yZUxvYWRFdmVudHMoKTsKICAgICBzdGF0aWMgdm9pZCBkaXNwYXRjaFBlbmRpbmdMb2Fk
RXZlbnRzKCk7CisgICAgc3RhdGljIHZvaWQgZGlzcGF0Y2hQZW5kaW5nRXJyb3JFdmVudHMoKTsK
IAogcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNv
dXJjZSopOwpAQCAtNzYsNiArNzcsNyBAQCBwcml2YXRlOgogCiAgICAgdm9pZCBkaXNwYXRjaFBl
bmRpbmdCZWZvcmVMb2FkRXZlbnQoKTsKICAgICB2b2lkIGRpc3BhdGNoUGVuZGluZ0xvYWRFdmVu
dCgpOworICAgIHZvaWQgZGlzcGF0Y2hQZW5kaW5nRXJyb3JFdmVudCgpOwogCiAgICAgUmVuZGVy
SW1hZ2VSZXNvdXJjZSogcmVuZGVySW1hZ2VSZXNvdXJjZSgpOwogICAgIHZvaWQgdXBkYXRlUmVu
ZGVyZXIoKTsKQEAgLTg1LDYgKzg3LDcgQEAgcHJpdmF0ZToKICAgICBBdG9taWNTdHJpbmcgbV9m
YWlsZWRMb2FkVVJMOwogICAgIGJvb2wgbV9maXJlZEJlZm9yZUxvYWQgOiAxOwogICAgIGJvb2wg
bV9maXJlZExvYWQgOiAxOworICAgIGJvb2wgbV9maXJlZEVycm9yIDogMTsKICAgICBib29sIG1f
aW1hZ2VDb21wbGV0ZSA6IDE7CiAgICAgYm9vbCBtX2xvYWRNYW51YWxseSA6IDE7CiB9OwpJbmRl
eDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5n
ZUxvZwkocmV2aXNpb24gMTExNzkxKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDMtMjIgIEFkYW0gQmFydGggIDxhYmFydGhA
d2Via2l0Lm9yZz4KKworICAgICAgICBXaGVuIDxpbWcgY3Jvc3NvcmlnaW4+IGZhaWxzIHRoZSBD
T1JTIGNoZWNrLCB3ZSBzaG91bGQgZmlyZSB0aGUgZXJyb3IgZXZlbnQKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxOTk4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2hlY2sgdGhhdCB3ZSdyZSBmaXJpbmcg
dGhlIGVycm9yIGV2ZW50IGluIHRoaXMgY2FzZS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvaW1nLXdpdGgtZmFpbGVkLWNvcnMtY2hlY2stZmFpbHMtdG8tbG9hZC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogaHR0cC90ZXN0cy9zZWN1cml0eS9pbWctd2l0aC1mYWlsZWQtY29ycy1j
aGVjay1mYWlscy10by1sb2FkLmh0bWw6CisKIDIwMTItMDMtMjIgIEVtaWwgQSBFa2x1bmQgIDxl
YWVAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgcmViYXNlbGluZSBmb3IgY2hy
b21pdW0gbGVvcGFyZC4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaW1n
LXdpdGgtZmFpbGVkLWNvcnMtY2hlY2stZmFpbHMtdG8tbG9hZC1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9pbWctd2l0aC1mYWlsZWQt
Y29ycy1jaGVjay1mYWlscy10by1sb2FkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMTExNzY2KQor
KysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9pbWctd2l0aC1mYWlsZWQtY29ycy1j
aGVjay1mYWlscy10by1sb2FkLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSwyICsx
LDMgQEAKIENPTlNPTEUgTUVTU0FHRTogQ3Jvc3Mtb3JpZ2luIGltYWdlIGxvYWQgZGVuaWVkIGJ5
IENyb3NzLU9yaWdpbiBSZXNvdXJjZSBTaGFyaW5nIHBvbGljeS4KK0FMRVJUOiBQQVNTOiBUaGUg
ZXJyb3IgZXZlbnQgd2FzIGNhbGxlZC4KIFRoaXMgdGVzdCBwYXNzZXMgaWYgdGhlIGltYWdlIGJl
bG93IGRvZXMgbm90IGxvYWQuIApJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0
eS9pbWctd2l0aC1mYWlsZWQtY29ycy1jaGVjay1mYWlscy10by1sb2FkLmh0bWwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9pbWctd2l0aC1mYWlsZWQtY29y
cy1jaGVjay1mYWlscy10by1sb2FkLmh0bWwJKHJldmlzaW9uIDExMTc2NikKKysrIExheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvaW1nLXdpdGgtZmFpbGVkLWNvcnMtY2hlY2stZmFpbHMt
dG8tbG9hZC5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xMCw2ICsxMCwxMCBAQCBpbWcuYWRkRXZl
bnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKGV2CiAgICAgYWxlcnQoJ0ZBSUw6IFRoZSBpbWFn
ZSBsb2FkZWQuJyk7CiB9LCBmYWxzZSk7CiAKK2ltZy5hZGRFdmVudExpc3RlbmVyKCdlcnJvcics
IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgYWxlcnQoJ1BBU1M6IFRoZSBlcnJvciBldmVudCB3YXMg
Y2FsbGVkLicpOworfSwgZmFsc2UpOworCiBpbWcuY3Jvc3NPcmlnaW4gPSAiIjsKIGltZy5zcmMg
PSAiaHR0cDovL2xvY2FsaG9zdDo4MDgwL3NlY3VyaXR5L3Jlc291cmNlcy9yZWQyMDB4MTAwLnBu
ZyI7CiBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGltZyk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>