<?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>65030</bug_id>
          
          <creation_ts>2011-07-22 10:20:33 -0700</creation_ts>
          <short_desc>Avoiding painting backgrounds if they are fully obscures by an object&apos;s foreground</short_desc>
          <delta_ts>2012-05-14 11:10:37 -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>Layout and Rendering</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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>mdelaney7</cc>
    
    <cc>mitz</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>440987</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-22 10:20:33 -0700</bug_when>
    <thetext>We shouldn&apos;t waste time painting backgrounds for things like images, for which it&apos;s easy to determine that the foreground fully obscures that background. This helps particularly in cases where the background might contain an animated &quot;loading&quot; image; that currently causes continual repaints, and it should not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441016</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-22 10:56:53 -0700</bug_when>
    <thetext>This is only going to work for JPEG initially: bug 65033.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441206</commentid>
    <comment_count>2</comment_count>
      <attachid>101774</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-22 15:13:23 -0700</bug_when>
    <thetext>Created attachment 101774
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441287</commentid>
    <comment_count>3</comment_count>
      <attachid>101774</attachid>
    <who name="">mitz</who>
    <bug_when>2011-07-22 17:02:42 -0700</bug_when>
    <thetext>Comment on attachment 101774
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Some pages used animated loading GIFs as the background of &lt;img&gt;,

Confused by the use of “used” in the past tense.

&gt; Source/WebCore/rendering/RenderImage.cpp:411
&gt; +    if (!image-&gt;isBitmapImage())

I think you need to null-check image.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441300</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-22 17:40:45 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/91628</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>441323</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-07-22 18:52:33 -0700</bug_when>
    <thetext>This patch seems to have caused a crash on Chromium Linux:
http://build.webkit.org/results/Chromium%20Linux%20Release%20(Tests)/r91628%20(21410)/results.html
http://build.webkit.org/results/Chromium%20Linux%20Release%20(Flexbox)/r91628%20(1508)/results.html

Given these are two different bots, I highly doubt that this is a flake.  Unfortunately, these are release builds so we can&apos;t get stack trace out of them.

There&apos;s also one failing test on Chromium Mac:
http://build.webkit.org/results/Chromium%20Mac%20Release%20(Tests)/r91628%20(9716)/results.html

But I&apos;m not certain if this is a real regression or just a flakiness.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>444154</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-29 16:02:22 -0700</bug_when>
    <thetext>Do we have any more information on whether those crashes persisted?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>444176</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-07-29 16:40:19 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Do we have any more information on whether those crashes persisted?

They have been crashing quite consistently: http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=fast%2Fcanvas%2Fwebgl%2Fdrawingbuffer-test.html%2Cfast%2Fcanvas%2Fcanvas-bg-multiple-removal.html%2Cfast%2Fcanvas%2Fcanvas-as-image-incremental-repaint.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>444286</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-07-30 08:56:25 -0700</bug_when>
    <thetext>Odd that it&apos;s just Linux that&apos;s crashing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>444291</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-07-30 10:16:50 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Odd that it&apos;s just Linux that&apos;s crashing.

It&apos;s possible that there&apos;s a cr-linux or skia bug; or that only cr-linux hit some specific timing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>444756</commentid>
    <comment_count>10</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-08-01 10:36:09 -0700</bug_when>
    <thetext>Let&apos;s continue discussing the crashes in bug 65063.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101774</attachid>
            <date>2011-07-22 15:13:23 -0700</date>
            <delta_ts>2012-05-14 11:10:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-65030-20110722151321.patch</filename>
            <type>text/plain</type>
            <size>12190</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTE1NzAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA1OWU4MzQ3ZjYwZTkwNWZl
