<?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>82990</bug_id>
          
          <creation_ts>2012-04-02 18:00:56 -0700</creation_ts>
          <short_desc>REGRESSION (r111456): overflow-scrolling and css clip break with compositing</short_desc>
          <delta_ts>2012-04-11 11:20:47 -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>InRadar</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="Adrienne Walker">enne</assigned_to>
          <cc>bweinstein</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>594099</commentid>
    <comment_count>0</comment_count>
      <attachid>135248</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-02 18:00:56 -0700</bug_when>
    <thetext>Created attachment 135248
Testcase

The testcase I&apos;ll attach shows a bug that started to happen in r111456. The testcase is setting CSS clip in response to a scroll event, and no longer works after that revision.

&lt;rdar://problem/11162020&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>597559</commentid>
    <comment_count>1</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-04-06 12:29:54 -0700</bug_when>
    <thetext>Not knowing anything about style differences, I wonder if setting the clip style should really force layout and not just a repaint.

I suspect previously the render layer was just incorrectly not being considered clipped and considering more layers for clipping has unearthed this bug.

Sorry for not looking at this sooner, smfr.  I&apos;ve pretty busy, and it&apos;s hard to tell how urgent something is to fix when I can&apos;t see rdar links.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>598600</commentid>
    <comment_count>2</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-04-09 14:01:42 -0700</bug_when>
    <thetext>Ok, I see what the problem is.

Along with considering overflow clip from non-compositing render layers, r111456 also started considering clip.  This test case worked before this patch, because the layer wasn&apos;t clipped at all.

In this test case, a scroll handler updates the clip.  When scrolling occurs, the render layer tree is updated (with the old clip) via updateCompositingLayersAfterScroll, and then the style is changed.  Changing the clipping style doesn&apos;t cause layout (just StyleDifferenceRepaint).  This won&apos;t cause updateLayerPositions() to be called, so the composited layer bounds will not be updated, and the incorrect clip from the previous update will be used.

This could be fixed by:
(1) Change the approach in r111456 to walk the render layer tree and only consider overflow, rather than using cached clip rects.  It seems like a bonus to have a smaller backing, but maybe this isn&apos;t intentional.

(2) Having a change in clipping style somehow triggering a call updateLayerPositions.  I&apos;m not totally sure the best way to go about this, but it&apos;s also a possibility.  Making a change in clip style cause StyleDifferenceLayout does the right thing for this test case, but that seems too heavy handed.

Thoughts?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599860</commentid>
    <comment_count>3</comment_count>
      <attachid>136588</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-04-10 17:52:41 -0700</bug_when>
    <thetext>Created attachment 136588
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599893</commentid>
    <comment_count>4</comment_count>
      <attachid>136588</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-10 18:21:29 -0700</bug_when>
    <thetext>Comment on attachment 136588
Patch

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

&gt; Source/WebCore/rendering/RenderLayer.cpp:4718
&gt; +        compositor()-&gt;setCompositingLayersNeedRebuild();

Does this end up doing just a geometry update, or does it do a full hierarchy update?

&gt; LayoutTests/compositing/clip-change.html:35
&gt; +      if (window.layoutTestController)
&gt; +        layoutTestController.display();
&gt; +      // The change in clip style should be reflected immediately in the size
&gt; +      // of the composited clipper layer. After changing the clip, it should
&gt; +      // entirely cover the indicator.
&gt; +      var clipper = document.getElementById(&quot;clipper&quot;);
&gt; +      clipper.style.clip = &quot;rect(0px, 100px, 100px, 0px)&quot;;
&gt; +    }

I think that tests that call display() to get layers to be updated don&apos;t always work correctly in Safari (which we should fix).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599921</commentid>
    <comment_count>5</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-04-10 18:50:42 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 136588 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=136588&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/RenderLayer.cpp:4718
&gt; &gt; +        compositor()-&gt;setCompositingLayersNeedRebuild();
&gt; 
&gt; Does this end up doing just a geometry update, or does it do a full hierarchy update?

