<?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>52547</bug_id>
          
          <creation_ts>2011-01-16 16:18:44 -0800</creation_ts>
          <short_desc>Add a parser benchmark using onload of an iframe</short_desc>
          <delta_ts>2011-01-21 18:59:11 -0800</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>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>
          
          <blocked>52036</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Patrick R. Gansterer">paroga</reporter>
          <assigned_to name="Patrick R. Gansterer">paroga</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>335105</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2011-01-16 16:18:44 -0800</bug_when>
    <thetext>Add a parser benchmark using onload of an iframe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335106</commentid>
    <comment_count>1</comment_count>
      <attachid>79117</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2011-01-16 16:30:58 -0800</bug_when>
    <thetext>Created attachment 79117
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335107</commentid>
    <comment_count>2</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2011-01-16 16:51:25 -0800</bug_when>
    <thetext>This is a test, to check the performance of the xml parser changes in bug 52036.
In contrast to the other parser tests this one reads the (UTF-8) data from disk, instead of using (UTF-16) data from javascript. This also takes the input encoding into account.

When you only change the file extension from xhtml to html you can compare the performance of HTML vs. X(HT)ML parser.

I used a 5MB XHTML file and got the following results:

      avg      median  stdev  min   max
XML   6254.5   6366    573    5462  7118
HTML  6517.25  6770.5  505    5242  7286
      +4,2%    +6,3%

(After the patch at bug 52036 the difference goes up to 10%)

BTW: Maybe you have a better name for the files and a good content for the xhml file. I&apos;m not very good in finding names. :-/

PS: webkit-patch wasn&apos;t able to upload the patch with the 5MB file and didn&apos;t show any error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335116</commentid>
    <comment_count>3</comment_count>
      <attachid>79117</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-01-16 18:37:29 -0800</bug_when>
    <thetext>Comment on attachment 79117
Patch

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

