<?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>58907</bug_id>
          
          <creation_ts>2011-04-19 11:07:16 -0700</creation_ts>
          <short_desc>[chromium] Don&apos;t unnecessarily resize skia/cg canvases when painting in compositor</short_desc>
          <delta_ts>2011-05-02 16:13:35 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Adrienne Walker">enne</reporter>
          <assigned_to name="Adrienne Walker">enne</assigned_to>
          <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>kbr</cc>
    
    <cc>vangelis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>388609</commentid>
    <comment_count>0</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-19 11:07:16 -0700</bug_when>
    <thetext>[chromium] Don&apos;t unnecessarily resize skia/cg canvases when painting in compositor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388615</commentid>
    <comment_count>1</comment_count>
      <attachid>90220</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-19 11:09:25 -0700</bug_when>
    <thetext>Created attachment 90220
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388617</commentid>
    <comment_count>2</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-19 11:10:44 -0700</bug_when>
    <thetext>James brought up this issue during a code inspection of how LayerTilerChromium worked, but when looking into fixing it, it looked like the save and restore context logic wasn&apos;t correct either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>388618</commentid>
    <comment_count>3</comment_count>
      <attachid>90220</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-19 11:12:05 -0700</bug_when>
    <thetext>Comment on attachment 90220
Patch

Actually, I&apos;d like to write a layout test for this.  I only caught the context save/restore logic snafu because I manually tested this two line patch.

So, I&apos;m taking off request for review until I do that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393785</commentid>
    <comment_count>4</comment_count>
      <attachid>91343</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-27 14:01:03 -0700</bug_when>
    <thetext>Created attachment 91343
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393800</commentid>
    <comment_count>5</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-27 14:08:04 -0700</bug_when>
    <thetext>I&apos;m not sure I understand the save/restore context stuff here - could you explain?  What was wrong with the previous code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>393805</commentid>
    <comment_count>6</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-27 14:11:36 -0700</bug_when>
    <thetext>The previous code (and the reason for including this test case) put the save and restore in the wrong place.  In LayerTilerChromium, there&apos;s a translation of the canvas as well which wasn&apos;t getting popped.  So, multiple redraws of the same canvas would accumulate an incorrect transform.  This was masked because we were always recreating the canvas.  Oops.

The save/restore was moved to be in the Painter functor itself, where it can wrap all state changing operations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>394829</commentid>
    <comment_count>7</comment_count>
      <attachid>91343</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-04-28 15:38:18 -0700</bug_when>
    <thetext>Comment on attachment 91343
Patch

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

R=me, few things to address before landing.

&gt; LayoutTests/compositing/repaint/same-size-invalidation.html:22
&gt; +        setTimeout(&quot;changeBackground1();&quot;, 0);

nit: setTimeout(changeBackground1, 0) is a bit better. move doTest below the declarations of the functions.

&gt; LayoutTests/platform/chromium/test_expectations.txt:3973
&gt; +BUGENNE : compositing/repaint/same-size-invalidation.html = FAIL

= FAIL isn&apos;t sufficient - these will fail with MISSING on windows and mac since there is no baseline for those platforms.

This test should render the same on all platforms so I&apos;d just check same-size-invalidation-expected.png/checksum into platform/chromium-gpu/ and not modify test_expectations at all.

&gt; Source/WebCore/platform/graphics/chromium/PlatformCanvas.h:84
&gt; +        // Destructor restores canvas to pre-construction state.

does the Painter manipulate any state on the PlatformCanvas?  Painter::Painter() and Painter::~Painter() only seem to mutate their m_context, which doesn&apos;t do anything to the PlatformCanvas other than render into it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>395045</commentid>
    <comment_count>8</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-04-28 19:38:27 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 91343 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=91343&amp;action=review
&gt; 
&gt; R=me, few things to address before landing.
&gt; 
&gt; &gt; LayoutTests/compositing/repaint/same-size-invalidation.html:22
&gt; &gt; +        setTimeout(&quot;changeBackground1();&quot;, 0);
&gt; 
&gt; nit: setTimeout(changeBackground1, 0) is a bit better. move doTest below the declarations of the functions.