NWFiNzIwOWY0MjZlY2Y4MzM4NGViODQ1Li44OGExOTY4NDdiODA0YjMzNTc0N2M4MTU3ODJkN2Nj
OTdjMGQ3OTQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDctMjIgIFNpbW9u
IEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgQXZvaWRpbmcgcGFp
bnRpbmcgYmFja2dyb3VuZHMgaWYgdGhleSBhcmUgZnVsbHkgb2JzY3VyZXMgYnkgYW4gb2JqZWN0
J3MgZm9yZWdyb3VuZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NjUwMzAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBTb21lIHBhZ2VzIHVzZWQgYW5pbWF0ZWQgbG9hZGluZyBHSUZzIGFzIHRoZSBiYWNrZ3Jv
dW5kIG9mIDxpbWc+LAorICAgICAgICBidXQgV2ViS2l0IGtlZXBzIGFuaW1hdGluZyB0aGVzZSBh
ZnRlciB0aGUgaW1hZ2UgaGFzIGxvYWRlZC4KKyAgICAgICAgCisgICAgICAgIFRod2FydCB0aGlz
IGJ5IGF2b2lkaW5nIHRoZSBwYWludGluZyBvZiBzdWNoIGJhY2tncm91bmRzLCBpZiB3ZSBjYW4K
KyAgICAgICAgZGV0ZXJtaW5lIHRoYXQgdGhleSBhcmUgY29tcGxldGVseSBvYnNjdXJlZCBieSB0
aGUgYm9yZGVyIGFuZCBjb250ZW50CisgICAgICAgIG9mIHRoZSBlbGVtZW50LgorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OkJp
dG1hcEltYWdlOjpjdXJyZW50RnJhbWVIYXNBbHBoYSk6IFV0aWxpdHkgbWV0aG9kLCBzaW5jZSBj
dXJyZW50RnJhbWUoKQorICAgICAgICBpcyBwcm90ZWN0ZWQuCisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3g6OnBhaW50Qm94RGVj
b3JhdGlvbnMpOiBDYWxsIHBhaW50QmFja2dyb3VuZCgpLgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyQm94OjpwYWludEJhY2tncm91bmQpOiBOZXcgd3JhcHBlciBmb3IgdGhlIHBhaW50RmlsbExh
eWVycygpIHdoaWNoCisgICAgICAgIHBhaW50cyB0aGUgYmFja2dyb3VuZCBsYXllcnMsIHBsdXMg
c29tZSBjb2RlIHdlIGNhbGwgaW4gYSBjb3VwbGUgb2YgcGxhY2VzLiBUaGlzCisgICAgICAgIGNo
ZWNrcyB0aGUgbmV3IGJhY2tncm91bmRJc09ic2N1cmVkKCkgbWV0aG9kIGJlZm9yZSBkb2luZyBh
bnkgcGFpbnRpbmcuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJveC5oOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyQm94OjpiYWNrZ3JvdW5kSXNPYnNjdXJlZCk6IE5ldyB2aXJ0dWFsIG1l
dGhvZCB0aGF0IGRldGVybWluZXMKKyAgICAgICAgd2hldGhlciBhbnkgb2YgdGhlIGJhY2tncm91
bmQgaXMgdmlzaWJsZS4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3Qu
aDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Qm9yZGVyRWRnZTo6b2JzY3VyZXNCYWNrZ3JvdW5kKTogUmV0dXJucyB0cnVl
IGlmIHRoaXMgZWRnZSB3aWxsCisgICAgICAgIGVudGlyZWx5IGhpZGUgdGhlIGJhY2tncm91bmQg
dW5kZXIgaXQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6Ym9yZGVy
T2JzY3VyZXNCYWNrZ3JvdW5kKTogRGV0ZXJtaW5lIHdoZXRoZXIKKyAgICAgICAgdGhlIGJvcmRl
ciBoaWRlcyB0aGUgYmFja2dyb3VuZC4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVySW1hZ2Uu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVySW1hZ2U6OmJhY2tncm91bmRJc09ic2N1cmVk
KTogT3ZlcnJpZGUgdGhlIFJlbmRlckJveCBtZXRob2QKKyAgICAgICAgYW5kIHJldHVybiB0cnVl
IGlmIHRoZSBpbWFnZSBpcyBhIGxvYWRlZCwgb3BhcXVlIGJpdG1hcCBpbWFnZSwgYW5kIHRoZSBi
YWNrZ3JvdW5kCisgICAgICAgIHdvbid0IHNob3cgaW4gdGhlIGJvcmRlciBvciBwYWRkaW5nIGFy
ZWFzLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJJbWFnZS5oOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJUYWJsZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUYWJsZTo6cGFp
bnRCb3hEZWNvcmF0aW9ucyk6IFVzZSBwYWludEJhY2tncm91bmQoKS4KKwogMjAxMS0wNy0yMiAg
UGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXBsYWNl
IHByZXByb2Nlc3NvciBzdGF0ZW1lbnRzIGluIElETCBmaWxlcyB3aXRoIENvbmRpdGlvbmFsIGF0
dHJpYnV0ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQml0
bWFwSW1hZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0JpdG1hcEltYWdl
LmgKaW5kZXggNGY2MTI1MWJjNGNhOWEyYWFiOWE3NGRlOWU0MDQ0MWI3MmZmZjFkOC4uNTE3NDg5
YmFlZjE3MDZlYjI2MTI0MjE4MTYwMjIyY2I4MWU2M2FmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvQml0bWFwSW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9CaXRtYXBJbWFnZS5oCkBAIC0xNTgsNyArMTU4LDggQEAgcHVi
bGljOgogI2VuZGlmCiAKICAgICB2aXJ0dWFsIE5hdGl2ZUltYWdlUHRyIG5hdGl2ZUltYWdlRm9y
Q3VycmVudEZyYW1lKCkgeyByZXR1cm4gZnJhbWVBdEluZGV4KGN1cnJlbnRGcmFtZSgpKTsgfQot
ICAgIGJvb2wgZnJhbWVIYXNBbHBoYUF0SW5kZXgoc2l6ZV90KTsgCisgICAgYm9vbCBmcmFtZUhh
c0FscGhhQXRJbmRleChzaXplX3QpOworICAgIGJvb2wgY3VycmVudEZyYW1lSGFzQWxwaGEoKSB7
IHJldHVybiBmcmFtZUhhc0FscGhhQXRJbmRleChjdXJyZW50RnJhbWUoKSk7IH0KIAogI2lmICFB
U1NFUlRfRElTQUJMRUQKICAgICBib29sIG5vdFNvbGlkQ29sb3IoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94LmNwcAppbmRleCAyNGUyNzY1OTM2YmEzNzcxODk4ZWI1YjViYWE4YjZj
ZDQ2NmU2ZTFhLi5lZTMwYzM5MThjOGU4YzM4YmNlM2U2OTg0YzdkZDg0N2UwYTQ3OTllIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmNwcApAQCAtODYyLDEzICs4NjIsOCBAQCB2
b2lkIFJlbmRlckJveDo6cGFpbnRCb3hEZWNvcmF0aW9ucyhQYWludEluZm8mIHBhaW50SW5mbywg
Y29uc3QgTGF5b3V0UG9pbnQmIHBhaQogICAgIC8vIFRoZSB0aGVtZSB3aWxsIHRlbGwgdXMgd2hl
dGhlciBvciBub3Qgd2Ugc2hvdWxkIGFsc28gcGFpbnQgdGhlIENTUyBiYWNrZ3JvdW5kLgogICAg
IGJvb2wgdGhlbWVQYWludGVkID0gc3R5bGUoKS0+aGFzQXBwZWFyYW5jZSgpICYmICF0aGVtZSgp
LT5wYWludCh0aGlzLCBwYWludEluZm8sIHBhaW50UmVjdCk7CiAgICAgaWYgKCF0aGVtZVBhaW50
ZWQpIHsKLSAgICAgICAgaWYgKGlzUm9vdCgpKQotICAgICAgICAgICAgcGFpbnRSb290Qm94Rmls
bExheWVycyhwYWludEluZm8pOwotICAgICAgICBlbHNlIGlmICghaXNCb2R5KCkgfHwgZG9jdW1l
bnQoKS0+ZG9jdW1lbnRFbGVtZW50KCktPnJlbmRlcmVyKCktPmhhc0JhY2tncm91bmQoKSkgewot
ICAgICAgICAgICAgLy8gVGhlIDxib2R5PiBvbmx5IHBhaW50cyBpdHMgYmFja2dyb3VuZCBpZiB0
aGUgcm9vdCBlbGVtZW50IGhhcyBkZWZpbmVkIGEgYmFja2dyb3VuZAotICAgICAgICAgICAgLy8g
aW5kZXBlbmRlbnQgb2YgdGhlIGJvZHkuCi0gICAgICAgICAgICBwYWludEZpbGxMYXllcnMocGFp
bnRJbmZvLCBzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3Jv
dW5kQ29sb3IpLCBzdHlsZSgpLT5iYWNrZ3JvdW5kTGF5ZXJzKCksIHBhaW50UmVjdCwgYmxlZWRB
dm9pZGFuY2UpOwotICAgICAgICB9CisgICAgICAgIHBhaW50QmFja2dyb3VuZChwYWludEluZm8s
IHBhaW50UmVjdCwgYmxlZWRBdm9pZGFuY2UpOworCiAgICAgICAgIGlmIChzdHlsZSgpLT5oYXNB
cHBlYXJhbmNlKCkpCiAgICAgICAgICAgICB0aGVtZSgpLT5wYWludERlY29yYXRpb25zKHRoaXMs
IHBhaW50SW5mbywgcGFpbnRSZWN0KTsKICAgICB9CkBAIC04ODIsNiArODc3LDE4IEBAIHZvaWQg
UmVuZGVyQm94OjpwYWludEJveERlY29yYXRpb25zKFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25z
dCBMYXlvdXRQb2ludCYgcGFpCiAgICAgICAgIHBhaW50SW5mby5jb250ZXh0LT5lbmRUcmFuc3Bh
cmVuY3lMYXllcigpOwogfQogCit2b2lkIFJlbmRlckJveDo6cGFpbnRCYWNrZ3JvdW5kKGNvbnN0
IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRSZWN0JiBwYWludFJlY3QsIEJhY2tn
cm91bmRCbGVlZEF2b2lkYW5jZSBibGVlZEF2b2lkYW5jZSkKK3sKKyAgICBpZiAoaXNSb290KCkp
CisgICAgICAgIHBhaW50Um9vdEJveEZpbGxMYXllcnMocGFpbnRJbmZvKTsKKyAgICBlbHNlIGlm
ICghaXNCb2R5KCkgfHwgZG9jdW1lbnQoKS0+ZG9jdW1lbnRFbGVtZW50KCktPnJlbmRlcmVyKCkt
Pmhhc0JhY2tncm91bmQoKSkgeworICAgICAgICAvLyBUaGUgPGJvZHk+IG9ubHkgcGFpbnRzIGl0
cyBiYWNrZ3JvdW5kIGlmIHRoZSByb290IGVsZW1lbnQgaGFzIGRlZmluZWQgYSBiYWNrZ3JvdW5k
CisgICAgICAgIC8vIGluZGVwZW5kZW50IG9mIHRoZSBib2R5LgorICAgICAgICBpZiAoIWJhY2tn
cm91bmRJc09ic2N1cmVkKCkpCisgICAgICAgICAgICBwYWludEZpbGxMYXllcnMocGFpbnRJbmZv
LCBzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NTUHJvcGVydHlCYWNrZ3JvdW5kQ29s
b3IpLCBzdHlsZSgpLT5iYWNrZ3JvdW5kTGF5ZXJzKCksIHBhaW50UmVjdCwgYmxlZWRBdm9pZGFu
Y2UpOworICAgIH0KK30KKwogdm9pZCBSZW5kZXJCb3g6OnBhaW50TWFzayhQYWludEluZm8mIHBh
aW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogewogICAgIGlmICghcGFp
bnRJbmZvLnNob3VsZFBhaW50V2l0aGluUm9vdCh0aGlzKSB8fCBzdHlsZSgpLT52aXNpYmlsaXR5
KCkgIT0gVklTSUJMRSB8fCBwYWludEluZm8ucGhhc2UgIT0gUGFpbnRQaGFzZU1hc2sgfHwgcGFp
bnRJbmZvLmNvbnRleHQtPnBhaW50aW5nRGlzYWJsZWQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3guaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCb3guaAppbmRleCA0ODE1MjFjOTQ1Yzk1NDIzMjQyZTQzYjViZmVjMWNkNWYzNzlkM2Zk
Li4yNjllODIwYWI4Nzg1NTdhZDg3YzYyYjY5ODhhYTc5NmY1NjM0MDE0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckJveC5oCkBAIC00MTcsNiArNDE3LDkgQEAgcHJvdGVjdGVkOgogICAg
IHZpcnR1YWwgdm9pZCBzdHlsZURpZENoYW5nZShTdHlsZURpZmZlcmVuY2UsIGNvbnN0IFJlbmRl
clN0eWxlKiBvbGRTdHlsZSk7CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUJveE1vZGVsSW5mb0Zy
b21TdHlsZSgpOwogCisgICAgdmlydHVhbCBib29sIGJhY2tncm91bmRJc09ic2N1cmVkKCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2b2lkIHBhaW50QmFja2dyb3VuZChjb25zdCBQYWlu
dEluZm8mLCBjb25zdCBMYXlvdXRSZWN0JiwgQmFja2dyb3VuZEJsZWVkQXZvaWRhbmNlID0gQmFj
a2dyb3VuZEJsZWVkTm9uZSk7CisgICAgCiAgICAgdm9pZCBwYWludEZpbGxMYXllcihjb25zdCBQ
YWludEluZm8mLCBjb25zdCBDb2xvciYsIGNvbnN0IEZpbGxMYXllciosIGNvbnN0IExheW91dFJl
Y3QmLCBCYWNrZ3JvdW5kQmxlZWRBdm9pZGFuY2UsIENvbXBvc2l0ZU9wZXJhdG9yLCBSZW5kZXJP
YmplY3QqIGJhY2tncm91bmRPYmplY3QpOwogICAgIHZvaWQgcGFpbnRGaWxsTGF5ZXJzKGNvbnN0
IFBhaW50SW5mbyYsIGNvbnN0IENvbG9yJiwgY29uc3QgRmlsbExheWVyKiwgY29uc3QgTGF5b3V0
UmVjdCYsIEJhY2tncm91bmRCbGVlZEF2b2lkYW5jZSA9IEJhY2tncm91bmRCbGVlZE5vbmUsIENv
bXBvc2l0ZU9wZXJhdG9yID0gQ29tcG9zaXRlU291cmNlT3ZlciwgUmVuZGVyT2JqZWN0KiBiYWNr
Z3JvdW5kT2JqZWN0ID0gMCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQm94TW9kZWxPYmplY3QuY3BwCmluZGV4IGEyYWYwMTdhMjE4MTdjOTIwNTAyYjJmMGNlNDQ0
YTEzN2UzZjBiOTcuLjE0YjJmZDc2MmE2NTMyODEzNTI3YjBmYzZjMzI4ZmFjOThkYzJjOTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNw
cApAQCAtMTA5NSw2ICsxMDk1LDE2IEBAIHB1YmxpYzoKIAogICAgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICB9CisgICAgYm9vbCBvYnNjdXJlc0JhY2tncm91bmQoKSBjb25zdAorICAgIHsKKyAgICAg
ICAgaWYgKCFpc1ByZXNlbnQgfHwgaXNUcmFuc3BhcmVudCB8fCBjb2xvci5oYXNBbHBoYSgpIHx8
IHN0eWxlID09IEJISURERU4pCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAg
aWYgKHN0eWxlID09IERPVFRFRCB8fCBzdHlsZSA9PSBEQVNIRUQgfHwgc3R5bGUgPT0gRE9VQkxF
KQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIHJldHVybiB0cnVlOworICAg
IH0KIAogICAgIGludCB1c2VkV2lkdGgoKSBjb25zdCB7IHJldHVybiBpc1ByZXNlbnQgPyB3aWR0
aCA6IDA7IH0KICAgICAKQEAgLTIxNDUsNiArMjE1NSwyNyBAQCBib29sIFJlbmRlckJveE1vZGVs
T2JqZWN0Ojpib3JkZXJPYnNjdXJlc0JhY2tncm91bmRFZGdlKGNvbnN0IEZsb2F0U2l6ZSYgY29u
dGV4dAogICAgIHJldHVybiB0cnVlOwogfQogCitib29sIFJlbmRlckJveE1vZGVsT2JqZWN0Ojpi
b3JkZXJPYnNjdXJlc0JhY2tncm91bmQoKSBjb25zdAoreworICAgIGlmICghc3R5bGUoKS0+aGFz
Qm9yZGVyKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIC8vIEJhaWwgaWYgd2UgaGF2
ZSBhbnkgYm9yZGVyLWltYWdlIGZvciBub3cuIFdlIGNvdWxkIGxvb2sgYXQgdGhlIGltYWdlIGFs
cGhhIHRvIGltcHJvdmUgdGhpcy4KKyAgICBpZiAoc3R5bGUoKS0+Ym9yZGVySW1hZ2UoKS5pbWFn
ZSgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBCb3JkZXJFZGdlIGVkZ2VzWzRdOwor
ICAgIGdldEJvcmRlckVkZ2VJbmZvKGVkZ2VzKTsKKworICAgIGZvciAoaW50IGkgPSBCU1RvcDsg
aSA8PSBCU0xlZnQ7ICsraSkgeworICAgICAgICBjb25zdCBCb3JkZXJFZGdlJiBjdXJyRWRnZSA9
IGVkZ2VzW2ldOworICAgICAgICBpZiAoIWN1cnJFZGdlLm9ic2N1cmVzQmFja2dyb3VuZCgpKQor
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIHJldHVybiB0cnVlOworfQor
CiBzdGF0aWMgaW5saW5lIEludFJlY3QgYXJlYUNhc3RpbmdTaGFkb3dJbkhvbGUoY29uc3QgSW50
UmVjdCYgaG9sZVJlY3QsIGludCBzaGFkb3dCbHVyLCBpbnQgc2hhZG93U3ByZWFkLCBjb25zdCBJ
bnRTaXplJiBzaGFkb3dPZmZzZXQpCiB7CiAgICAgSW50UmVjdCBib3VuZHMoaG9sZVJlY3QpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0
LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaAppbmRl
eCBlM2QwOGNjZWVhYzdhMzMwMjEyYWI5OTc0NzllOGMxMDYzNWUwNjUxLi4yNDkwNWMxMDE4OGU4
Yzc1MjRkNjNjYzk5ZjBmNjI4YjViOTQ1YjFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuaApAQCAtMTgzLDYgKzE4Myw3IEBAIHByb3RlY3Rl
ZDoKICAgICB2b2lkIGNhbGN1bGF0ZUJhY2tncm91bmRJbWFnZUdlb21ldHJ5KGNvbnN0IEZpbGxM
YXllciosIGNvbnN0IEludFJlY3QmIHBhaW50UmVjdCwgQmFja2dyb3VuZEltYWdlR2VvbWV0cnkm
KTsKICAgICB2b2lkIGdldEJvcmRlckVkZ2VJbmZvKGNsYXNzIEJvcmRlckVkZ2VbXSwgYm9vbCBp
bmNsdWRlTG9naWNhbExlZnRFZGdlID0gdHJ1ZSwgYm9vbCBpbmNsdWRlTG9naWNhbFJpZ2h0RWRn
ZSA9IHRydWUpIGNvbnN0OwogICAgIGJvb2wgYm9yZGVyT2JzY3VyZXNCYWNrZ3JvdW5kRWRnZShj
b25zdCBGbG9hdFNpemUmIGNvbnRleHRTY2FsZSkgY29uc3Q7CisgICAgYm9vbCBib3JkZXJPYnNj
dXJlc0JhY2tncm91bmQoKSBjb25zdDsKIAogICAgIGJvb2wgc2hvdWxkUGFpbnRBdExvd1F1YWxp
dHkoR3JhcGhpY3NDb250ZXh0KiwgSW1hZ2UqLCBjb25zdCB2b2lkKiwgY29uc3QgSW50U2l6ZSYp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckltYWdlLmNwcAppbmRleCA3MzNhMjE5
YTgxYjIwZWJlYjUwNDA1ODRhZjc1OWE4NzE1YmRhM2RjLi45MWU3NDk5ZTIzNDExZmQ0YWQzZWIx
MTNhZjI2YWQxNDNkMjQ4MjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVySW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFn
ZS5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJS
ZW5kZXJJbWFnZS5oIgogCisjaW5jbHVkZSAiQml0bWFwSW1hZ2UuaCIKICNpbmNsdWRlICJGb250
Q2FjaGUuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lU2VsZWN0aW9uLmgi
CkBAIC0zODcsNiArMzg4LDM2IEBAIHZvaWQgUmVuZGVySW1hZ2U6OnBhaW50SW50b1JlY3QoR3Jh
cGhpY3NDb250ZXh0KiBjb250ZXh0LCBjb25zdCBJbnRSZWN0JiByZWN0KQogICAgIGNvbnRleHQt
PmRyYXdJbWFnZShtX2ltYWdlUmVzb3VyY2UtPmltYWdlKHJlY3Qud2lkdGgoKSwgcmVjdC5oZWln
aHQoKSkuZ2V0KCksIHN0eWxlKCktPmNvbG9yU3BhY2UoKSwgcmVjdCwgY29tcG9zaXRlT3BlcmF0
b3IsIHVzZUxvd1F1YWxpdHlTY2FsaW5nKTsKIH0KIAorYm9vbCBSZW5kZXJJbWFnZTo6YmFja2dy
b3VuZElzT2JzY3VyZWQoKSBjb25zdAoreworICAgIGlmICghbV9pbWFnZVJlc291cmNlLT5oYXNJ
bWFnZSgpIHx8IG1faW1hZ2VSZXNvdXJjZS0+ZXJyb3JPY2N1cnJlZCgpKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICBpZiAobV9pbWFnZVJlc291cmNlLT5jYWNoZWRJbWFnZSgpICYmICFt
X2ltYWdlUmVzb3VyY2UtPmNhY2hlZEltYWdlKCktPmlzTG9hZGVkKCkpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgIEVGaWxsQm94IGJhY2tncm91bmRDbGlwID0gc3R5bGUoKS0+YmFja2dy
b3VuZENsaXAoKTsKKworICAgIC8vIEJhY2tncm91bmQgcGFpbnRzIHVuZGVyIGJvcmRlcnMuCisg
ICAgaWYgKGJhY2tncm91bmRDbGlwID09IEJvcmRlckZpbGxCb3ggJiYgc3R5bGUoKS0+aGFzQm9y
ZGVyKCkgJiYgIWJvcmRlck9ic2N1cmVzQmFja2dyb3VuZCgpKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICAvLyBCYWNrZ3JvdW5kIHNob3dzIGluIHBhZGRpbmcgYXJlYS4KKyAgICBpZiAo
KGJhY2tncm91bmRDbGlwID09IEJvcmRlckZpbGxCb3ggfHwgYmFja2dyb3VuZENsaXAgPT0gUGFk
ZGluZ0ZpbGxCb3gpICYmIHN0eWxlKCktPmhhc1BhZGRpbmcoKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgLy8gQ2hlY2sgZm9yIGJpdG1hcCBpbWFnZSB3aXRoIGFscGhhLgorICAgIElt
YWdlKiBpbWFnZSA9IG1faW1hZ2VSZXNvdXJjZS0+aW1hZ2UoKS5nZXQoKTsKKyAgICBpZiAoIWlt
YWdlLT5pc0JpdG1hcEltYWdlKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgCisg
ICAgQml0bWFwSW1hZ2UqIGJpdG1hcEltYWdlID0gc3RhdGljX2Nhc3Q8Qml0bWFwSW1hZ2UqPihp
bWFnZSk7CisgICAgaWYgKGJpdG1hcEltYWdlLT5jdXJyZW50RnJhbWVIYXNBbHBoYSgpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogaW50IFJlbmRlcklt
YWdlOjptaW5pbXVtUmVwbGFjZWRIZWlnaHQoKSBjb25zdAogewogICAgIHJldHVybiBtX2ltYWdl
UmVzb3VyY2UtPmVycm9yT2NjdXJyZWQoKSA/IGludHJpbnNpY1NpemUoKS5oZWlnaHQoKSA6IDA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySW1hZ2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCmluZGV4IDdiZWQ3YzU2ZGY0OGM5
ZGE5ODJiMDEzNTViYTNhMTQwYmNmMDU4ZTUuLmRhODk1ZDI2NjBkMDJmMDk2YmNiNTA2YTI1NjUy
N2IxODEyZjIwZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJ
bWFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJJbWFnZS5oCkBAIC03
OCw2ICs3OCw4IEBAIHByaXZhdGU6CiAKICAgICB2aXJ0dWFsIHZvaWQgcGFpbnRSZXBsYWNlZChQ
YWludEluZm8mLCBjb25zdCBJbnRQb2ludCYpOwogCisgICAgdmlydHVhbCBib29sIGJhY2tncm91
bmRJc09ic2N1cmVkKCkgY29uc3Q7CisKICAgICB2aXJ0dWFsIGludCBtaW5pbXVtUmVwbGFjZWRI
ZWlnaHQoKSBjb25zdDsKIAogICAgIHZpcnR1YWwgdm9pZCBub3RpZnlGaW5pc2hlZChDYWNoZWRS
ZXNvdXJjZSopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRh
YmxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUYWJsZS5jcHAKaW5kZXgg
NjhmNjUwMTI2NzAyMWIzMzliMWQ2OTI5MmY5N2FiYzBlOTI1MDhlMy4uYTJkYjMzZjNmYzE5YjE4
NTllMmZmNmM3MTk0ZmFjOGJlY2RjMGU2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclRhYmxlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyVGFibGUuY3BwCkBAIC01NTgsMTQgKzU1OCw3IEBAIHZvaWQgUmVuZGVyVGFibGU6OnBhaW50
Qm94RGVjb3JhdGlvbnMoUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBw
CiAgICAgc3VidHJhY3RDYXB0aW9uUmVjdChyZWN0KTsKIAogICAgIHBhaW50Qm94U2hhZG93KHBh
aW50SW5mby5jb250ZXh0LCByZWN0LCBzdHlsZSgpLCBOb3JtYWwpOwotICAgIAotICAgIGlmIChp
c1Jvb3QoKSkKLSAgICAgICAgcGFpbnRSb290Qm94RmlsbExheWVycyhwYWludEluZm8pOwotICAg
IGVsc2UgaWYgKCFpc0JvZHkoKSB8fCBkb2N1bWVudCgpLT5kb2N1bWVudEVsZW1lbnQoKS0+cmVu
ZGVyZXIoKS0+aGFzQmFja2dyb3VuZCgpKQotICAgICAgICAvLyBUaGUgPGJvZHk+IG9ubHkgcGFp
bnRzIGl0cyBiYWNrZ3JvdW5kIGlmIHRoZSByb290IGVsZW1lbnQgaGFzIGRlZmluZWQgYSBiYWNr
Z3JvdW5kCi0gICAgICAgIC8vIGluZGVwZW5kZW50IG9mIHRoZSBib2R5LgotICAgICAgICBwYWlu
dEZpbGxMYXllcnMocGFpbnRJbmZvLCBzdHlsZSgpLT52aXNpdGVkRGVwZW5kZW50Q29sb3IoQ1NT
UHJvcGVydHlCYWNrZ3JvdW5kQ29sb3IpLCBzdHlsZSgpLT5iYWNrZ3JvdW5kTGF5ZXJzKCksIHJl
Y3QpOwotCisgICAgcGFpbnRCYWNrZ3JvdW5kKHBhaW50SW5mbywgcmVjdCk7CiAgICAgcGFpbnRC
b3hTaGFkb3cocGFpbnRJbmZvLmNvbnRleHQsIHJlY3QsIHN0eWxlKCksIEluc2V0KTsKIAogICAg
IGlmIChzdHlsZSgpLT5oYXNCb3JkZXIoKSAmJiAhY29sbGFwc2VCb3JkZXJzKCkpCg==
</data>
<flag name="review"
          id="96804"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>