It does a full hierarchy update.  RLB::updateGraphicsLayerGeometry() doesn&apos;t call RL::calculateLayerBounds and just uses the existing cached bounds.

&gt; &gt; LayoutTests/compositing/clip-change.html:35
&gt; &gt; +      if (window.layoutTestController)
&gt; &gt; +        layoutTestController.display();
&gt; &gt; +      // The change in clip style should be reflected immediately in the size
&gt; &gt; +      // of the composited clipper layer. After changing the clip, it should
&gt; &gt; +      // entirely cover the indicator.
&gt; &gt; +      var clipper = document.getElementById(&quot;clipper&quot;);
&gt; &gt; +      clipper.style.clip = &quot;rect(0px, 100px, 100px, 0px)&quot;;
&gt; &gt; +    }
&gt; 
&gt; I think that tests that call display() to get layers to be updated don&apos;t always work correctly in Safari (which we should fix).

Oh, I didn&apos;t know that.  Are there more details about when display() is known to fail or known to succeed in Safari? :(

I&apos;ll check to see how this works in Safari so that I don&apos;t check in a failing test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600377</commentid>
    <comment_count>6</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-04-11 10:33:34 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; &gt;
&gt; &gt; I think that tests that call display() to get layers to be updated don&apos;t always work correctly in Safari (which we should fix).
&gt; 
&gt; Oh, I didn&apos;t know that.  Are there more details about when display() is known to fail or known to succeed in Safari? :(
&gt; 
&gt; I&apos;ll check to see how this works in Safari so that I don&apos;t check in a failing test.

On the upside, this test doesn&apos;t fail.  On the downside, it didn&apos;t fail before this change either.

smfr: Do you want me to make this test fail on Safari as well, or just check in this patch as-is, knowing that it will start working as intended once that bug is fixed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600379</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-11 10:34:55 -0700</bug_when>
    <thetext>Go ahead with the current patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600442</commentid>
    <comment_count>8</comment_count>
      <attachid>136588</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-11 11:20:42 -0700</bug_when>
    <thetext>Comment on attachment 136588
Patch

Clearing flags on attachment: 136588

Committed r113883: &lt;http://trac.webkit.org/changeset/113883&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600443</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-11 11:20:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>135248</attachid>
            <date>2012-04-02 18:00:56 -0700</date>
            <delta_ts>2012-04-02 18:00:56 -0700</delta_ts>
            <desc>Testcase</desc>
            <filename>Reduction2.html</filename>
            <type>text/html</type>
            <size>1684</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICAgIDxzY3JpcHQ+CiAgICAgICAgZnVuY3Rp
b24gdXBkYXRlQ2xpcCgpCiAgICAgICAgewogICAgICAgICAgICB2YXIgZmFkZVRvcCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJmYWRlLXRvcCIpOwogICAgICAgICAgICB2YXIgYm94VG9wID0g
ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnBhZ2UiKVswXS5nZXRCb3VuZGluZ0NsaWVudFJl
Y3QoKS50b3A7CiAgICAgICAgICAgIGZhZGVUb3Auc3R5bGUuY2xpcCA9ICJyZWN0KCIgKyBib3hU
b3AgKyAicHgsICIgKyBmYWRlVG9wLmNsaWVudFdpZHRoICsgInB4LCAiKyBmYWRlVG9wLmNsaWVu
dEhlaWdodCArICJweCwgMCkiOwogICAgICAgIH0KICAgIDwvc2NyaXB0PgogICAgPHN0eWxlPgog
ICAgICAgIGJvZHkgewogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KCiAg
ICAgICAgI2ZhZGUtdG9wIHsKICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAg
ICAgICB0b3A6IDA7CiAgICAgICAgICAgIGhlaWdodDogMzZweDsKICAgICAgICAgICAgd2lkdGg6
IDgwMHB4OwogICAgICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICAgICAgYmFja2dyb3VuZC1z
aXplOiA4MDBweCAzNnB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7CiAgICAg
ICAgfQogICAgICAgIAogICAgICAgIC5wYWdlIHsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29s
aWQgYmxhY2s7CiAgICAgICAgICAgIGhlaWdodDogMjAwMHB4OwogICAgICAgICAgICBtYXJnaW46
IDEwcHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgICNhcnRpY2xlIHsKICAgICAgICAgICAg
cG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgICB0b3A6IDIwcHg7CiAgICAgICAgICAgIGhl
aWdodDogODAwcHg7CiAgICAgICAgICAgIHdpZHRoOiA4MDBweDsKICAgICAgICAgICAgcGFkZGlu
Zy10b3A6IDUwcHg7CiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDsKICAgICAgICAgICAg
b3ZlcmZsb3c6IHNjcm9sbDsKICAgICAgICAgICAgei1pbmRleDogMDsKICAgICAgICAgICAgLXdl
YmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7CiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNv
bGlkIGJsdWU7CiAgICAgICAgfQogICAgPC9zdHlsZT4KPC9oZWFkPgo8Ym9keT4KICAgIDxkaXYg
aWQ9ImZhZGUtdG9wIj48L2Rpdj4KICAgIDxkaXYgaWQ9ImNlbnRlcmVkIj4KICAgICAgICA8ZGl2
IGlkPSJhcnRpY2xlIiBvbnNjcm9sbD0idXBkYXRlQ2xpcCgpOyIgdGFiaW5kZXg9IjAiPgogICAg
ICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlIj4KICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAg
ICAgICA8bGk+Q2xpY2sgaGVyZTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+aGl0IFBhZ2UgRG93
bjwvbGk+CiAgICAgICAgICAgICAgICA8bGk+aGl0IFBhZ2UgVXA8L2xpPgogICAgICAgICAgICAg
ICAgPGxpPmhpdCBQYWdlIERvd248L2xpPgogICAgICAgICAgICAgICAgPHA+Tm93IHlvdSBzaG91
bGQgc2VlIHRoZSByZWQgYm94IGF0IHRoZSB0b3AsIGJ1dCBpdCdzIG1pc3NpbmcuIEZvcmNpbmcg
bGF5b3V0IGJyaW5ncyBpdCBiYWNrLjwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9k
aXY+CiAgICA8L2Rpdj4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136588</attachid>
            <date>2012-04-10 17:52:41 -0700</date>
            <delta_ts>2012-04-11 11:20:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82990-20120410175240.patch</filename>
            <type>text/plain</type>
            <size>4869</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzNjI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTFlMTI1NjE2NGQ1ZTZk
Zjc1ZTM2M2RlMGM5NjEyOWNlZGEwNzcwYi4uZTEwYzlkMDU0Zjg1NTQ5YTYzZTViZWQ4MWNlMzkz
MGEzZWMxMTE1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTA0LTEwICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgRml4IHJlZ3Jlc3Npb24g
d2hlcmUgYSBjbGlwIHN0eWxlIGNoYW5nZSBkaWQgbm90IHVwZGF0ZSBsYXllciBzaXplcworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI5OTAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZnRlciByMTExNDU2
LCB0aGUgc2l6ZSBvZiBjb21wb3NpdGVkIGxheWVycyBhbHNvIHVzZWQgY2xpcCwgd2hlcmVhcwor
ICAgICAgICBpdCBwcmV2aW91c2x5IGhhZCBvbmx5IHVzZWQgb3ZlcmZsb3cuIEJlY2F1c2Ugb2Yg
dGhpcywgd2hlbiBjbGlwCisgICAgICAgIGNoYW5nZXMgb24gYSByZW5kZXIgbGF5ZXIsIGl0IG5l
ZWRzIHRvIHJlY2FsY3VsYXRlIGl0cyBsYXllciB0cmVlLgorCisgICAgICAgIFRlc3Q6IGNvbXBv
c2l0aW5nL2NsaXAtY2hhbmdlLmh0bWwKKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXll
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6c3R5bGVDaGFuZ2VkKToKKwog
MjAxMi0wNC0wOSAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAg
ICAgICBGcmFtZURhdGEgY29uc3RydWN0b3IgemVyb2VzIGFsbCBmaWVsZHMsIGNhdXNpbmcgSW1h
Z2VPcmllbnRhdGlvbiB0byBiZSAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
LmNwcAppbmRleCA4NzMwODVjN2RmMGU0NDllN2JlM2UwMGJiNjFhZTE1ZDUwODhmZTZkLi5mNWI2
OTQ0ZjNlNWJkOWI0Y2U3OTliMDkyYmRlOTQxNTA4NGFiNzIxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTQ3MTQsNiArNDcxNCw4IEBAIHZvaWQgUmVuZGVy
TGF5ZXI6OnN0eWxlQ2hhbmdlZChTdHlsZURpZmZlcmVuY2UsIGNvbnN0IFJlbmRlclN0eWxlKiBv
bGRTdHlsZSkKIAogICAgIGlmIChjb21wb3NpdG9yKCktPnVwZGF0ZUxheWVyQ29tcG9zaXRpbmdT
dGF0ZSh0aGlzKSkKICAgICAgICAgY29tcG9zaXRvcigpLT5zZXRDb21wb3NpdGluZ0xheWVyc05l
ZWRSZWJ1aWxkKCk7CisgICAgZWxzZSBpZiAob2xkU3R5bGUgJiYgKG9sZFN0eWxlLT5jbGlwKCkg
IT0gcmVuZGVyZXIoKS0+c3R5bGUoKS0+Y2xpcCgpIHx8IG9sZFN0eWxlLT5oYXNDbGlwKCkgIT0g
cmVuZGVyZXIoKS0+c3R5bGUoKS0+aGFzQ2xpcCgpKSkKKyAgICAgICAgY29tcG9zaXRvcigpLT5z
ZXRDb21wb3NpdGluZ0xheWVyc05lZWRSZWJ1aWxkKCk7CiAgICAgZWxzZSBpZiAobV9iYWNraW5n
KQogICAgICAgICBtX2JhY2tpbmctPnVwZGF0ZUdyYXBoaWNzTGF5ZXJHZW9tZXRyeSgpOwogICAg
IGVsc2UgaWYgKG9sZFN0eWxlICYmIG9sZFN0eWxlLT5vdmVyZmxvd1goKSAhPSByZW5kZXJlcigp
LT5zdHlsZSgpLT5vdmVyZmxvd1goKSkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDg1OTAxZTUyZjZkNDVlMDI5MzEzOWM5
M2Y2NzY4YzhmOGNjNGRkMmMuLmYxYzY5MmUwYmJkMDhkNTM1ZmY0MGYzYWNmNmUzYWMyZmNkNzgz
OWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0wNC0xMCAgQWRyaWVubmUgV2Fsa2VyICA8
ZW5uZUBnb29nbGUuY29tPgorCisgICAgICAgIEZpeCByZWdyZXNzaW9uIHdoZXJlIGEgY2xpcCBz
dHlsZSBjaGFuZ2UgZGlkIG5vdCB1cGRhdGUgbGF5ZXIgc2l6ZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyOTkwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBjb21wb3NpdGluZy9jbGlwLWNoYW5nZS1l
eHBlY3RlZC5wbmc6IEFkZGVkLgorICAgICAgICAqIGNvbXBvc2l0aW5nL2NsaXAtY2hhbmdlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvY2xpcC1jaGFuZ2UuaHRt
bDogQWRkZWQuCisKIDIwMTItMDQtMDkgIEphbWVzIFNpbW9uc2VuICA8c2ltb25qYW1AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1bV0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jbGlwLWNoYW5nZS1leHBlY3RlZC5wbmcg
Yi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jbGlwLWNoYW5nZS1leHBlY3RlZC5wbmcKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uZTdhMDA0MTRkM2RiY2RkODEwMjg1NGEyMTgwMmJlMGVmNzdiOGE0NQpHSVQgYmluYXJ5
IHBhdGNoCmxpdGVyYWwgMjg1Mwp6Y21lQVNATj8ob2xIeWB1VkJxIWlhMHl+eVV7K3ZZVjJhPmkw
KlopPWheaGxBJUBXcyRsSGBvazxtfT9vVG4yTTwKejNrdzZ8bHIpMXgzblA9JTZwSipZV2I+ND9M
PDkzPVEhQCk9cXR1TX5kKUZ7OWFCY1Q9YVNXLUxeWStGOyZJU2hvCno3UlUyUE9oMjJsJUphNGRp
NXwzPjllS1I9IT07JGIpbDNXQDdAeG1tV01IVVEtb1VfKyNLZ15AcGY8YEZRaH41Nwp6RSR1clNM
cXEoPjFWKUE8RU1nMX1LQko3JEtwMEk0cXEkJS03bVZoRChPZldeM3gtbElrYyhGNFQ2cy0yYDde
TkgKTyVpIXRpPWQjV3pwJFAha1FhNEB6CgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jbGlwLWNoYW5nZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9jb21wb3NpdGluZy9jbGlwLWNoYW5nZS1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOGIxMzc4OTE3OTFmZTk2OTI3YWQ3OGU2NGIwYWFkN2JkZWQwOGJkYwotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2NsaXAtY2hhbmdlLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxIEBACisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2NsaXAt
Y2hhbmdlLmh0bWwgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jbGlwLWNoYW5nZS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjFkN2FkNzBiOTBmYzE1NjNiZWFiNDQ4ZjdjNDFjMjBjMWI0NmM1ODEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9jbGlwLWNoYW5nZS5odG1sCkBA
IC0wLDAgKzEsNDMgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgPHN0eWxl
PgorICAgICNpbmRpY2F0b3IgeworICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgdG9w
OiAwcHg7CisgICAgICBsZWZ0OiAwcHg7CisgICAgICBoZWlnaHQ6IDEwMHB4OworICAgICAgd2lk
dGg6IDEwMHB4OworICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkOworICAgIH0KKyAgICAjY2xp
cHBlciB7CisgICAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVaKDApOworICAgICAgcG9z
aXRpb246IGFic29sdXRlOworICAgICAgdG9wOiAwcHg7CisgICAgICBsZWZ0OiAwcHg7CisgICAg
ICBoZWlnaHQ6IDEwMHB4OworICAgICAgd2lkdGg6IDEwMHB4OworICAgICAgYmFja2dyb3VuZC1j
b2xvcjogZ3JlZW47CisgICAgICBjbGlwOiByZWN0KDI1cHgsIDc1cHgsIDc1cHgsIDI1cHgpOwor
ICAgIH0KKyAgPC9zdHlsZT4KKyAgPHNjcmlwdD4KKyAgICBpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKQorICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCh0cnVlKTsK
KyAgICBmdW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKQorICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kaXNwbGF5KCk7CisgICAgICAv
LyBUaGUgY2hhbmdlIGluIGNsaXAgc3R5bGUgc2hvdWxkIGJlIHJlZmxlY3RlZCBpbW1lZGlhdGVs
eSBpbiB0aGUgc2l6ZQorICAgICAgLy8gb2YgdGhlIGNvbXBvc2l0ZWQgY2xpcHBlciBsYXllci4g
QWZ0ZXIgY2hhbmdpbmcgdGhlIGNsaXAsIGl0IHNob3VsZAorICAgICAgLy8gZW50aXJlbHkgY292
ZXIgdGhlIGluZGljYXRvci4KKyAgICAgIHZhciBjbGlwcGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImNsaXBwZXIiKTsKKyAgICAgIGNsaXBwZXIuc3R5bGUuY2xpcCA9ICJyZWN0KDBweCwg
MTAwcHgsIDEwMHB4LCAwcHgpIjsKKyAgICB9CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIo
ImxvYWQiLCBkb1Rlc3QsIGZhbHNlKTsKKyAgPC9zY3JpcHQ+Cis8L2hlYWQ+CisgIDxib2R5Pgor
ICAgIDxkaXYgaWQ9ImluZGljYXRvciI+PC9kaXY+CisgICAgPGRpdiBpZD0iY2xpcHBlciI+PC9k
aXY+CisgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>