Will do.  Using a string is just sloppy.  Also, I don&apos;t think I need to reorder anything because Javascript hoisting will take care of it.

&gt; &gt; LayoutTests/platform/chromium/test_expectations.txt:3973
&gt; &gt; +BUGENNE : compositing/repaint/same-size-invalidation.html = FAIL
&gt; 
&gt; = FAIL isn&apos;t sufficient - these will fail with MISSING on windows and mac since there is no baseline for those platforms.

Yeah, I&apos;ve changed this locally already.  I learned that the hard way just yesterday.

&gt; This test should render the same on all platforms so I&apos;d just check same-size-invalidation-expected.png/checksum into platform/chromium-gpu/ and not modify test_expectations at all.

Too much gardening experience lately has made me cautious.  I was going to let the rebaseline tool tell me that.

&gt; &gt; Source/WebCore/platform/graphics/chromium/PlatformCanvas.h:84
&gt; &gt; +        // Destructor restores canvas to pre-construction state.
&gt; 
&gt; does the Painter manipulate any state on the PlatformCanvas?  Painter::Painter() and Painter::~Painter() only seem to mutate their m_context, which doesn&apos;t do anything to the PlatformCanvas other than render into it.

Perhaps the comment should be clarified to be &quot;restores canvas context&quot; instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>396706</commentid>
    <comment_count>9</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-05-02 15:13:49 -0700</bug_when>
    <thetext>Committed r85527: &lt;http://trac.webkit.org/changeset/85527&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>396760</commentid>
    <comment_count>10</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2011-05-02 16:13:35 -0700</bug_when>
    <thetext>Committed r85539: &lt;http://trac.webkit.org/changeset/85539&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90220</attachid>
            <date>2011-04-19 11:09:25 -0700</date>
            <delta_ts>2011-04-27 14:01:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58907-20110419110924.patch</filename>
            <type>text/plain</type>
            <size>3549</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODQyNjAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBmYTFlNjBiZWI3ZGE1Njk2
