<?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>127722</bug_id>
          
          <creation_ts>2014-01-27 16:11:20 -0800</creation_ts>
          <short_desc>REGRESSION(r162837): 5% regression on html5-full-render and 3% regression in DoYouEvenBench</short_desc>
          <delta_ts>2014-04-19 23:08:18 -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, Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kangil.han</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>972646</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-01-27 16:11:20 -0800</bug_when>
    <thetext>See https://perf.webkit.org/#mode=charts&amp;chartList=%5B%5B%22mac-mountainlion%22%2C%22DoYouEvenBench%2FFull%3ATime%3ATotal%22%5D%5D

We have 3% regression there.  The regression range is http://trac.webkit.org/log/?rev=162838&amp;stop_rev=162835&amp;verbose=on
and
r162835 is specific to GTK+
r162836 is TextTrack cleanup but DoYouEvenBench doesn&apos;t use media elements as far as I know
r162838 is just a TestExpectations update.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972647</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-01-27 16:12:07 -0800</bug_when>
    <thetext>&lt;rdar://problem/15920243&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972648</commentid>
    <comment_count>2</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2014-01-27 16:12:56 -0800</bug_when>
    <thetext>We also seem to have 5-6% regression on html5-full-render as well:
https://perf.webkit.org/#mode=charts&amp;chartList=%5B%5B%22mac-mountainlion%22%2C%22Parser%2Fhtml5-full-render%3ATime%22%5D%5D</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972650</commentid>
    <comment_count>3</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-01-27 16:15:17 -0800</bug_when>
    <thetext>We may need to keep some of the paint throttling logic for WK1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>972660</commentid>
    <comment_count>4</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2014-01-27 16:27:44 -0800</bug_when>
    <thetext>This is likely just WK1. We don&apos;t need to keep throttling logic (it was never enabled in Mac anyway), but we may need to do some repaint rect unioning so we don&apos;t call to NSView land that much.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973003</commentid>
    <comment_count>5</comment_count>
      <attachid>222466</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2014-01-28 10:57:02 -0800</bug_when>
    <thetext>Created attachment 222466
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973004</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-28 10:57:51 -0800</bug_when>
    <thetext>Attachment 222466 did not pass style-queue:


ERROR: Source/WebCore/rendering/RenderView.cpp:1269:  Should be indented on a separate line, with the colon or comma first on that line.  [whitespace/indent] [4]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973009</commentid>
    <comment_count>7</comment_count>
      <attachid>222466</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-01-28 11:19:10 -0800</bug_when>
    <thetext>Comment on attachment 222466
patch

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

&gt; Source/WebCore/dom/Document.cpp:4317
&gt;  Document* Document::topDocument() const
&gt;  {
&gt; -    // FIXME: Why does this walk up owner elements instead using the frame tree as parentDocument does?
&gt; -    // The frame tree even has a top() function.
&gt; -    Document* document = const_cast&lt;Document*&gt;(this);
&gt; -    while (Element* element = document-&gt;ownerElement())
&gt; -        document = &amp;element-&gt;document();
&gt; -    return document;
&gt; +    return m_frame ? m_frame-&gt;mainFrame().document() : const_cast&lt;Document*&gt;(this);
&gt;  }

How is this change related to the rest of the patch? Does something depend on it?

Looks like this never returns null, so it should be changed to return a reference.

