<?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>78307</bug_id>
          
          <creation_ts>2012-02-09 18:07:53 -0800</creation_ts>
          <short_desc>Dromaeo/dom-traverse.html should go fast</short_desc>
          <delta_ts>2012-02-10 13:03:56 -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>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="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>arv</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>553676</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-09 18:07:53 -0800</bug_when>
    <thetext>Dromaeo/dom-traverse.html should go fast</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553703</commentid>
    <comment_count>1</comment_count>
      <attachid>126424</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-09 18:33:39 -0800</bug_when>
    <thetext>Created attachment 126424
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553710</commentid>
    <comment_count>2</comment_count>
      <attachid>126427</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-09 18:40:17 -0800</bug_when>
    <thetext>Created attachment 126427
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553715</commentid>
    <comment_count>3</comment_count>
      <attachid>126427</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-02-09 18:44:39 -0800</bug_when>
    <thetext>Comment on attachment 126427
Patch

OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553866</commentid>
    <comment_count>4</comment_count>
      <attachid>126427</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-09 23:10:07 -0800</bug_when>
    <thetext>Comment on attachment 126427
Patch

Clearing flags on attachment: 126427

Committed r107367: &lt;http://trac.webkit.org/changeset/107367&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553867</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-09 23:10:11 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554262</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-10 11:54:48 -0800</bug_when>
    <thetext>It looks as if there were no impact on the graph: http://webkit-perf.appspot.com/graph.html?#tests=[[40020,2001,3001]]&amp;sel=1328859289354.6667,1328870686368&amp;displayrange=7&amp;datatype=running</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554327</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-02-10 13:01:57 -0800</bug_when>
    <thetext>&gt; It looks as if there were no impact on the graph.

I know!  That makes me sad.  I wonder if there&apos;s something wrong with the graph since I measured the improvement locally, both with total time and using a profiler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554331</commentid>
    <comment_count>8</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-10 13:03:56 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; It looks as if there were no impact on the graph.
&gt; 
&gt; I know!  That makes me sad.  I wonder if there&apos;s something wrong with the graph since I measured the improvement locally, both with total time and using a profiler.

Interesting. It&apos;s possible that there&apos;s some other bottle neck on slow machines (the bot is an old mac-mini)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126424</attachid>
            <date>2012-02-09 18:33:39 -0800</date>
            <delta_ts>2012-02-09 18:40:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-78307-20120209183338.patch</filename>
            <type>text/plain</type>
            <size>7208</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNzMzOCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAyLTA5ICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRHJvbWFlby9kb20tdHJhdmVyc2Uu