&gt; PerformanceTests/Parser/resources/runner.js:72
&gt; +    function subRun(remaining) {

subRun?  What does that mean?

&gt; PerformanceTests/Parser/resources/runner.js:77
&gt; +        } else {

prefer early return.

&gt; PerformanceTests/Parser/with-onload.html:13
&gt; +        document.body.removeChild(iframe);
&gt; +        finished();

Do you mean to time the destructor here?  Also, you might consider just timing until DOMContentLoaded.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>335117</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-01-16 18:38:27 -0800</bug_when>
    <thetext>&gt; Do you mean to time the destructor here?  Also, you might consider just timing until DOMContentLoaded.

That might be past the attachment size limit for bugs.webkit.org.  I suspect we don&apos;t handle that error gracefully.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>338155</commentid>
    <comment_count>5</comment_count>
      <attachid>79759</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2011-01-21 10:43:44 -0800</bug_when>
    <thetext>Created attachment 79759
Patch

(In reply to comment #3)
&gt; Also, you might consider just timing until DOMContentLoaded.
Hmm, i wasn&apos;t able to use this event on the iframe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>338473</commentid>
    <comment_count>6</comment_count>
      <attachid>79759</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-01-21 18:59:11 -0800</bug_when>
    <thetext>Comment on attachment 79759
Patch

OK.  I still think DOMContentLoaded would be better.  Did you try iframe.contentWindow.addEventListender(&quot;DOMContentLoaded&quot;) ?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79117</attachid>
            <date>2011-01-16 16:30:58 -0800</date>
            <delta_ts>2011-01-21 10:43:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52547-20110117013055.patch</filename>
            <type>text/plain</type>
            <size>5024</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL0NoYW5nZUxvZyBiL1BlcmZvcm1h
bmNlVGVzdHMvUGFyc2VyL0NoYW5nZUxvZwppbmRleCAzN2E5ZjJlYjhlM2JiOWRmZTVlYmM3NDkw
NTAxNGU0YmZmZmVmZDYxLi5mZDY3NzE4ZmViOWY0YzMwYTI3ZjgzNjcwZWFjYTQ0MWMyMDk3NDY0
IDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9DaGFuZ2VMb2cKKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9QYXJzZXIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDEt
MTYgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgcGFyc2VyIGJlbmNobWFy
ayB1c2luZyBvbmxvYWQgb2YgYW4gaWZyYW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MjU0NworCisgICAgICAgIEFsc28gbGV0IHRoZSBleGlzaW5n
IHRlc3RzIHVzZSBhIGZpbmlzaGVkIGNhbGxiYWNrLiAKKworICAgICAgICAqIGh0bWwtcGFyc2Vy
Lmh0bWw6CisgICAgICAgICogcmVzb3VyY2VzL3J1bm5lci5qczoKKyAgICAgICAgKHJ1bi5zdWJS
dW4uZWxzZSk6CisgICAgICAgIChydW4uc3ViUnVuKToKKyAgICAgICAgKHJ1bik6CisgICAgICAg
ICogcmVzb3VyY2VzL3htbDEwLnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiB3aXRoLW9ubG9hZC5o
dG1sOiBDb3BpZWQgZnJvbSBQZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9odG1sLXBhcnNlci5odG1s
LgorICAgICAgICAqIHhtbC1wYXJzZXIuaHRtbDoKKwogMjAxMC0xMi0zMSAgQWRhbSBCYXJ0aCAg
PGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEVyaWMgU2Vp
ZGVsLgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvaHRtbC1wYXJzZXIuaHRt
bCBiL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL2h0bWwtcGFyc2VyLmh0bWwKaW5kZXggYmIyYzcz
YzRiYzU3YTE2YTE5NDYwYjZmZWI5M2UxMzU3ZTNlZGY1OS4uZWEzZGIyMDQzMzNjMjUzOGVkZjBm
ZDQzZWM0YWEwMGQ3NDI5YzgxYSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIv
aHRtbC1wYXJzZXIuaHRtbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9odG1sLXBhcnNl
ci5odG1sCkBAIC01LDcgKzUsNyBAQAogPHNjcmlwdD4KIHZhciBzcGVjID0gbG9hZEZpbGUoInJl
c291cmNlcy9odG1sNS5odG1sIik7CiAKLXN0YXJ0KDIwLCBmdW5jdGlvbigpIHsKK3N0YXJ0KDIw
LCBmdW5jdGlvbihmaW5pc2hlZCkgewogICAgIHZhciBpZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJpZnJhbWUiKTsKICAgICBpZnJhbWUuc3JjID0gImFib3V0OmJsYW5rIjsKICAgICBp
ZnJhbWUuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKQEAgLTE0LDYgKzE0LDcgQEAgc3RhcnQoMjAs
IGZ1bmN0aW9uKCkgewogICAgIGlmcmFtZS5jb250ZW50RG9jdW1lbnQud3JpdGUoc3BlYyk7CiAg
ICAgaWZyYW1lLmNvbnRlbnREb2N1bWVudC5jbG9zZSgpOwogICAgIGRvY3VtZW50LmJvZHkucmVt
b3ZlQ2hpbGQoaWZyYW1lKTsKKyAgICBmaW5pc2hlZCgpOwogfSk7CiA8L3NjcmlwdD4KIDwvYm9k
eT4KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy9ydW5uZXIu
anMgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9yZXNvdXJjZXMvcnVubmVyLmpzCmluZGV4IDRi
YWE0OTdiZjdiMGU4NDgyY2FhZmQ0MWZmNDMyOTgzNWI5M2Y1ODYuLmMyMDU0Yjc0YWFlNTM0ZGM4
ZDMzOGEwZjRjMDdkZjgzMWE0MWNkMzUgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvUGFy
c2VyL3Jlc291cmNlcy9ydW5uZXIuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvcmVz
b3VyY2VzL3J1bm5lci5qcwpAQCAtNjksMjEgKzY5LDI3IEBAIGZ1bmN0aW9uIGxvZ1N0YXRpc3Rp
Y3ModGltZXMpIHsKIAogZnVuY3Rpb24gcnVuKCkgewogICAgIHZhciBzdGFydCA9IG5ldyBEYXRl
KCk7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCAxMDsgKytpKQotICAgICAgICB3aW5kb3cucnVu
RnVuY3Rpb24oKTsKLSAgICB2YXIgdGltZSA9IG5ldyBEYXRlKCkgLSBzdGFydDsKLSAgICBjb21w
bGV0ZWRSdW5zKys7Ci0gICAgaWYgKGNvbXBsZXRlZFJ1bnMgPD0gMCkgewotICAgICAgICBsb2co
Iklnbm9yaW5nIHdhcm0tdXAgcnVuICgiICsgdGltZSArICIpIik7Ci0gICAgfSBlbHNlIHsKLSAg
ICAgICAgdGltZXMucHVzaCh0aW1lKTsKLSAgICAgICAgbG9nKHRpbWUpOwotICAgIH0KLSAgICBp
ZiAoY29tcGxldGVkUnVucyA8IHdpbmRvdy5ydW5Db3VudCkgewotICAgICAgICB3aW5kb3cuc2V0
VGltZW91dChydW4sIDApOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGxvZ1N0YXRpc3RpY3ModGlt
ZXMpOworICAgIGZ1bmN0aW9uIHN1YlJ1bihyZW1haW5pbmcpIHsKKyAgICAgICAgaWYgKHJlbWFp
bmluZykgeworICAgICAgICAgICAgd2luZG93LnJ1bkZ1bmN0aW9uKGZ1bmN0aW9uKCkgeworICAg
ICAgICAgICAgICAgIHN1YlJ1bihyZW1haW5pbmcgLSAxKTsKKyAgICAgICAgICAgIH0pOworICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgdmFyIHRpbWUgPSBuZXcgRGF0ZSgpIC0gc3RhcnQ7
CisgICAgICAgICAgICBjb21wbGV0ZWRSdW5zKys7CisgICAgICAgICAgICBpZiAoY29tcGxldGVk
UnVucyA8PSAwKQorICAgICAgICAgICAgICAgIGxvZygiSWdub3Jpbmcgd2FybS11cCBydW4gKCIg
KyB0aW1lICsgIikiKTsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIHRpbWVz
LnB1c2godGltZSk7CisgICAgICAgICAgICAgICAgbG9nKHRpbWUpOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgaWYgKGNvbXBsZXRlZFJ1bnMgPCB3aW5kb3cucnVuQ291bnQpCisgICAgICAg
ICAgICAgICAgd2luZG93LnNldFRpbWVvdXQocnVuLCAwKTsKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICBsb2dTdGF0aXN0aWNzKHRpbWVzKTsKKyAgICAgICAgIH0KICAgICB9Cisg
ICAgc3ViUnVuKDIpOwogfQogCiBmdW5jdGlvbiBzdGFydChydW5Db3VudCwgcnVuRnVuY3Rpb24p
IHsKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy94bWwxMC54
aHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy94bWwxMC54aHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yODNhNWI1NDhlYTZkNGZkMzkzMGM4ZDU1MTFkNWZiN2FlNDQzYjkxCi0tLSAvZGV2
L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvcmVzb3VyY2VzL3htbDEwLnhodG1s
CkBAIC0wLDAgKzEsOCBAQAorPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4K
KzwhRE9DVFlQRSBodG1sCisgICBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0
aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNp
dGlvbmFsLmR0ZCI+Cis8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCIg
bGFuZz0iRU4iPgorCitQTEVBU0UgRU5URVIgYSBmZXcgTUIgb2YgYW55IFhNTCBkYXRhIGhlcmUh
ISEhISEhCisKKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3dp
dGgtb25sb2FkLmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci93aXRoLW9ubG9hZC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmQ4NjZjZWMwZmIzYjk0MzBhMDAzNDBlZjE3OWQ1Y2U4MDhmZmIwZDEKLS0t
IC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci93aXRoLW9ubG9hZC5odG1s
CkBAIC0wLDAgKzEsMTggQEAKKzwhRE9DVFlQRSBodG1sPgorPGJvZHk+Cis8cHJlIGlkPSJsb2ci
PjwvcHJlPgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9ydW5uZXIuanMiPjwvc2NyaXB0PgorPHNj
cmlwdD4KK3N0YXJ0KDIwLCBmdW5jdGlvbihmaW5pc2hlZCkgeworICAgIHZhciBpZnJhbWUgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgICBpZnJhbWUuc3JjID0gImFib3V0
OmJsYW5rIjsKKyAgICBpZnJhbWUuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKKyAgICBkb2N1bWVu
dC5ib2R5LmFwcGVuZENoaWxkKGlmcmFtZSk7CisgICAgaWZyYW1lLm9ubG9hZCA9IGZ1bmN0aW9u
KCkgeworICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGlmcmFtZSk7CisgICAgICAg
IGZpbmlzaGVkKCk7CisgICAgfQorICAgIGlmcmFtZS5zcmMgPSAicmVzb3VyY2VzL3htbDEwLnho
dG1sIjsKK30pOworPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRl
c3RzL1BhcnNlci94bWwtcGFyc2VyLmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci94bWwt
cGFyc2VyLmh0bWwKaW5kZXggMmU1MDdjODA4ZTgxMzhiMGIyOGYyNDQ2YjA4MTkzNDZhODIwMTRl
NS4uOTYwMDA0NGNhYmM1MGM3Mzg3MTM5YmFmZjJlYjRlZjk0MTY3ODQzMSAxMDA2NDQKLS0tIGEv
UGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIveG1sLXBhcnNlci5odG1sCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvUGFyc2VyL3htbC1wYXJzZXIuaHRtbApAQCAtMTIsOCArMTIsOSBAQCBmb3IgKHZhciBp
ID0gMDsgaSA8IDB4N0ZGRjsgKytpKQogeG1sQXJyYXkucHVzaCgnPC9yb290PicpCiB2YXIgeG1s
RGF0YSA9IHhtbEFycmF5LmpvaW4oJycpOwogCi1zdGFydCgyMCwgZnVuY3Rpb24oKSB7CitzdGFy
dCgyMCwgZnVuY3Rpb24oZmluaXNoZWQpIHsKICAgICBkb21QYXJzZXIucGFyc2VGcm9tU3RyaW5n
KHhtbERhdGEsICJ0ZXh0L3htbCIpOworICAgIGZpbmlzaGVkKCk7CiB9KTsKIDwvc2NyaXB0Pgog
PC9ib2R5Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79759</attachid>
            <date>2011-01-21 10:43:44 -0800</date>
            <delta_ts>2011-01-21 18:59:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52547b.patch</filename>
            <type>text/plain</type>
            <size>4542</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL0NoYW5nZUxvZyBiL1BlcmZvcm1h
bmNlVGVzdHMvUGFyc2VyL0NoYW5nZUxvZwppbmRleCAzN2E5ZjJlLi5kZWRiNzI3IDEwMDY0NAot
LS0gYS9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9DaGFuZ2VMb2cKKysrIGIvUGVyZm9ybWFuY2VU
ZXN0cy9QYXJzZXIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMDEtMjEgIFBhdHJp
Y2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgcGFyc2VyIGJlbmNobWFyayB1c2luZyBv
bmxvYWQgb2YgYW4gaWZyYW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD01MjU0NworCisgICAgICAgIEFsc28gbGV0IHRoZSBleGlzdGluZyB0ZXN0cyB1
c2UgYSBmaW5pc2hlZCBjYWxsYmFjay4gCisKKyAgICAgICAgKiBodG1sLXBhcnNlci5odG1sOgor
ICAgICAgICAqIHJlc291cmNlcy9ydW5uZXIuanM6CisgICAgICAgICogcmVzb3VyY2VzL3htbDEw
LnhodG1sOiBBZGRlZC4KKyAgICAgICAgKiB3aXRoLW9ubG9hZC5odG1sOiBDb3BpZWQgZnJvbSBQ
ZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9odG1sLXBhcnNlci5odG1sLgorICAgICAgICAqIHhtbC1w
YXJzZXIuaHRtbDoKKwogMjAxMC0xMi0zMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvaHRtbC1wYXJzZXIuaHRtbCBiL1BlcmZvcm1hbmNlVGVz
dHMvUGFyc2VyL2h0bWwtcGFyc2VyLmh0bWwKaW5kZXggYmIyYzczYy4uZWEzZGIyMCAxMDA2NDQK
LS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvaHRtbC1wYXJzZXIuaHRtbAorKysgYi9QZXJm
b3JtYW5jZVRlc3RzL1BhcnNlci9odG1sLXBhcnNlci5odG1sCkBAIC01LDcgKzUsNyBAQAogPHNj
cmlwdD4KIHZhciBzcGVjID0gbG9hZEZpbGUoInJlc291cmNlcy9odG1sNS5odG1sIik7CiAKLXN0
YXJ0KDIwLCBmdW5jdGlvbigpIHsKK3N0YXJ0KDIwLCBmdW5jdGlvbihmaW5pc2hlZCkgewogICAg
IHZhciBpZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKICAgICBpZnJh
bWUuc3JjID0gImFib3V0OmJsYW5rIjsKICAgICBpZnJhbWUuc3R5bGUuZGlzcGxheSA9ICJub25l
IjsKQEAgLTE0LDYgKzE0LDcgQEAgc3RhcnQoMjAsIGZ1bmN0aW9uKCkgewogICAgIGlmcmFtZS5j
b250ZW50RG9jdW1lbnQud3JpdGUoc3BlYyk7CiAgICAgaWZyYW1lLmNvbnRlbnREb2N1bWVudC5j
bG9zZSgpOwogICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoaWZyYW1lKTsKKyAgICBmaW5p
c2hlZCgpOwogfSk7CiA8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNl
VGVzdHMvUGFyc2VyL3Jlc291cmNlcy9ydW5uZXIuanMgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNl
ci9yZXNvdXJjZXMvcnVubmVyLmpzCmluZGV4IDRiYWE0OTcuLjMyZjAwY2MgMTAwNjQ0Ci0tLSBh
L1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy9ydW5uZXIuanMKKysrIGIvUGVyZm9y
bWFuY2VUZXN0cy9QYXJzZXIvcmVzb3VyY2VzL3J1bm5lci5qcwpAQCAtNjksMjEgKzY5LDI5IEBA
IGZ1bmN0aW9uIGxvZ1N0YXRpc3RpY3ModGltZXMpIHsKIAogZnVuY3Rpb24gcnVuKCkgewogICAg
IHZhciBzdGFydCA9IG5ldyBEYXRlKCk7Ci0gICAgZm9yICh2YXIgaSA9IDA7IGkgPCAxMDsgKytp
KQotICAgICAgICB3aW5kb3cucnVuRnVuY3Rpb24oKTsKLSAgICB2YXIgdGltZSA9IG5ldyBEYXRl
KCkgLSBzdGFydDsKLSAgICBjb21wbGV0ZWRSdW5zKys7Ci0gICAgaWYgKGNvbXBsZXRlZFJ1bnMg
PD0gMCkgewotICAgICAgICBsb2coIklnbm9yaW5nIHdhcm0tdXAgcnVuICgiICsgdGltZSArICIp
Iik7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgdGltZXMucHVzaCh0aW1lKTsKLSAgICAgICAgbG9n
KHRpbWUpOwotICAgIH0KLSAgICBpZiAoY29tcGxldGVkUnVucyA8IHdpbmRvdy5ydW5Db3VudCkg
ewotICAgICAgICB3aW5kb3cuc2V0VGltZW91dChydW4sIDApOwotICAgIH0gZWxzZSB7Ci0gICAg
ICAgIGxvZ1N0YXRpc3RpY3ModGltZXMpOworICAgIGZ1bmN0aW9uIHJ1blNpbmdsZVRlc3QocmVt
YWluaW5nKSB7CisgICAgICAgIGlmIChyZW1haW5pbmcpIHsKKyAgICAgICAgICAgIHdpbmRvdy5y
dW5GdW5jdGlvbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBydW5TaW5nbGVUZXN0KHJl
bWFpbmluZyAtIDEpOworICAgICAgICAgICAgfSk7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIH0KKworICAgICAgICB2YXIgdGltZSA9IG5ldyBEYXRlKCkgLSBzdGFydDsKKyAgICAgICAg
Y29tcGxldGVkUnVucysrOworICAgICAgICBpZiAoY29tcGxldGVkUnVucyA8PSAwKQorICAgICAg
ICAgICAgbG9nKCJJZ25vcmluZyB3YXJtLXVwIHJ1biAoIiArIHRpbWUgKyAiKSIpOworICAgICAg
ICBlbHNlIHsKKyAgICAgICAgICAgIHRpbWVzLnB1c2godGltZSk7CisgICAgICAgICAgICBsb2co
dGltZSk7CisgICAgICAgIH0KKworICAgICAgICBpZiAoY29tcGxldGVkUnVucyA8IHdpbmRvdy5y
dW5Db3VudCkKKyAgICAgICAgICAgIHdpbmRvdy5zZXRUaW1lb3V0KHJ1biwgMCk7CisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIGxvZ1N0YXRpc3RpY3ModGltZXMpOwogICAgIH0KKyAgICBydW5T
aW5nbGVUZXN0KDEwKTsKIH0KIAogZnVuY3Rpb24gc3RhcnQocnVuQ291bnQsIHJ1bkZ1bmN0aW9u
KSB7CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9yZXNvdXJjZXMveG1sMTAu
eGh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9yZXNvdXJjZXMveG1sMTAueGh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjgzYTViNQotLS0gL2Rldi9udWxsCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy94bWwxMC54aHRtbApAQCAtMCww
ICsxLDggQEAKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+Cis8IURPQ1RZ
UEUgaHRtbAorICAgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9F
TiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5k
dGQiPgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIGxhbmc9IkVO
Ij4KKworUExFQVNFIEVOVEVSIGEgZmV3IE1CIG9mIGFueSBYTUwgZGF0YSBoZXJlISEhISEhIQor
Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci93aXRoLW9ubG9h
ZC5odG1sIGIvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvd2l0aC1vbmxvYWQuaHRtbApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZmQ1Mzk3Ci0tLSAvZGV2L251bGwKKysrIGIv
UGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvd2l0aC1vbmxvYWQuaHRtbApAQCAtMCwwICsxLDE4IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxib2R5PgorPHByZSBpZD0ibG9nIj48L3ByZT4KKzxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvcnVubmVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CitzdGFydCgyMCwg
ZnVuY3Rpb24oZmluaXNoZWQpIHsKKyAgICB2YXIgaWZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiaWZyYW1lIik7CisgICAgaWZyYW1lLnNyYyA9ICJhYm91dDpibGFuayI7CisgICAgaWZy
YW1lLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChpZnJhbWUpOworICAgIGlmcmFtZS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKyAgICAgICAgZmlu
aXNoZWQoKTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChpZnJhbWUpOworICAg
IH0KKyAgICBpZnJhbWUuc3JjID0gInJlc291cmNlcy94bWwxMC54aHRtbCI7Cit9KTsKKzwvc2Ny
aXB0PgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIveG1sLXBh
cnNlci5odG1sIGIvUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIveG1sLXBhcnNlci5odG1sCmluZGV4
IDJlNTA3YzguLjk2MDAwNDQgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3ht
bC1wYXJzZXIuaHRtbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1BhcnNlci94bWwtcGFyc2VyLmh0
bWwKQEAgLTEyLDggKzEyLDkgQEAgZm9yICh2YXIgaSA9IDA7IGkgPCAweDdGRkY7ICsraSkKIHht
bEFycmF5LnB1c2goJzwvcm9vdD4nKQogdmFyIHhtbERhdGEgPSB4bWxBcnJheS5qb2luKCcnKTsK
IAotc3RhcnQoMjAsIGZ1bmN0aW9uKCkgeworc3RhcnQoMjAsIGZ1bmN0aW9uKGZpbmlzaGVkKSB7
CiAgICAgZG9tUGFyc2VyLnBhcnNlRnJvbVN0cmluZyh4bWxEYXRhLCAidGV4dC94bWwiKTsKKyAg
ICBmaW5pc2hlZCgpOwogfSk7CiA8L3NjcmlwdD4KIDwvYm9keT4K
</data>
<flag name="review"
          id="71185"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>