&gt; Source/WebCore/rendering/RenderView.h:238
&gt; +    class RepaintRegionAccumulator {

This has no members that are not copyable; we should probably mark it non-copyable explicitly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973014</commentid>
    <comment_count>8</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2014-01-28 11:28:22 -0800</bug_when>
    <thetext>&gt; How is this change related to the rest of the patch? Does something depend on it?

Not really except that I call it and noticed it was silly.

&gt; Looks like this never returns null, so it should be changed to return a reference.

Yeah, later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973019</commentid>
    <comment_count>9</comment_count>
      <attachid>222466</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-01-28 11:32:55 -0800</bug_when>
    <thetext>Comment on attachment 222466
patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Accumulate repaint region in RendeView instead of flushing rects directly to the system.

RenderView

&gt; Source/WebCore/rendering/RenderView.h:240
&gt; +        RepaintRegionAccumulator(RenderView*);

explicit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973021</commentid>
    <comment_count>10</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2014-01-28 11:36:11 -0800</bug_when>
    <thetext>https://trac.webkit.org/r162947</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973043</commentid>
    <comment_count>11</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-01-28 12:56:58 -0800</bug_when>
    <thetext>This change broke multiple repaint tests: &lt;http://trac.webkit.org/changeset/162947&gt;.

For a patch like this, waiting for EWS would have been very useful.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>973165</commentid>
    <comment_count>12</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-01-28 15:38:09 -0800</bug_when>
    <thetext>This caused timeouts on two flexbox tests, filed bug 127809.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002349</commentid>
    <comment_count>13</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2014-04-19 23:08:18 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; This caused timeouts on two flexbox tests, filed bug 127809.

This also caused Bug 129104.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222466</attachid>
            <date>2014-01-28 10:57:02 -0800</date>
            <delta_ts>2014-01-28 11:32:54 -0800</delta_ts>
            <desc>patch</desc>
            <filename>renderview-repaint-region-3.patch</filename>
            <type>text/plain</type>
            <size>8965</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2MjkzMSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDE0LTAxLTI4ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBSRUdSRVNTSU9OKHIxNjI4Mzcp
OiA1JSByZWdyZXNzaW9uIG9uIGh0bWw1LWZ1bGwtcmVuZGVyIGFuZCAzJSByZWdyZXNzaW9uIGlu
IERvWW91RXZlbkJlbmNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMjc3MjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBY2N1bXVsYXRlIHJlcGFpbnQgcmVnaW9uIGluIFJlbmRlVmlldyBpbnN0ZWFkIG9m
IGZsdXNoaW5nIHJlY3RzIGRpcmVjdGx5IHRvIHRoZSBzeXN0ZW0uCisKKyAgICAgICAgKiBkb20v
RG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnJlY2FsY1N0eWxlKToK
KyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojp1cGRhdGVMYXlvdXQpOgorICAgICAgICAoV2Vi
Q29yZTo6RG9jdW1lbnQ6OnRvcERvY3VtZW50KToKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OmxheW91dCk6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlclZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVmlldzo6cmVw
YWludFZpZXdSZWN0YW5nbGUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVmlldzo6Zmx1c2hB
Y2N1bXVsYXRlZFJlcGFpbnRSZWdpb24pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVmlldzo6
UmVwYWludFJlZ2lvbkFjY3VtdWxhdG9yOjpSZXBhaW50UmVnaW9uQWNjdW11bGF0b3IpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVmlldzo6UmVwYWludFJlZ2lvbkFjY3VtdWxhdG9yOjp+UmVw
YWludFJlZ2lvbkFjY3VtdWxhdG9yKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVmlldy5o
OgorCiAyMDE0LTAxLTI4ICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAg
PGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEyNzc2Nz4gRGlzYWJsZSBzb21lIGRlcHJlY2F0aW9uIHdh
cm5pbmdzIHRvIGZpeCB0aGUgYnVpbGQuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHJl
dmlzaW9uIDE2MjkzMSkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTE3MjAsNiArMTcyMCw4IEBAIHZvaWQgRG9jdW1lbnQ6OnJlY2FsY1N0eWxl
KFN0eWxlOjpDaGFuZ2UKICAgICBpZiAobV9pblN0eWxlUmVjYWxjKQogICAgICAgICByZXR1cm47
IC8vIEd1YXJkIGFnYWluc3QgcmUtZW50cmFuY3kuIC1kd2gKIAorICAgIFJlbmRlclZpZXc6OlJl
cGFpbnRSZWdpb25BY2N1bXVsYXRvciByZXBhaW50UmVnaW9uQWNjdW11bGF0b3IocmVuZGVyVmll
dygpKTsKKwogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgdXBkYXRlIHN0eWxlIG9uIG91ciBhbmNl
c3RvciBjaGFpbiBiZWZvcmUgcHJvY2VlZGluZyAoZXNwZWNpYWxseSBmb3Igc2VhbWxlc3MpLAog
ICAgIC8vIGhvd2V2ZXIgZG9pbmcgc28gY3VycmVudGx5IGNhdXNlcyBzZXZlcmFsIHRlc3RzIHRv
IGNyYXNoLCBhcyBGcmFtZTo6c2V0RG9jdW1lbnQgY2FsbHMgRG9jdW1lbnQ6OmF0dGFjaAogICAg
IC8vIGJlZm9yZSBzZXR0aW5nIHRoZSBET01XaW5kb3cgb24gdGhlIEZyYW1lLCBvciB0aGUgU2Vj
dXJpdHlPcmlnaW4gb24gdGhlIGRvY3VtZW50LiBUaGUgYXR0YWNoLCBpbiB0dXJuCkBAIC0xODEx
LDYgKzE4MTMsOCBAQCB2b2lkIERvY3VtZW50Ojp1cGRhdGVMYXlvdXQoKQogICAgICAgICByZXR1
cm47CiAgICAgfQogCisgICAgUmVuZGVyVmlldzo6UmVwYWludFJlZ2lvbkFjY3VtdWxhdG9yIHJl
cGFpbnRSZWdpb25BY2N1bXVsYXRvcihyZW5kZXJWaWV3KCkpOworCiAgICAgaWYgKEVsZW1lbnQq
IG9lID0gb3duZXJFbGVtZW50KCkpCiAgICAgICAgIG9lLT5kb2N1bWVudCgpLnVwZGF0ZUxheW91
dCgpOwogCkBAIC00MzA5LDEyICs0MzEzLDcgQEAgRG9jdW1lbnQqIERvY3VtZW50OjpwYXJlbnRE
b2N1bWVudCgpIGNvbgogCiBEb2N1bWVudCogRG9jdW1lbnQ6OnRvcERvY3VtZW50KCkgY29uc3QK
IHsKLSAgICAvLyBGSVhNRTogV2h5IGRvZXMgdGhpcyB3YWxrIHVwIG93bmVyIGVsZW1lbnRzIGlu
c3RlYWQgdXNpbmcgdGhlIGZyYW1lIHRyZWUgYXMgcGFyZW50RG9jdW1lbnQgZG9lcz8KLSAgICAv
LyBUaGUgZnJhbWUgdHJlZSBldmVuIGhhcyBhIHRvcCgpIGZ1bmN0aW9uLgotICAgIERvY3VtZW50
KiBkb2N1bWVudCA9IGNvbnN0X2Nhc3Q8RG9jdW1lbnQqPih0aGlzKTsKLSAgICB3aGlsZSAoRWxl
bWVudCogZWxlbWVudCA9IGRvY3VtZW50LT5vd25lckVsZW1lbnQoKSkKLSAgICAgICAgZG9jdW1l
bnQgPSAmZWxlbWVudC0+ZG9jdW1lbnQoKTsKLSAgICByZXR1cm4gZG9jdW1lbnQ7CisgICAgcmV0
dXJuIG1fZnJhbWUgPyBtX2ZyYW1lLT5tYWluRnJhbWUoKS5kb2N1bWVudCgpIDogY29uc3RfY2Fz
dDxEb2N1bWVudCo+KHRoaXMpOwogfQogCiBQYXNzUmVmUHRyPEF0dHI+IERvY3VtZW50OjpjcmVh
dGVBdHRyaWJ1dGUoY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNlcHRpb25Db2RlJiBlYykKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAJKHJldmlzaW9uIDE2MjkzMSkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTI3Niw2ICsxMjc2
LDcgQEAgdm9pZCBGcmFtZVZpZXc6OmxheW91dChib29sIGFsbG93U3VidHJlZQogICAgICAgICAg
ICAgcm9vdC0+dmlldygpLnB1c2hMYXlvdXRTdGF0ZSgqcm9vdCk7CiAgICAgICAgIH0KICAgICAg
ICAgTGF5b3V0U3RhdGVEaXNhYmxlciBsYXlvdXRTdGF0ZURpc2FibGVyKGRpc2FibGVMYXlvdXRT
dGF0ZSA/ICZyb290LT52aWV3KCkgOiAwKTsKKyAgICAgICAgUmVuZGVyVmlldzo6UmVwYWludFJl
Z2lvbkFjY3VtdWxhdG9yIHJlcGFpbnRSZWdpb25BY2N1bXVsYXRvcigmcm9vdC0+dmlldygpKTsK
IAogICAgICAgICBBU1NFUlQobV9sYXlvdXRQaGFzZSA9PSBJblByZUxheW91dCk7CiAgICAgICAg
IG1fbGF5b3V0UGhhc2UgPSBJbkxheW91dDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVmlldy5jcHAJKHJldmlzaW9uIDE2MjkzMSkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjA1LDMzICs2MDUsNDUgQEAg
dm9pZCBSZW5kZXJWaWV3OjpyZXBhaW50Um9vdENvbnRlbnRzKCkKICAgICByZXBhaW50KCk7CiB9
CiAKLXZvaWQgUmVuZGVyVmlldzo6cmVwYWludFZpZXdSZWN0YW5nbGUoY29uc3QgTGF5b3V0UmVj
dCYgdXIsIGJvb2wgaW1tZWRpYXRlKSBjb25zdAordm9pZCBSZW5kZXJWaWV3OjpyZXBhaW50Vmll
d1JlY3RhbmdsZShjb25zdCBMYXlvdXRSZWN0JiByZXBhaW50UmVjdCwgYm9vbCBpbW1lZGlhdGUp
IGNvbnN0CiB7Ci0gICAgaWYgKCFzaG91bGRSZXBhaW50KHVyKSkKKyAgICAvLyBGSVhNRTogR2V0
IHJpZCBvZiB0aGUgJ2ltbWVkaWF0ZScgYXJndW1lbnQuIEl0IG9ubHkgd29ya3Mgb24gTWFjIFdL
MSBhbmQgc2hvdWxkIG5ldmVyIGJlIHVzZWQuCisgICAgaWYgKCFzaG91bGRSZXBhaW50KHJlcGFp
bnRSZWN0KSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgLy8gV2UgYWx3YXlzIGp1c3QgaW52YWxp
ZGF0ZSB0aGUgcm9vdCB2aWV3LCBzaW5jZSB3ZSBjb3VsZCBiZSBhbiBpZnJhbWUgdGhhdCBpcyBj
bGlwcGVkIG91dAotICAgIC8vIG9yIGV2ZW4gaW52aXNpYmxlLgotICAgIEVsZW1lbnQqIGVsdCA9
IGRvY3VtZW50KCkub3duZXJFbGVtZW50KCk7Ci0gICAgaWYgKCFlbHQpCi0gICAgICAgIGZyYW1l
VmlldygpLnJlcGFpbnRDb250ZW50UmVjdGFuZ2xlKHBpeGVsU25hcHBlZEludFJlY3QodXIpLCBp
bW1lZGlhdGUpOwotICAgIGVsc2UgaWYgKFJlbmRlckJveCogb2JqID0gZWx0LT5yZW5kZXJCb3go
KSkgewotICAgICAgICBMYXlvdXRSZWN0IHZyID0gdmlld1JlY3QoKTsKKyAgICBpZiAoYXV0byBv
d25lckVsZW1lbnQgPSBkb2N1bWVudCgpLm93bmVyRWxlbWVudCgpKSB7CisgICAgICAgIGlmICgh
b3duZXJFbGVtZW50LT5yZW5kZXJlcigpKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBh
dXRvJiBvd25lckJveCA9IHRvUmVuZGVyQm94KCpvd25lckVsZW1lbnQtPnJlbmRlcmVyKCkpOwor
ICAgICAgICBMYXlvdXRSZWN0IHZpZXdSZWN0ID0gdGhpcy0+dmlld1JlY3QoKTsKICNpZiBQTEFU
Rk9STShJT1MpCiAgICAgICAgIC8vIERvbid0IGNsaXAgdXNpbmcgdGhlIHZpc2libGUgcmVjdCBz
aW5jZSBjbGlwcGluZyBpcyBoYW5kbGVkIGF0IGEgaGlnaGVyIGxldmVsIG9uIGlQaG9uZS4KLSAg
ICAgICAgTGF5b3V0UmVjdCByID0gdXI7CisgICAgICAgIExheW91dFJlY3QgYWRqdXN0ZWRSZWN0
ID0gcmVwYWludFJlY3Q7CiAjZWxzZQotICAgICAgICBMYXlvdXRSZWN0IHIgPSBpbnRlcnNlY3Rp
b24odXIsIHZyKTsKKyAgICAgICAgTGF5b3V0UmVjdCBhZGp1c3RlZFJlY3QgPSBpbnRlcnNlY3Rp
b24ocmVwYWludFJlY3QsIHZpZXdSZWN0KTsKICNlbmRpZgotICAgICAgICAKLSAgICAgICAgLy8g
U3VidHJhY3Qgb3V0IHRoZSBjb250ZW50c1ggYW5kIGNvbnRlbnRzWSBvZmZzZXRzIHRvIGdldCBv
dXIgY29vcmRzIHdpdGhpbiB0aGUgdmlld2luZwotICAgICAgICAvLyByZWN0YW5nbGUuCi0gICAg
ICAgIHIubW92ZUJ5KC12ci5sb2NhdGlvbigpKTsKLQotICAgICAgICAvLyBGSVhNRTogSGFyZGNv
ZGVkIG9mZnNldHMgaGVyZSBhcmUgbm90IGdvb2QuCi0gICAgICAgIHIubW92ZUJ5KG9iai0+Y29u
dGVudEJveFJlY3QoKS5sb2NhdGlvbigpKTsKLSAgICAgICAgb2JqLT5yZXBhaW50UmVjdGFuZ2xl
KHIsIGltbWVkaWF0ZSk7CisgICAgICAgIGFkanVzdGVkUmVjdC5tb3ZlQnkoLXZpZXdSZWN0Lmxv
Y2F0aW9uKCkpOworICAgICAgICBhZGp1c3RlZFJlY3QubW92ZUJ5KG93bmVyQm94LmNvbnRlbnRC
b3hSZWN0KCkubG9jYXRpb24oKSk7CisgICAgICAgIG93bmVyQm94LnJlcGFpbnRSZWN0YW5nbGUo
YWRqdXN0ZWRSZWN0LCBpbW1lZGlhdGUpOworICAgICAgICByZXR1cm47CiAgICAgfQorCisgICAg
SW50UmVjdCBwaXhlbFNuYXBwZWRSZWN0ID0gcGl4ZWxTbmFwcGVkSW50UmVjdChyZXBhaW50UmVj
dCk7CisgICAgaWYgKCFtX2FjY3VtdWxhdGVkUmVwYWludFJlZ2lvbiB8fCBpbW1lZGlhdGUpIHsK
KyAgICAgICAgZnJhbWVWaWV3KCkucmVwYWludENvbnRlbnRSZWN0YW5nbGUocGl4ZWxTbmFwcGVk
UmVjdCwgaW1tZWRpYXRlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBtX2FjY3VtdWxh
dGVkUmVwYWludFJlZ2lvbi0+dW5pdGUocGl4ZWxTbmFwcGVkUmVjdCk7Cit9CisKK3ZvaWQgUmVu
ZGVyVmlldzo6Zmx1c2hBY2N1bXVsYXRlZFJlcGFpbnRSZWdpb24oKSBjb25zdAoreworICAgIEFT
U0VSVCghZG9jdW1lbnQoKS5vd25lckVsZW1lbnQoKSk7CisgICAgQVNTRVJUKG1fYWNjdW11bGF0
ZWRSZXBhaW50UmVnaW9uKTsKKyAgICBhdXRvIHJlcGFpbnRSZWN0cyA9IG1fYWNjdW11bGF0ZWRS
ZXBhaW50UmVnaW9uLT5yZWN0cygpOworICAgIGZvciAoYXV0byYgcmVjdCA6IHJlcGFpbnRSZWN0
cykKKyAgICAgICAgZnJhbWVWaWV3KCkucmVwYWludENvbnRlbnRSZWN0YW5nbGUocmVjdCwgZmFs
c2UpOworICAgIG1fYWNjdW11bGF0ZWRSZXBhaW50UmVnaW9uID0gbnVsbHB0cjsKIH0KIAogdm9p
ZCBSZW5kZXJWaWV3OjpyZXBhaW50UmVjdGFuZ2xlSW5WaWV3QW5kQ29tcG9zaXRlZExheWVycyhj
b25zdCBMYXlvdXRSZWN0JiB1ciwgYm9vbCBpbW1lZGlhdGUpCkBAIC0xMjUzLDQgKzEyNjUsMjMg
QEAgSW1hZ2VRdWFsaXR5Q29udHJvbGxlciYgUmVuZGVyVmlldzo6aW1hZwogICAgIHJldHVybiAq
bV9pbWFnZVF1YWxpdHlDb250cm9sbGVyOwogfQogCitSZW5kZXJWaWV3OjpSZXBhaW50UmVnaW9u
QWNjdW11bGF0b3I6OlJlcGFpbnRSZWdpb25BY2N1bXVsYXRvcihSZW5kZXJWaWV3KiB2aWV3KQor
ICAgIDogbV9yb290Vmlldyh2aWV3ID8gdmlldy0+ZG9jdW1lbnQoKS50b3BEb2N1bWVudCgpLT5y
ZW5kZXJWaWV3KCkgOiBudWxscHRyKQoreworICAgIGlmICghbV9yb290VmlldykKKyAgICAgICAg
cmV0dXJuOworICAgIG1fd2FzQWNjdW11bGF0aW5nUmVwYWludFJlZ2lvbiA9ICEhbV9yb290Vmll
dy0+bV9hY2N1bXVsYXRlZFJlcGFpbnRSZWdpb247CisgICAgaWYgKCFtX3dhc0FjY3VtdWxhdGlu
Z1JlcGFpbnRSZWdpb24pCisgICAgICAgIG1fcm9vdFZpZXctPm1fYWNjdW11bGF0ZWRSZXBhaW50
UmVnaW9uID0gc3RkOjptYWtlX3VuaXF1ZTxSZWdpb24+KCk7Cit9CisKK1JlbmRlclZpZXc6OlJl
cGFpbnRSZWdpb25BY2N1bXVsYXRvcjo6flJlcGFpbnRSZWdpb25BY2N1bXVsYXRvcigpCit7Cisg
ICAgaWYgKCFtX3Jvb3RWaWV3KQorICAgICAgICByZXR1cm47CisgICAgaWYgKG1fd2FzQWNjdW11
bGF0aW5nUmVwYWludFJlZ2lvbikKKyAgICAgICAgcmV0dXJuOworICAgIG1fcm9vdFZpZXctPmZs
dXNoQWNjdW11bGF0ZWRSZXBhaW50UmVnaW9uKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaAkocmV2aXNpb24gMTYy
OTMxKQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuaAkod29ya2luZyBj
b3B5KQpAQCAtMjUsNiArMjUsNyBAQAogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgogI2luY2x1ZGUg
IkxheW91dFN0YXRlLmgiCiAjaW5jbHVkZSAiUE9ERnJlZUxpc3RBcmVuYS5oIgorI2luY2x1ZGUg
IlJlZ2lvbi5oIgogI2luY2x1ZGUgIlJlbmRlckJsb2NrRmxvdy5oIgogI2luY2x1ZGUgPHd0Zi9P
d25QdHIuaD4KIApAQCAtMjM0LDYgKzIzNSwxNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRDcmVh
dGVSZW5kZXJlcigpIHsgKyttX3JlbmRlcmVyQ291bnQ7IH0KICAgICB2b2lkIGRpZERlc3Ryb3lS
ZW5kZXJlcigpIHsgLS1tX3JlbmRlcmVyQ291bnQ7IH0KIAorICAgIGNsYXNzIFJlcGFpbnRSZWdp
b25BY2N1bXVsYXRvciB7CisgICAgcHVibGljOgorICAgICAgICBSZXBhaW50UmVnaW9uQWNjdW11
bGF0b3IoUmVuZGVyVmlldyopOworICAgICAgICB+UmVwYWludFJlZ2lvbkFjY3VtdWxhdG9yKCk7
CisKKyAgICBwcml2YXRlOgorICAgICAgICBSZW5kZXJWaWV3KiBtX3Jvb3RWaWV3OworICAgICAg
ICBib29sIG1fd2FzQWNjdW11bGF0aW5nUmVwYWludFJlZ2lvbjsKKyAgICB9OworCiBwcm90ZWN0
ZWQ6CiAgICAgdmlydHVhbCB2b2lkIG1hcExvY2FsVG9Db250YWluZXIoY29uc3QgUmVuZGVyTGF5
ZXJNb2RlbE9iamVjdCogcmVwYWludENvbnRhaW5lciwgVHJhbnNmb3JtU3RhdGUmLCBNYXBDb29y
ZGluYXRlc0ZsYWdzID0gQXBwbHlDb250YWluZXJGbGlwLCBib29sKiB3YXNGaXhlZCA9IDApIGNv
bnN0IG92ZXJyaWRlOwogICAgIHZpcnR1YWwgY29uc3QgUmVuZGVyT2JqZWN0KiBwdXNoTWFwcGlu
Z1RvQ29udGFpbmVyKGNvbnN0IFJlbmRlckxheWVyTW9kZWxPYmplY3QqIGFuY2VzdG9yVG9TdG9w
QXQsIFJlbmRlckdlb21ldHJ5TWFwJikgY29uc3Qgb3ZlcnJpZGU7CkBAIC0yNDcsNiArMjU4LDcg
QEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIENvbHVtbkluZm86OlBhZ2luYXRpb25Vbml0IHBhZ2lu
YXRpb25Vbml0KCkgY29uc3Qgb3ZlcnJpZGU7CiAKICAgICBib29sIHNob3VsZFJlcGFpbnQoY29u
c3QgTGF5b3V0UmVjdCYpIGNvbnN0OworICAgIHZvaWQgZmx1c2hBY2N1bXVsYXRlZFJlcGFpbnRS
ZWdpb24oKSBjb25zdDsKIAogICAgIC8vIFRoZXNlIGZ1bmN0aW9ucyBtYXkgb25seSBiZSBhY2Nl
c3NlZCBieSBMYXlvdXRTdGF0ZU1haW50YWluZXIuCiAgICAgYm9vbCBwdXNoTGF5b3V0U3RhdGUo
UmVuZGVyQm94JiByZW5kZXJlciwgY29uc3QgTGF5b3V0U2l6ZSYgb2Zmc2V0LCBMYXlvdXRVbml0
IHBhZ2VIZWlnaHQgPSAwLCBib29sIHBhZ2VIZWlnaHRDaGFuZ2VkID0gZmFsc2UsIENvbHVtbklu
Zm8qIGNvbEluZm8gPSBudWxscHRyKQpAQCAtMzAzLDYgKzMxNSw4IEBAIHByaXZhdGU6CiAKICAg
ICB1aW50NjRfdCBtX3JlbmRlcmVyQ291bnQ7CiAKKyAgICBtdXRhYmxlIHN0ZDo6dW5pcXVlX3B0
cjxSZWdpb24+IG1fYWNjdW11bGF0ZWRSZXBhaW50UmVnaW9uOworCiAgICAgLy8gRklYTUU6IE9u
bHkgdXNlZCBieSBlbWJlZGRlZCBXZWJWaWV3cyBpbnNpZGUgQXBwS2l0IE5TVmlld3MuICBGaW5k
IGEgd2F5IHRvIHJlbW92ZS4KICAgICBzdHJ1Y3QgTGVnYWN5UHJpbnRpbmcgewogICAgICAgICBM
ZWdhY3lQcmludGluZygpCg==
</data>
<flag name="review"
          id="246458"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>