MWQxNzJlZDM2ODJhOTI4NmQ2YjkyNTY2Li5mMDA0NjJkMzBiZmE3MGZlNzQxYTRkOTE3NDVmZTVj
NTMzYTAyMWY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDQtMTkgIEFkcmll
bm5lIFdhbGtlciAgPGVubmVAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbY2hyb21pdW1dIERvbid0IHVubmVjZXNzYXJpbHkgcmVz
aXplIHNraWEvY2cgY2FudmFzZXMgd2hlbiBwYWludGluZyBpbiBjb21wb3NpdG9yCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01ODkwNworCisgICAgICAg
IEFkZGl0aW9uYWxseSwgbW92ZSB0aGUgY29udGV4dCBzYXZlL3Jlc3RvcmUgbG9naWMgdG8gYSBw
bGFjZSB3aGVyZSBpdAorICAgICAgICB3aWxsIHJlc2V0IHRoZSB0cmFuc2xhdGlvbiBhZGRlZCBp
biBMYXllclRpbGVyQ2hyb21pdW0uCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiAoT09QUyEpCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Db250ZW50TGF5ZXJDaHJvbWl1
bS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50TGF5ZXJQYWludGVyOjpwYWludCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUGxhdGZvcm1DYW52YXMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1DYW52YXM6OnJlc2l6ZSk6CisgICAgICAgIChXZWJD
b3JlOjpQbGF0Zm9ybUNhbnZhczo6UGFpbnRlcjo6UGFpbnRlcik6CisgICAgICAgIChXZWJDb3Jl
OjpQbGF0Zm9ybUNhbnZhczo6UGFpbnRlcjo6flBhaW50ZXIpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmg6CisKIDIwMTEtMDQtMTkgIFZzZXZv
bG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
UGF2ZWwgRmVsZG1hbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL0NvbnRlbnRMYXllckNocm9taXVtLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0NvbnRlbnRMYXllckNocm9taXVtLmNwcAppbmRleCBh
ZmYyOTgxZjYwYmRkNzU0ZjFkNWI0YTcwMjM0ZGExOTRiNzIwODlhLi5iMTBlZjEyYjY3MmZkNjJi
NTcwOGI3YzEyY2VlNzVhODk5NjAyYTU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Db250ZW50TGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ29udGVudExheWVyQ2hyb21p
dW0uY3BwCkBAIC03NywxMSArNzcsOSBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgcGFp
bnQoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBJbnRSZWN0JiBjb250ZW50UmVjdCkK
ICAgICB7Ci0gICAgICAgIGNvbnRleHQuc2F2ZSgpOwogICAgICAgICBjb250ZXh0LmNsZWFyUmVj
dChjb250ZW50UmVjdCk7CiAgICAgICAgIGNvbnRleHQuY2xpcChjb250ZW50UmVjdCk7CiAgICAg
ICAgIG1fb3duZXItPnBhaW50R3JhcGhpY3NMYXllckNvbnRlbnRzKGNvbnRleHQsIGNvbnRlbnRS
ZWN0KTsKLSAgICAgICAgY29udGV4dC5yZXN0b3JlKCk7CiAgICAgfQogcHJpdmF0ZToKICAgICBH
cmFwaGljc0xheWVyQ2hyb21pdW0qIG1fb3duZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9QbGF0Zm9ybUNhbnZhcy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9QbGF0Zm9ybUNhbnZhcy5jcHAKaW5k
ZXggYWZhYTZmNzc0NTNiMWUxNDUxODg4OGM1MTZjNDRhZDQ0ODI2MzEyZS4uYzk2YmEyMjY4ODYx
NzE5YTc5OWU0Yjk3MWIzNzhlZWYxZDVjMzk4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUGxhdGZvcm1DYW52YXMuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmNwcApA
QCAtNTAsNiArNTAsOCBAQCBQbGF0Zm9ybUNhbnZhczo6flBsYXRmb3JtQ2FudmFzKCkKIAogdm9p
ZCBQbGF0Zm9ybUNhbnZhczo6cmVzaXplKGNvbnN0IEludFNpemUmIHNpemUpCiB7CisgICAgaWYg
KG1fc2l6ZSA9PSBzaXplKQorICAgICAgICByZXR1cm47CiAgICAgbV9zaXplID0gc2l6ZTsKICNp
ZiBVU0UoU0tJQSkKICAgICBtX3NraWFDYW52YXMgPSBza2lhOjpDcmVhdGVCaXRtYXBDYW52YXMo
c2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpLCBmYWxzZSk7CkBAIC0xMDcsMTAgKzEwOSwxMiBA
QCBQbGF0Zm9ybUNhbnZhczo6UGFpbnRlcjo6UGFpbnRlcihQbGF0Zm9ybUNhbnZhcyogY2FudmFz
LCBQbGF0Zm9ybUNhbnZhczo6UGFpbnRlcgogICAgIENHQ29udGV4dFNjYWxlQ1RNKG1fY29udGV4
dENHLmdldCgpLCAxLCAtMSk7CiAgICAgbV9jb250ZXh0ID0gYWRvcHRQdHIobmV3IEdyYXBoaWNz
Q29udGV4dChtX2NvbnRleHRDRy5nZXQoKSkpOwogI2VuZGlmCisgICAgY29udGV4dCgpLT5zYXZl
KCk7CiB9CiAKIFBsYXRmb3JtQ2FudmFzOjpQYWludGVyOjp+UGFpbnRlcigpCiB7CisgICAgY29u
dGV4dCgpLT5yZXN0b3JlKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2Fu
dmFzLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9QbGF0Zm9y
bUNhbnZhcy5oCmluZGV4IGIwMDJkMjY0MTljYzQwNTcxNTMyYzJiMDE3ZGZmNGU3MzFmNzJhYjAu
Ljg4NGY4Njc3MDFiOGM0NTc5NmYyNjU4ZWY0MjM3ZDRhYzYwMDhhODAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUGxhdGZvcm1D
YW52YXMuaApAQCAtODEsNiArODEsNyBAQCBwdWJsaWM6CiAgICAgICAgIGVudW0gVGV4dE9wdGlv
biB7IEdyYXlzY2FsZVRleHQsIFN1YnBpeGVsVGV4dCB9OwogCiAgICAgICAgIFBhaW50ZXIoUGxh
dGZvcm1DYW52YXMqLCBUZXh0T3B0aW9uKTsKKyAgICAgICAgLy8gRGVzdHJ1Y3RvciByZXN0b3Jl
cyBjYW52YXMgdG8gcHJlLWNvbnN0cnVjdGlvbiBzdGF0ZS4KICAgICAgICAgflBhaW50ZXIoKTsK
IAogICAgICAgICBHcmFwaGljc0NvbnRleHQqIGNvbnRleHQoKSBjb25zdCB7IHJldHVybiBtX2Nv
bnRleHQuZ2V0KCk7IH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>91343</attachid>
            <date>2011-04-27 14:01:03 -0700</date>
            <delta_ts>2011-04-28 15:38:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58907-20110427140101.patch</filename>
            <type>text/plain</type>
            <size>7871</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODUwNzUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4MTdkMGM4MmQ5YmM2NjIyZGU5MTk1