aHRtbCBzaG91bGQgZ28gZmFzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzgzMDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGlzIHBhdGNoIGltcHJvdmVzIERyb21hZW8vZG9tLXRyYXZlcnNlLmh0bWwg
Ynkgcm91Z2hseSAyLjUlIGJ5CisgICAgICAgIHJlbW92aW5nIGEgYnJhbmNoLiAgUHJldmlvdXNs
eSwgd2UgbnVsbC1jaGVja2VkIHRoZSByZXN1bHQgb2YKKyAgICAgICAgVjhET01XcmFwcGVyOjpn
ZXRXcmFwcGVyIGluIGEgaG90IGNvZGUgcGF0aCwgYnV0IHRoZSBvbmx5IGNhc2Ugd2hlcmUgd2UK
KyAgICAgICAgcmV0dXJuIGEgbm9uLWVtcHR5IHdyYXBwZXIgY29tZXMgZnJvbSBhIGNvbGQgY29k
ZSBwYXRoLiAgQnkgcHVzaGluZyB0aGUKKyAgICAgICAgbnVsbCBjaGVjayBpbnRvIHRoZSBjb2Rl
IGNvZGVwYXRoLCB3ZSBlbGltaW5hdGUgdGhpcyBicmFuY2ggZnJvbSB0aGUKKyAgICAgICAgaG90
IGNvZGUgcGF0aC4KKworICAgICAgICBUaGlzIHBhdGNoIGFsc28gYW5ub2F0ZXMgdGhlIGJyYW5j
aGVzIGluIHRoZSBob3QgY29kZSBwYXRoIHdpdGggdGhlaXIKKyAgICAgICAgbGlrZWx5IG91dGNv
bWUuICBJIGRpZG4ndCBtZWFzdXJlIGEgc3RhdGlzdGljYWxseSBzaWduaWZpY2FudAorICAgICAg
ICBpbXByb3ZlbWVudCB3aXRoIHRoYXQgYXNwZWN0IG9mIHRoZSBjaGFuZ2UsIGJ1dCBpdCBzZWVt
cyB3b3J0aHdoaWxlLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
VjgucG06CisgICAgICAgIChHZW5lcmF0ZUhlYWRlcik6CisgICAgICAgICogYmluZGluZ3Mvdjgv
VjhET01XcmFwcGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldEV4aXN0aW5nV3JhcHBlcklu
bGluZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBl
cjo6Z2V0RXhpc3RpbmdXcmFwcGVyU2xvdyk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBw
ZXI6OmdldFdyYXBwZXJTbG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdyYXBwZXIu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6Z2V0RXhpc3RpbmdXcmFwcGVyKToK
KyAgICAgICAgKFY4RE9NV3JhcHBlcik6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBwZXI6
OmdldFdyYXBwZXIpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vZGVDdXN0b20u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9WOFNsb3cpOgorCiAyMDEyLTAyLTA5ICBBbmRlcnMg
Q2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIHRoZSBzY3Jv
bGwgbGF5ZXIgcG9zaXRpb24gb24gdGhlIG1haW4gdGhyZWFkIHdoZW4gd2UgaGF2ZSBzbG93IHJl
cGFpbnQgb2JqZWN0cwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9yVjgucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG0JKHJldmlzaW9uIDEwNzE2MSkKKysrIFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCSh3b3JraW5nIGNvcHkpCkBA
IC00MjcsNyArNDI3LDcgQEAgRU5ECiBBTFdBWVNfSU5MSU5FIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gJHtjbGFzc05hbWV9OjpleGlzdGluZ1dyYXBwZXIoJHtuYXRpdmVUeXBlfSogaW1wbCkKIHsK
IEVORAotICAgIG15ICRnZXRXcmFwcGVyID0gSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpID8gIlY4
RE9NV3JhcHBlcjo6Z2V0V3JhcHBlcihpbXBsKSIgOiAiJHtkb21NYXBGdW5jdGlvbn0uZ2V0KGlt
cGwpIjsKKyAgICBteSAkZ2V0V3JhcHBlciA9IElzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKSA/ICJW
OERPTVdyYXBwZXI6OmdldEV4aXN0aW5nV3JhcHBlcihpbXBsKSIgOiAiJHtkb21NYXBGdW5jdGlv
bn0uZ2V0KGltcGwpIjsKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCA8PEVORCk7CiAgICAgcmV0
dXJuICR7Z2V0V3JhcHBlcn07CiB9CkBAIC00NjksMTQgKzQ2OSwxMSBAQCB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gdG9WOFNsb3coTm9kZSosIGJvCiAKIGlubGluZSB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gdG9WOChOb2RlKiBpbXBsLCBib29sIGZvcmNlTmV3T2JqZWN0ID0gZmFsc2UpCiB7Ci0gICAg
aWYgKCFpbXBsKQorICAgIGlmIChVTkxJS0VMWSghaW1wbCkpCiAgICAgICAgIHJldHVybiB2ODo6
TnVsbCgpOwotICAgIGlmICghZm9yY2VOZXdPYmplY3QpIHsKLSAgICAgICAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHdyYXBwZXIgPSBWOERPTVdyYXBwZXI6OmdldFdyYXBwZXIoaW1wbCk7Ci0gICAg
ICAgIGlmICghd3JhcHBlci5Jc0VtcHR5KCkpCi0gICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsK
LSAgICB9Ci0gICAgcmV0dXJuIHRvVjhTbG93KGltcGwsIGZvcmNlTmV3T2JqZWN0KTsKKyAgICBp
ZiAoVU5MSUtFTFkoZm9yY2VOZXdPYmplY3QpKQorICAgICAgICByZXR1cm4gdG9WOFNsb3coaW1w
bCwgZm9yY2VOZXdPYmplY3QpOworICAgIHJldHVybiBWOERPTVdyYXBwZXI6OmdldFdyYXBwZXIo
aW1wbCk7CiB9CiBFTkQKICAgICB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OERPTVdyYXBwZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4RE9NV3JhcHBlci5jcHAJKHJldmlzaW9uIDEwNzE2MSkKKysrIFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcyLDYgKzcyLDIw
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHR5cGVkZWYgSGFzaE1hcDxOb2RlKiwgdjg6Ok9iamVj
dCo+IERPTU5vZGVNYXA7CiB0eXBlZGVmIEhhc2hNYXA8dm9pZCosIHY4OjpPYmplY3QqPiBET01P
YmplY3RNYXA7CiAKK3N0YXRpYyBBTFdBWVNfSU5MSU5FIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
Z2V0RXhpc3RpbmdXcmFwcGVySW5saW5lKE5vZGUqIG5vZGUpCit7CisgICAgVjhJc29sYXRlZENv
bnRleHQqIGNvbnRleHQgPSBWOElzb2xhdGVkQ29udGV4dDo6Z2V0RW50ZXJlZCgpOworICAgIGlm
IChMSUtFTFkoIWNvbnRleHQpKSB7CisgICAgICAgIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+
KiB3cmFwcGVyID0gbm9kZS0+d3JhcHBlcigpOworICAgICAgICBpZiAoIXdyYXBwZXIpCisgICAg
ICAgICAgICByZXR1cm4gdjg6OkhhbmRsZTx2ODo6T2JqZWN0PigpOworICAgICAgICByZXR1cm4g
KndyYXBwZXI7CisgICAgfQorICAgIERPTURhdGFTdG9yZSogc3RvcmUgPSBjb250ZXh0LT53b3Js
ZCgpLT5kb21EYXRhU3RvcmUoKTsKKyAgICBET01Ob2RlTWFwcGluZyYgZG9tTm9kZU1hcCA9IG5v
ZGUtPmlzQWN0aXZlTm9kZSgpID8gc3RvcmUtPmFjdGl2ZURvbU5vZGVNYXAoKSA6IHN0b3JlLT5k
b21Ob2RlTWFwKCk7CisgICAgcmV0dXJuIGRvbU5vZGVNYXAuZ2V0KG5vZGUpOworfQorCiAvLyBU
aGUgY2FsbGVyIG11c3QgaGF2ZSBpbmNyZWFzZWQgb2JqJ3MgcmVmIGNvdW50Lgogdm9pZCBWOERP
TVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdCh2b2lkKiBvYmplY3QsIHY4OjpQZXJz
aXN0ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXIpCiB7CkBAIC0yOTIsMTggKzMwNiwxNyBAQCBib29s
IFY4RE9NV3JhcHBlcjo6aXNXcmFwcGVyT2ZUeXBlKHY4OjpICiAgICAgcmV0dXJuIHR5cGVJbmZv
ID09IHR5cGU7CiB9CiAKLXY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhET01XcmFwcGVyOjpnZXRX
cmFwcGVyU2xvdyhOb2RlKiBub2RlKQordjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOERPTVdyYXBw
ZXI6OmdldEV4aXN0aW5nV3JhcHBlclNsb3coTm9kZSogbm9kZSkKIHsKLSAgICBWOElzb2xhdGVk
Q29udGV4dCogY29udGV4dCA9IFY4SXNvbGF0ZWRDb250ZXh0OjpnZXRFbnRlcmVkKCk7Ci0gICAg
aWYgKExJS0VMWSghY29udGV4dCkpIHsKLSAgICAgICAgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVj
dD4qIHdyYXBwZXIgPSBub2RlLT53cmFwcGVyKCk7Ci0gICAgICAgIGlmICghd3JhcHBlcikKLSAg
ICAgICAgICAgIHJldHVybiB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+KCk7Ci0gICAgICAgIHJldHVy
biAqd3JhcHBlcjsKLSAgICB9Ci0gICAgRE9NRGF0YVN0b3JlKiBzdG9yZSA9IGNvbnRleHQtPndv
cmxkKCktPmRvbURhdGFTdG9yZSgpOwotICAgIERPTU5vZGVNYXBwaW5nJiBkb21Ob2RlTWFwID0g
bm9kZS0+aXNBY3RpdmVOb2RlKCkgPyBzdG9yZS0+YWN0aXZlRG9tTm9kZU1hcCgpIDogc3RvcmUt
PmRvbU5vZGVNYXAoKTsKLSAgICByZXR1cm4gZG9tTm9kZU1hcC5nZXQobm9kZSk7CisgICAgcmV0
dXJuIGdldEV4aXN0aW5nV3JhcHBlcklubGluZShub2RlKTsKK30KKwordjg6OkhhbmRsZTx2ODo6
VmFsdWU+IFY4RE9NV3JhcHBlcjo6Z2V0V3JhcHBlclNsb3coTm9kZSogbm9kZSkKK3sKKyAgICB2
ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBnZXRFeGlzdGluZ1dyYXBwZXJJbmxpbmUo
bm9kZSk7CisgICAgaWYgKCF3cmFwcGVyLklzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHdyYXBw
ZXI7CisgICAgcmV0dXJuIHRvVjhTbG93KG5vZGUsIGZhbHNlKTsKIH0KIAogI2RlZmluZSBUUllf
VE9fV1JBUF9XSVRIX0lOVEVSRkFDRShpbnRlcmZhY2VOYW1lKSBcCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaAkocmV2aXNpb24gMTA3MTYxKQorKysgU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmgJKHdvcmtpbmcgY29weSkKQEAg
LTEyNCwxOSArMTI0LDMxIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBzdGF0aWMg
djg6OkxvY2FsPHY4OjpPYmplY3Q+IGluc3RhbnRpYXRlVjhPYmplY3QoVjhQcm94eSogcHJveHks
IFdyYXBwZXJUeXBlSW5mbyosIHZvaWQqIGltcGwpOwogCi0gICAgICAgIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+IGdldFdyYXBwZXIoTm9kZSogbm9kZSkKKyAgICAgICAgc3RhdGljIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gZ2V0RXhpc3RpbmdXcmFwcGVyKE5vZGUqIG5vZGUpCiAgICAg
ICAgIHsKICAgICAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgICAgICAgICBp
ZiAoTElLRUxZKCFJc29sYXRlZFdvcmxkOjpjb3VudCgpKSkgewogICAgICAgICAgICAgICAgIHY4
OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+KiB3cmFwcGVyID0gbm9kZS0+d3JhcHBlcigpOwotICAg
ICAgICAgICAgICAgIGlmICh3cmFwcGVyKQorICAgICAgICAgICAgICAgIGlmIChMSUtFTFkoISF3
cmFwcGVyKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICp3cmFwcGVyOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgcmV0dXJuIGdldEV4aXN0aW5nV3JhcHBlclNsb3cobm9kZSk7Cisg
ICAgICAgIH0KKworICAgICAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGdldFdyYXBw
ZXIoTm9kZSogbm9kZSkKKyAgICAgICAgeworICAgICAgICAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKKyAgICAgICAgICAgIGlmIChMSUtFTFkoIUlzb2xhdGVkV29ybGQ6OmNvdW50KCkpKSB7
CisgICAgICAgICAgICAgICAgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4qIHdyYXBwZXIgPSBu
b2RlLT53cmFwcGVyKCk7CisgICAgICAgICAgICAgICAgaWYgKExJS0VMWSghIXdyYXBwZXIpKQog
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gKndyYXBwZXI7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICByZXR1cm4gZ2V0V3JhcHBlclNsb3cobm9kZSk7CiAgICAgICAgIH0KIAogICAgIHBy
aXZhdGU6Ci0gICAgICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGdldFdyYXBwZXJT
bG93KE5vZGUqKTsKKyAgICAgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gZ2V0RXhp
c3RpbmdXcmFwcGVyU2xvdyhOb2RlKik7CisgICAgICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gZ2V0V3JhcHBlclNsb3coTm9kZSopOwogICAgIH07CiAKIH0KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vZGVDdXN0b20uY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vZGVDdXN0b20uY3BwCShyZXZp
c2lvbiAxMDcxNjEpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhOb2Rl
Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM3LDcgKzEzNyw3IEBAIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB0b1Y4U2xvdyhOb2RlKiBpbXAKICAgICAgICAgcmV0dXJuIHY4OjpOdWxsKCk7
CiAKICAgICBpZiAoIWZvcmNlTmV3T2JqZWN0KSB7Ci0gICAgICAgIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB3cmFwcGVyID0gVjhET01XcmFwcGVyOjpnZXRXcmFwcGVyKGltcGwpOworICAgICAgICB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gd3JhcHBlciA9IFY4RE9NV3JhcHBlcjo6Z2V0RXhpc3RpbmdX
cmFwcGVyKGltcGwpOwogICAgICAgICBpZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQogICAgICAgICAg
ICAgcmV0dXJuIHdyYXBwZXI7CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126427</attachid>
            <date>2012-02-09 18:40:17 -0800</date>
            <delta_ts>2012-02-09 23:10:06 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-78307-20120209184016.patch</filename>
            <type>text/plain</type>
            <size>7208</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNzMzOCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAyLTA5ICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRHJvbWFlby9kb20tdHJhdmVyc2Uu
aHRtbCBzaG91bGQgZ28gZmFzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzgzMDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGlzIHBhdGNoIGltcHJvdmVzIERyb21hZW8vZG9tLXRyYXZlcnNlLmh0bWwg
Ynkgcm91Z2hseSAyLjUlIGJ5CisgICAgICAgIHJlbW92aW5nIGEgYnJhbmNoLiAgUHJldmlvdXNs
eSwgd2UgbnVsbC1jaGVja2VkIHRoZSByZXN1bHQgb2YKKyAgICAgICAgVjhET01XcmFwcGVyOjpn
ZXRXcmFwcGVyIGluIGEgaG90IGNvZGUgcGF0aCwgYnV0IHRoZSBvbmx5IGNhc2Ugd2hlcmUgd2UK
KyAgICAgICAgcmV0dXJuIGEgbm9uLWVtcHR5IHdyYXBwZXIgY29tZXMgZnJvbSBhIGNvbGQgY29k
ZSBwYXRoLiAgQnkgcHVzaGluZyB0aGUKKyAgICAgICAgbnVsbCBjaGVjayBpbnRvIHRoZSBjb2xk
IGNvZGVwYXRoLCB3ZSBlbGltaW5hdGUgdGhlIGJyYW5jaCBmcm9tIHRoZQorICAgICAgICBob3Qg
Y29kZSBwYXRoLgorCisgICAgICAgIFRoaXMgcGF0Y2ggYWxzbyBhbm5vdGF0ZXMgdGhlIGJyYW5j
aGVzIGluIHRoZSBob3QgY29kZSBwYXRoIHdpdGggdGhlaXIKKyAgICAgICAgbGlrZWx5IG91dGNv
bWUuICBJIGRpZG4ndCBtZWFzdXJlIGEgc3RhdGlzdGljYWxseSBzaWduaWZpY2FudAorICAgICAg
ICBpbXByb3ZlbWVudCB3aXRoIHRoYXQgYXNwZWN0IG9mIHRoZSBjaGFuZ2UsIGJ1dCBpdCBzZWVt
cyB3b3J0aHdoaWxlLgorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
VjgucG06CisgICAgICAgIChHZW5lcmF0ZUhlYWRlcik6CisgICAgICAgICogYmluZGluZ3Mvdjgv
VjhET01XcmFwcGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmdldEV4aXN0aW5nV3JhcHBlcklu
bGluZSk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBl
cjo6Z2V0RXhpc3RpbmdXcmFwcGVyU2xvdyk6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBw
ZXI6OmdldFdyYXBwZXJTbG93KToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOERPTVdyYXBwZXIu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlY4RE9NV3JhcHBlcjo6Z2V0RXhpc3RpbmdXcmFwcGVyKToK
KyAgICAgICAgKFY4RE9NV3JhcHBlcik6CisgICAgICAgIChXZWJDb3JlOjpWOERPTVdyYXBwZXI6
OmdldFdyYXBwZXIpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vZGVDdXN0b20u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6dG9WOFNsb3cpOgorCiAyMDEyLTAyLTA5ICBBbmRlcnMg
Q2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgVXBkYXRlIHRoZSBzY3Jv
bGwgbGF5ZXIgcG9zaXRpb24gb24gdGhlIG1haW4gdGhyZWFkIHdoZW4gd2UgaGF2ZSBzbG93IHJl
cGFpbnQgb2JqZWN0cwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9yVjgucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG0JKHJldmlzaW9uIDEwNzE2MSkKKysrIFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCSh3b3JraW5nIGNvcHkpCkBA
IC00MjcsNyArNDI3LDcgQEAgRU5ECiBBTFdBWVNfSU5MSU5FIHY4OjpIYW5kbGU8djg6Ok9iamVj
dD4gJHtjbGFzc05hbWV9OjpleGlzdGluZ1dyYXBwZXIoJHtuYXRpdmVUeXBlfSogaW1wbCkKIHsK
IEVORAotICAgIG15ICRnZXRXcmFwcGVyID0gSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpID8gIlY4
RE9NV3JhcHBlcjo6Z2V0V3JhcHBlcihpbXBsKSIgOiAiJHtkb21NYXBGdW5jdGlvbn0uZ2V0KGlt
cGwpIjsKKyAgICBteSAkZ2V0V3JhcHBlciA9IElzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKSA/ICJW
OERPTVdyYXBwZXI6OmdldEV4aXN0aW5nV3JhcHBlcihpbXBsKSIgOiAiJHtkb21NYXBGdW5jdGlv
bn0uZ2V0KGltcGwpIjsKICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCA8PEVORCk7CiAgICAgcmV0
dXJuICR7Z2V0V3JhcHBlcn07CiB9CkBAIC00NjksMTQgKzQ2OSwxMSBAQCB2ODo6SGFuZGxlPHY4
OjpWYWx1ZT4gdG9WOFNsb3coTm9kZSosIGJvCiAKIGlubGluZSB2ODo6SGFuZGxlPHY4OjpWYWx1
ZT4gdG9WOChOb2RlKiBpbXBsLCBib29sIGZvcmNlTmV3T2JqZWN0ID0gZmFsc2UpCiB7Ci0gICAg
aWYgKCFpbXBsKQorICAgIGlmIChVTkxJS0VMWSghaW1wbCkpCiAgICAgICAgIHJldHVybiB2ODo6
TnVsbCgpOwotICAgIGlmICghZm9yY2VOZXdPYmplY3QpIHsKLSAgICAgICAgdjg6OkhhbmRsZTx2
ODo6VmFsdWU+IHdyYXBwZXIgPSBWOERPTVdyYXBwZXI6OmdldFdyYXBwZXIoaW1wbCk7Ci0gICAg
ICAgIGlmICghd3JhcHBlci5Jc0VtcHR5KCkpCi0gICAgICAgICAgICByZXR1cm4gd3JhcHBlcjsK
LSAgICB9Ci0gICAgcmV0dXJuIHRvVjhTbG93KGltcGwsIGZvcmNlTmV3T2JqZWN0KTsKKyAgICBp
ZiAoVU5MSUtFTFkoZm9yY2VOZXdPYmplY3QpKQorICAgICAgICByZXR1cm4gdG9WOFNsb3coaW1w
bCwgZm9yY2VOZXdPYmplY3QpOworICAgIHJldHVybiBWOERPTVdyYXBwZXI6OmdldFdyYXBwZXIo
aW1wbCk7CiB9CiBFTkQKICAgICB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9W
OERPTVdyYXBwZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4RE9NV3JhcHBlci5jcHAJKHJldmlzaW9uIDEwNzE2MSkKKysrIFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4RE9NV3JhcHBlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcyLDYgKzcyLDIw
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIHR5cGVkZWYgSGFzaE1hcDxOb2RlKiwgdjg6Ok9iamVj
dCo+IERPTU5vZGVNYXA7CiB0eXBlZGVmIEhhc2hNYXA8dm9pZCosIHY4OjpPYmplY3QqPiBET01P
YmplY3RNYXA7CiAKK3N0YXRpYyBBTFdBWVNfSU5MSU5FIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4g
Z2V0RXhpc3RpbmdXcmFwcGVySW5saW5lKE5vZGUqIG5vZGUpCit7CisgICAgVjhJc29sYXRlZENv
bnRleHQqIGNvbnRleHQgPSBWOElzb2xhdGVkQ29udGV4dDo6Z2V0RW50ZXJlZCgpOworICAgIGlm
IChMSUtFTFkoIWNvbnRleHQpKSB7CisgICAgICAgIHY4OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+
KiB3cmFwcGVyID0gbm9kZS0+d3JhcHBlcigpOworICAgICAgICBpZiAoIXdyYXBwZXIpCisgICAg
ICAgICAgICByZXR1cm4gdjg6OkhhbmRsZTx2ODo6T2JqZWN0PigpOworICAgICAgICByZXR1cm4g
KndyYXBwZXI7CisgICAgfQorICAgIERPTURhdGFTdG9yZSogc3RvcmUgPSBjb250ZXh0LT53b3Js
ZCgpLT5kb21EYXRhU3RvcmUoKTsKKyAgICBET01Ob2RlTWFwcGluZyYgZG9tTm9kZU1hcCA9IG5v
ZGUtPmlzQWN0aXZlTm9kZSgpID8gc3RvcmUtPmFjdGl2ZURvbU5vZGVNYXAoKSA6IHN0b3JlLT5k
b21Ob2RlTWFwKCk7CisgICAgcmV0dXJuIGRvbU5vZGVNYXAuZ2V0KG5vZGUpOworfQorCiAvLyBU
aGUgY2FsbGVyIG11c3QgaGF2ZSBpbmNyZWFzZWQgb2JqJ3MgcmVmIGNvdW50Lgogdm9pZCBWOERP
TVdyYXBwZXI6OnNldEpTV3JhcHBlckZvckRPTU9iamVjdCh2b2lkKiBvYmplY3QsIHY4OjpQZXJz
aXN0ZW50PHY4OjpPYmplY3Q+IHdyYXBwZXIpCiB7CkBAIC0yOTIsMTggKzMwNiwxNyBAQCBib29s
IFY4RE9NV3JhcHBlcjo6aXNXcmFwcGVyT2ZUeXBlKHY4OjpICiAgICAgcmV0dXJuIHR5cGVJbmZv
ID09IHR5cGU7CiB9CiAKLXY4OjpIYW5kbGU8djg6Ok9iamVjdD4gVjhET01XcmFwcGVyOjpnZXRX
cmFwcGVyU2xvdyhOb2RlKiBub2RlKQordjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBWOERPTVdyYXBw
ZXI6OmdldEV4aXN0aW5nV3JhcHBlclNsb3coTm9kZSogbm9kZSkKIHsKLSAgICBWOElzb2xhdGVk
Q29udGV4dCogY29udGV4dCA9IFY4SXNvbGF0ZWRDb250ZXh0OjpnZXRFbnRlcmVkKCk7Ci0gICAg
aWYgKExJS0VMWSghY29udGV4dCkpIHsKLSAgICAgICAgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVj
dD4qIHdyYXBwZXIgPSBub2RlLT53cmFwcGVyKCk7Ci0gICAgICAgIGlmICghd3JhcHBlcikKLSAg
ICAgICAgICAgIHJldHVybiB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+KCk7Ci0gICAgICAgIHJldHVy
biAqd3JhcHBlcjsKLSAgICB9Ci0gICAgRE9NRGF0YVN0b3JlKiBzdG9yZSA9IGNvbnRleHQtPndv
cmxkKCktPmRvbURhdGFTdG9yZSgpOwotICAgIERPTU5vZGVNYXBwaW5nJiBkb21Ob2RlTWFwID0g
bm9kZS0+aXNBY3RpdmVOb2RlKCkgPyBzdG9yZS0+YWN0aXZlRG9tTm9kZU1hcCgpIDogc3RvcmUt
PmRvbU5vZGVNYXAoKTsKLSAgICByZXR1cm4gZG9tTm9kZU1hcC5nZXQobm9kZSk7CisgICAgcmV0
dXJuIGdldEV4aXN0aW5nV3JhcHBlcklubGluZShub2RlKTsKK30KKwordjg6OkhhbmRsZTx2ODo6
VmFsdWU+IFY4RE9NV3JhcHBlcjo6Z2V0V3JhcHBlclNsb3coTm9kZSogbm9kZSkKK3sKKyAgICB2
ODo6SGFuZGxlPHY4OjpPYmplY3Q+IHdyYXBwZXIgPSBnZXRFeGlzdGluZ1dyYXBwZXJJbmxpbmUo
bm9kZSk7CisgICAgaWYgKCF3cmFwcGVyLklzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHdyYXBw
ZXI7CisgICAgcmV0dXJuIHRvVjhTbG93KG5vZGUsIGZhbHNlKTsKIH0KIAogI2RlZmluZSBUUllf
VE9fV1JBUF9XSVRIX0lOVEVSRkFDRShpbnRlcmZhY2VOYW1lKSBcCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy92OC9WOERPTVdyYXBwZXIuaAkocmV2aXNpb24gMTA3MTYxKQorKysgU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhET01XcmFwcGVyLmgJKHdvcmtpbmcgY29weSkKQEAg
LTEyNCwxOSArMTI0LDMxIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBzdGF0aWMg
djg6OkxvY2FsPHY4OjpPYmplY3Q+IGluc3RhbnRpYXRlVjhPYmplY3QoVjhQcm94eSogcHJveHks
IFdyYXBwZXJUeXBlSW5mbyosIHZvaWQqIGltcGwpOwogCi0gICAgICAgIHN0YXRpYyB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+IGdldFdyYXBwZXIoTm9kZSogbm9kZSkKKyAgICAgICAgc3RhdGljIHY4
OjpIYW5kbGU8djg6Ok9iamVjdD4gZ2V0RXhpc3RpbmdXcmFwcGVyKE5vZGUqIG5vZGUpCiAgICAg
ICAgIHsKICAgICAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgICAgICAgICBp
ZiAoTElLRUxZKCFJc29sYXRlZFdvcmxkOjpjb3VudCgpKSkgewogICAgICAgICAgICAgICAgIHY4
OjpQZXJzaXN0ZW50PHY4OjpPYmplY3Q+KiB3cmFwcGVyID0gbm9kZS0+d3JhcHBlcigpOwotICAg
ICAgICAgICAgICAgIGlmICh3cmFwcGVyKQorICAgICAgICAgICAgICAgIGlmIChMSUtFTFkoISF3
cmFwcGVyKSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuICp3cmFwcGVyOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgcmV0dXJuIGdldEV4aXN0aW5nV3JhcHBlclNsb3cobm9kZSk7Cisg
ICAgICAgIH0KKworICAgICAgICBzdGF0aWMgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IGdldFdyYXBw
ZXIoTm9kZSogbm9kZSkKKyAgICAgICAgeworICAgICAgICAgICAgQVNTRVJUKGlzTWFpblRocmVh
ZCgpKTsKKyAgICAgICAgICAgIGlmIChMSUtFTFkoIUlzb2xhdGVkV29ybGQ6OmNvdW50KCkpKSB7
CisgICAgICAgICAgICAgICAgdjg6OlBlcnNpc3RlbnQ8djg6Ok9iamVjdD4qIHdyYXBwZXIgPSBu
b2RlLT53cmFwcGVyKCk7CisgICAgICAgICAgICAgICAgaWYgKExJS0VMWSghIXdyYXBwZXIpKQog
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gKndyYXBwZXI7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICByZXR1cm4gZ2V0V3JhcHBlclNsb3cobm9kZSk7CiAgICAgICAgIH0KIAogICAgIHBy
aXZhdGU6Ci0gICAgICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGdldFdyYXBwZXJT
bG93KE5vZGUqKTsKKyAgICAgICAgc3RhdGljIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gZ2V0RXhp
c3RpbmdXcmFwcGVyU2xvdyhOb2RlKik7CisgICAgICAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpW
YWx1ZT4gZ2V0V3JhcHBlclNsb3coTm9kZSopOwogICAgIH07CiAKIH0KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vZGVDdXN0b20uY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOE5vZGVDdXN0b20uY3BwCShyZXZp
c2lvbiAxMDcxNjEpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhOb2Rl
Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM3LDcgKzEzNyw3IEBAIHY4OjpIYW5kbGU8
djg6OlZhbHVlPiB0b1Y4U2xvdyhOb2RlKiBpbXAKICAgICAgICAgcmV0dXJuIHY4OjpOdWxsKCk7
CiAKICAgICBpZiAoIWZvcmNlTmV3T2JqZWN0KSB7Ci0gICAgICAgIHY4OjpIYW5kbGU8djg6OlZh
bHVlPiB3cmFwcGVyID0gVjhET01XcmFwcGVyOjpnZXRXcmFwcGVyKGltcGwpOworICAgICAgICB2
ODo6SGFuZGxlPHY4OjpWYWx1ZT4gd3JhcHBlciA9IFY4RE9NV3JhcHBlcjo6Z2V0RXhpc3RpbmdX
cmFwcGVyKGltcGwpOwogICAgICAgICBpZiAoIXdyYXBwZXIuSXNFbXB0eSgpKQogICAgICAgICAg
ICAgcmV0dXJuIHdyYXBwZXI7CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>