OWZjNjZmOWExNzQxNWI1YmYzLi4wNTc2YjI3MGQwMjI2YTAzNTIwYTIzNTQ0YmQ3OGQ1ZjgwZGI4
MTliIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDQtMjcgIEFkcmllbm5lIFdhbGtlciAg
PGVubmVAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBBZGQgdGVzdCBmb3IgbXVsdGlwbGUgaW52YWxpZGF0aW9ucyBvZiB0aGUgc2Ft
ZSBzaXplLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTg5MDcKKworICAgICAgICBUaGlzIHRlc3RzIGEgYnVnIGluIENocm9taXVtIHdoZXJlIGNhbnZh
cyBzdGF0ZSB3YXMgbm90IGJlaW5nIHByb3Blcmx5CisgICAgICAgIHJlc2V0IGJldHdlZW4gZHJh
dyBjYWxscyBhbmQgYSBjYWNoZWQgY2FudmFzIG9mIHRoZSBzYW1lIHNpemUgd2FzCisgICAgICAg
IGJlaW5nIHVzZWQgdG8gcGFpbnQgaW50byB0aGF0IHJldGFpbmVkIGluY29ycmVjdCBzdGF0ZS4K
KworICAgICAgICAqIGNvbXBvc2l0aW5nL3JlcGFpbnQvc2FtZS1zaXplLWludmFsaWRhdGlvbi1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL3JlcGFpbnQvc2FtZS1z
aXplLWludmFsaWRhdGlvbi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1
bS1ncHUtbGludXgvY29tcG9zaXRpbmcvcmVwYWludC9zYW1lLXNpemUtaW52YWxpZGF0aW9uLWV4
cGVjdGVkLnBuZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBl
Y3RhdGlvbnMudHh0OgorCiAyMDExLTA0LTIwICBBZHJpZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2ds
ZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNzZWxsLgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvcmVwYWludC9zYW1lLXNpemUtaW52YWxpZGF0aW9u
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL3JlcGFpbnQvc2FtZS1zaXpl
LWludmFsaWRhdGlvbi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGIxMzc4OTE3OTFmZTk2OTI3
YWQ3OGU2NGIwYWFkN2JkZWQwOGJkYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Nv
bXBvc2l0aW5nL3JlcGFpbnQvc2FtZS1zaXplLWludmFsaWRhdGlvbi1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSBAQAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9yZXBhaW50
L3NhbWUtc2l6ZS1pbnZhbGlkYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL3Jl
cGFpbnQvc2FtZS1zaXplLWludmFsaWRhdGlvbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkzMDA1ZWY2Njkx
ZTBkMmQ4MTJkZmY3ODZlODk2YmJmNjY2NTQ3MWYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9jb21wb3NpdGluZy9yZXBhaW50L3NhbWUtc2l6ZS1pbnZhbGlkYXRpb24uaHRtbApAQCAt
MCwwICsxLDQ2IEBACis8aHRtbD4KKzxoZWFkPgorICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1l
ZGlhPSJzY3JlZW4iPgorICAgIC5jb250YWluZXIgeworICAgICAgICBoZWlnaHQ6IDIwMHB4Owor
ICAgICAgICB3aWR0aDogMjAwcHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyZWVuOwor
ICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKKyAgICB9CisgICAgCisg
ICAgI3Rlc3RlciB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgdG9wOiA1
MHB4OworICAgICAgICBsZWZ0OiA1MHB4OworICAgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAg
ICB3aWR0aDogMTAwcHg7CisgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7CisgICAgfQor
ICA8L3N0eWxlPgorICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRm
LTgiPgorICAgIGZ1bmN0aW9uIGRvVGVzdCgpIHsKKyAgICAgICAgc2V0VGltZW91dCgiY2hhbmdl
QmFja2dyb3VuZDEoKTsiLCAwKTsKKyAgICB9CisgICAgZnVuY3Rpb24gY2hhbmdlQmFja2dyb3Vu
ZDEoKSB7CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0ZXInKS5zdHlsZS5i
YWNrZ3JvdW5kQ29sb3IgPSAncmVkJzsKKyAgICAgICAgc2V0VGltZW91dCgiY2hhbmdlQmFja2dy
b3VuZDIoKTsiLCAwKTsKKyAgICB9CisgICAgZnVuY3Rpb24gY2hhbmdlQmFja2dyb3VuZDIoKSB7
CisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZXN0ZXInKS5zdHlsZS5iYWNrZ3Jv
dW5kQ29sb3IgPSAnZ3JlZW4nOworICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKQorICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICB9
CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
ZHVtcEFzVGV4dCh0cnVlKTsKKyAgICB9CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xv
YWQnLCBkb1Rlc3QsIGZhbHNlKTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKyAgPCEt
LSB0aGlzIHRlc3Qgc2hvdWxkIG9ubHkgZGlzcGxheSBhIGdyZWVuIHNxdWFyZSAtLT4KKyAgPGRp
diBjbGFzcz0iY29udGFpbmVyIj4KKyAgICA8ZGl2IGlkPSJ0ZXN0ZXIiPjwvZGl2PgorICA8L2Rp
dj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2No
cm9taXVtLWdwdS1saW51eC9jb21wb3NpdGluZy9yZXBhaW50L3NhbWUtc2l6ZS1pbnZhbGlkYXRp
b24tZXhwZWN0ZWQucG5nIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0tZ3B1LWxpbnV4
L2NvbXBvc2l0aW5nL3JlcGFpbnQvc2FtZS1zaXplLWludmFsaWRhdGlvbi1leHBlY3RlZC5wbmcK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uZGRhOTgzMmQ2OTk0YWNhZDIyZTM0ZmU1ZjAwMzAyZDE2YjdmZWY4MgpHSVQg
YmluYXJ5IHBhdGNoCmxpdGVyYWwgMjg2Mwp6Y21lQVNATj8ob2xIeWB1VkJxIWlhMHl+eVV7K3ZZ
VjJhPmkwKlopPWheaGxBJUBXcyRsSGBvazxtfT9vVCF1OUIKenEqUk1FNkxTKyZCZzNSYkdiNCtY
UjVKdDlSTGRsaldEfHB3KVU+K1ZKISVYTFRuOVp9OTc4SlJ5dUd1TF9wcEhnCnppKF9FR3tXazZU
Jjs+YihqOSt8Q0p2bnJnSjt1MTBmI0hKWGVLYGgoNGJxTFEzPEFPdDM9RD1DakUlMmZDZX5pcAp6
RmFNemE/RDJoNWhIdVpDYTROO3JKU3VgVU9oPCFkRysxIXVIJHJKNitXN01+SGltfF5JfSNXZmo8
QVJeSVFXYioKcU1ndzZxQzUrflIoT2ZXXjN4LWNGJFhnUHt5UEMmTjxPaT8/JTs0JGo9ZCNXenAk
UHlpXiVmWmIKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAppbmRleCA4ZGRlZjI1NzlkZTQ0
Y2NlODZkYTc1ZjQ3ZDExNDk0N2E5MjEwMmUyLi44YmZiM2E5YjNlOGUwNGRjNjMwZDdhMDU1NWM4
MWEzMmI5Yzk3NjRmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90
ZXN0X2V4cGVjdGF0aW9ucy50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0v
dGVzdF9leHBlY3RhdGlvbnMudHh0CkBAIC0zOTcwLDMgKzM5NzAsNCBAQCBCVUdEUFJBTktFIE1B
QyBDUFUgOiBtZWRpYS92aWRlby1jb250cm9scy10cmFuc2Zvcm1lZC5odG1sID0gVEVYVAogCiAv
LyBOZWVkcyBiYXNlbGluZXMgZXZlcnl3aGVyZQogQlVHRU5ORSA6IGNvbXBvc2l0aW5nL2ZsYXQt
d2l0aC10cmFuc2Zvcm1lZC1jaGlsZC5odG1sID0gRkFJTAorQlVHRU5ORSA6IGNvbXBvc2l0aW5n
L3JlcGFpbnQvc2FtZS1zaXplLWludmFsaWRhdGlvbi5odG1sID0gRkFJTApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4
IGI1OWNkZjFlMzI3MTIwMzQxYzUyMDcyODljZWE3OWZmNTNmNTM4ZDIuLjUxNTA0NzlmMzQ1NTk0
MTkwMWE3ODdjNDkyNzJjNTBlNmNhYjI4MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAor
MjAxMS0wNC0xOSAgQWRyaWVubmUgV2Fsa2VyICA8ZW5uZUBnb29nbGUuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtjaHJvbWl1bV0gRG9uJ3Qg
dW5uZWNlc3NhcmlseSByZXNpemUgc2tpYS9jZyBjYW52YXNlcyB3aGVuIHBhaW50aW5nIGluIGNv
bXBvc2l0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTU4OTA3CisKKyAgICAgICAgQWRkaXRpb25hbGx5LCBtb3ZlIHRoZSBjb250ZXh0IHNhdmUvcmVz
dG9yZSBsb2dpYyB0byBhIHBsYWNlIHdoZXJlIGl0CisgICAgICAgIHdpbGwgcmVzZXQgdGhlIHRy
YW5zbGF0aW9uIGFkZGVkIGluIExheWVyVGlsZXJDaHJvbWl1bS4KKworICAgICAgICBUZXN0OiBj
b21wb3NpdGluZy9yZXBhaW50L3NhbWUtc2l6ZS1pbnZhbGlkYXRpb24uaHRtbAorCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ29udGVudExheWVyQ2hyb21pdW0uY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6Q29udGVudExheWVyUGFpbnRlcjo6cGFpbnQpOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlBsYXRmb3JtQ2FudmFzOjpyZXNpemUpOgorICAgICAgICAoV2ViQ29yZTo6UGxh
dGZvcm1DYW52YXM6OlBhaW50ZXI6OlBhaW50ZXIpOgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZv
cm1DYW52YXM6OlBhaW50ZXI6On5QYWludGVyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9QbGF0Zm9ybUNhbnZhcy5oOgorCiAyMDExLTA0LTIwICBBZHJpZW5uZSBXYWxr
ZXIgIDxlbm5lQGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSdXNz
ZWxsLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vQ29udGVudExheWVyQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vQ29udGVudExheWVyQ2hyb21pdW0uY3BwCmluZGV4IDk4MjQ0Yjk4MDM1
NjEyYWQ1MGRmOGRmZjI4MjcyYWY3ZWRjMzA5NjMuLjMyODliMzc5MDdhYmQ5MTc5YjczNDRkYWY4
M2I0NzI4MWJmYmFhNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL0NvbnRlbnRMYXllckNocm9taXVtLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Db250ZW50TGF5ZXJDaHJvbWl1bS5jcHAKQEAg
LTc3LDExICs3Nyw5IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBwYWludChHcmFwaGlj
c0NvbnRleHQmIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIGNvbnRlbnRSZWN0KQogICAgIHsKLSAg
ICAgICAgY29udGV4dC5zYXZlKCk7CiAgICAgICAgIGNvbnRleHQuY2xlYXJSZWN0KGNvbnRlbnRS
ZWN0KTsKICAgICAgICAgY29udGV4dC5jbGlwKGNvbnRlbnRSZWN0KTsKICAgICAgICAgbV9vd25l
ci0+cGFpbnRHcmFwaGljc0xheWVyQ29udGVudHMoY29udGV4dCwgY29udGVudFJlY3QpOwotICAg
ICAgICBjb250ZXh0LnJlc3RvcmUoKTsKICAgICB9CiBwcml2YXRlOgogICAgIEdyYXBoaWNzTGF5
ZXJDaHJvbWl1bSogbV9vd25lcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmNwcAppbmRleCBhZmFhNmY3
NzQ1M2IxZTE0NTE4ODg4YzUxNmM0NGFkNDQ4MjYzMTJlLi5jOTZiYTIyNjg4NjE3MTlhNzk5ZTRi
OTcxYjM3OGVlZjFkNWMzOTgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9QbGF0Zm9ybUNhbnZhcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUGxhdGZvcm1DYW52YXMuY3BwCkBAIC01MCw2ICs1
MCw4IEBAIFBsYXRmb3JtQ2FudmFzOjp+UGxhdGZvcm1DYW52YXMoKQogCiB2b2lkIFBsYXRmb3Jt
Q2FudmFzOjpyZXNpemUoY29uc3QgSW50U2l6ZSYgc2l6ZSkKIHsKKyAgICBpZiAobV9zaXplID09
IHNpemUpCisgICAgICAgIHJldHVybjsKICAgICBtX3NpemUgPSBzaXplOwogI2lmIFVTRShTS0lB
KQogICAgIG1fc2tpYUNhbnZhcyA9IHNraWE6OkNyZWF0ZUJpdG1hcENhbnZhcyhzaXplLndpZHRo
KCksIHNpemUuaGVpZ2h0KCksIGZhbHNlKTsKQEAgLTEwNywxMCArMTA5LDEyIEBAIFBsYXRmb3Jt
Q2FudmFzOjpQYWludGVyOjpQYWludGVyKFBsYXRmb3JtQ2FudmFzKiBjYW52YXMsIFBsYXRmb3Jt
Q2FudmFzOjpQYWludGVyCiAgICAgQ0dDb250ZXh0U2NhbGVDVE0obV9jb250ZXh0Q0cuZ2V0KCks
IDEsIC0xKTsKICAgICBtX2NvbnRleHQgPSBhZG9wdFB0cihuZXcgR3JhcGhpY3NDb250ZXh0KG1f
Y29udGV4dENHLmdldCgpKSk7CiAjZW5kaWYKKyAgICBjb250ZXh0KCktPnNhdmUoKTsKIH0KIAog
UGxhdGZvcm1DYW52YXM6OlBhaW50ZXI6On5QYWludGVyKCkKIHsKKyAgICBjb250ZXh0KCktPnJl
c3RvcmUoKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUGxhdGZvcm1DYW52YXMuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1BsYXRmb3JtQ2FudmFzLmgK
aW5kZXggYjAwMmQyNjQxOWNjNDA1NzE1MzJjMmIwMTdkZmY0ZTczMWY3MmFiMC4uODg0Zjg2Nzcw
MWI4YzQ1Nzk2ZjI2NThlZjQyMzdkNGFjNjAwOGE4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUGxhdGZvcm1DYW52YXMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9QbGF0Zm9ybUNhbnZhcy5oCkBA
IC04MSw2ICs4MSw3IEBAIHB1YmxpYzoKICAgICAgICAgZW51bSBUZXh0T3B0aW9uIHsgR3JheXNj
YWxlVGV4dCwgU3VicGl4ZWxUZXh0IH07CiAKICAgICAgICAgUGFpbnRlcihQbGF0Zm9ybUNhbnZh
cyosIFRleHRPcHRpb24pOworICAgICAgICAvLyBEZXN0cnVjdG9yIHJlc3RvcmVzIGNhbnZhcyB0
byBwcmUtY29uc3RydWN0aW9uIHN0YXRlLgogICAgICAgICB+UGFpbnRlcigpOwogCiAgICAgICAg
IEdyYXBoaWNzQ29udGV4dCogY29udGV4dCgpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4dC5nZXQo
KTsgfQo=
</data>
<flag name="review"
          id="84172"
          type_id="1"
          status="+"
          setter="jamesr"
    />
    <flag name="commit-queue"
          id="84423"
          type_id="3"
          status="-"
          setter="jamesr"
    />
          </attachment>
      

    </bug>

</bugzilla>