<?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>103367</bug_id>
          
          <creation_ts>2012-11-26 22:40:50 -0800</creation_ts>
          <short_desc>[V8] Remove V8StringResource::m_string</short_desc>
          <delta_ts>2013-09-01 10:32:46 -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 JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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>103331</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>andersca</cc>
    
    <cc>japhet</cc>
    
    <cc>jochen</cc>
    
    <cc>ojan</cc>
    
    <cc>rjkroege</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>776358</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-26 22:40:50 -0800</bug_when>
    <thetext>V8StringResource::m_string can be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776359</commentid>
    <comment_count>1</comment_count>
      <attachid>176178</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-26 22:41:37 -0800</bug_when>
    <thetext>Created attachment 176178
micro benchmarks

Micro benchmarks to confirm that this change won&apos;t regress performance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776367</commentid>
    <comment_count>2</comment_count>
      <attachid>176179</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-26 22:47:29 -0800</bug_when>
    <thetext>Created attachment 176179
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776387</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-26 23:00:46 -0800</bug_when>
    <thetext>Thanks for running the microbenchmarks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776394</commentid>
    <comment_count>4</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-26 23:08:46 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Thanks for running the microbenchmarks.

It&apos;s difficult to statically predict performance of a String =&gt; AtomicString conversion.

  String ==(a)==&gt; AtomicString
  AtomicString ====&gt; String ==(b)==&gt; AtomicString

(a) is slow, but (b) is fast. In case of (b), since String knows that its StringImpl is already stored as an AtomicString (i.e. m_impl-&gt;isAtomic() returns true), (b) goes super fast.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776597</commentid>
    <comment_count>5</comment_count>
      <attachid>176179</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-27 04:05:50 -0800</bug_when>
    <thetext>Comment on attachment 176179
Patch

Looks like a couple of tests are failing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776676</commentid>
    <comment_count>6</comment_count>
      <attachid>176249</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-27 05:53:24 -0800</bug_when>
    <thetext>Created attachment 176249
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776745</commentid>
    <comment_count>7</comment_count>
      <attachid>176249</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-27 07:50:55 -0800</bug_when>
    <thetext>Comment on attachment 176249
patch for landing

Clearing flags on attachment: 176249

Committed r135862: &lt;http://trac.webkit.org/changeset/135862&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776746</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-27 07:50:59 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776817</commentid>
    <comment_count>9</comment_count>
    <who name="Robert Kroeger">rjkroege</who>
    <bug_when>2012-11-27 08:57:00 -0800</bug_when>
    <thetext>fast/workers/worker-exception-during-navigation.html started failing on Linux 32 shortly after this patch landed.

crash log for DumpRenderTree (pid 11503):
STDOUT: &lt;empty&gt;
STDERR: 
STDERR: #
STDERR: # Fatal error in v8::V8::AddMessageListener()
STDERR: # Error initializing V8
STDERR: #
STDERR:</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776821</commentid>
    <comment_count>10</comment_count>
    <who name="Robert Kroeger">rjkroege</who>
    <bug_when>2012-11-27 09:02:18 -0800</bug_when>
    <thetext>I perhaps pressed commit too soon. The crash disappeared.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779616</commentid>
    <comment_count>11</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-29 17:12:28 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; fast/workers/worker-exception-during-navigation.html started failing on Linux 32 shortly after this patch landed.
&gt; 
&gt; crash log for DumpRenderTree (pid 11503):
&gt; STDOUT: &lt;empty&gt;
&gt; STDERR: 
&gt; STDERR: #
&gt; STDERR: # Fatal error in v8::V8::AddMessageListener()
&gt; STDERR: # Error initializing V8
&gt; STDERR: #
&gt; STDERR:

We&apos;ve been observing this failure on bots:
http://build.chromium.org/p/chromium.webkit/builders/WebKit%20%28Content%20Shell%29%20Linux/builds/2696/steps/webkit_tests/logs/stdio

I couldn&apos;t reproduce it locally.

I&apos;m not sure if this patch (r135862) is a culprit. r135497 might be the real culprit. To confirm it, let me roll out r135862.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779619</commentid>
    <comment_count>12</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-29 17:14:26 -0800</bug_when>
    <thetext>Reverted r135862 for reason:

We&apos;ve been observing &apos;Fatal error in v8::V8::AddMessageListener()&apos; in bots

Committed r136188: &lt;http://trac.webkit.org/changeset/136188&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780541</commentid>
    <comment_count>13</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-30 16:45:45 -0800</bug_when>
    <thetext>FWIW, this was also a ~10% regression on some tests:

http://build.chromium.org/f/chromium/perf/mac-release-10.6-webkit-latest/dromaeo_domcorequery/report.html?rev=170427&amp;graph=dom_query_getElementById__not_in_document_&amp;trace=score&amp;history=100

http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/dromaeo_domcorequery/report.html?rev=170427&amp;graph=dom_query_getElementById__not_in_document_&amp;trace=score&amp;history=150

http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/dromaeo_domcorequery/report.html?rev=170427&amp;graph=dom_query&amp;trace=score&amp;history=100

http://build.chromium.org/f/chromium/perf/mac-release-10.6-webkit-latest/dromaeo_domcoreattr/report.html?rev=170427&amp;graph=dom_attr_getAttribute&amp;trace=score&amp;history=100

http://build.chromium.org/f/chromium/perf/linux-release-webkit-latest/dromaeo_domcoreattr/report.html?rev=170427&amp;graph=dom_attr_setAttribute&amp;trace=score&amp;history=100

http://build.chromium.org/f/chromium/perf/mac-release-10.6-webkit-latest/dromaeo_domcoreattr/report.html?rev=170427&amp;graph=dom_attr_setAttribute&amp;trace=score&amp;history=100

And a bunch of others.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>923507</commentid>
    <comment_count>14</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-01 10:32:46 -0700</bug_when>
    <thetext>V8 is gone.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>176178</attachid>
            <date>2012-11-26 22:41:37 -0800</date>
            <delta_ts>2012-11-26 22:41:37 -0800</delta_ts>
            <desc>micro benchmarks</desc>
            <filename>perf-test.html</filename>
            <type>text/html</type>
            <size>2603</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8c2NyaXB0PgpmdW5jdGlvbiBydW4odGl0bGUsIHJlcGVhdE51bSwgZnVu
Yywgcm91bmRzKSB7CiAgdmFyIHJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1
bHQiKTsKICBpZiAoIXJlc3VsdCkgewogICAgdmFyIHJlc3VsdCA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOwogICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZXN1bHQpOwogIH0K
CiAgdmFyIHJvdW5kcyA9IHJvdW5kcyB8fCA1OwogIHZhciB0aW1lcyA9IFtdOwogIGZvciAodmFy
IHIgPSAwOyByIDwgcm91bmRzOyByKyspIHsKICAgIHZhciBzdGFydCA9IERhdGUubm93KCk7CiAg
ICBmdW5jKHJlcGVhdE51bSk7CiAgICB2YXIgdGltZSA9IERhdGUubm93KCkgLSBzdGFydDsKICAg
IHRpbWVzLnB1c2godGltZSAqIDFlNiAvIHJlcGVhdE51bSk7Ci8qCiAgICByZXN1bHQuYXBwZW5k
Q2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodGltZSkpOwogICAgcmVzdWx0LmFwcGVuZENo
aWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJyIikpOwoqLwogIH0KCiAgdGltZXMuc29ydChm
dW5jdGlvbiAoYSwgYikgeyByZXR1cm4gYSAtIGI7IH0pOwogIHZhciBtZWRpYW4gPSB0aW1lc1tN
YXRoLmZsb29yKHRpbWVzLmxlbmd0aCAvIDIpXTsKICB2YXIgbWluID0gdGltZXNbMF07CiAgdmFy
IG1heCA9IHRpbWVzW3RpbWVzLmxlbmd0aCAtIDFdOwogIHZhciBzdW0gPSAwOwogIHZhciBzdW0y
ID0gMDsKICBmb3IgKHZhciBpID0gMDsgaSA8IHRpbWVzLmxlbmd0aDsgaSsrKSB7CiAgICBzdW0g
Kz0gdGltZXNbaV07CiAgICBzdW0yICs9IHRpbWVzW2ldICogdGltZXNbaV07CiAgfQogIHZhciBh
dmcgPSBzdW0gLyByb3VuZHM7CiAgdmFyIGF2Z1RvdGFsID0gYXZnICogcmVwZWF0TnVtIC8gMWU2
OwogIHZhciBzdGRldiA9IE1hdGguc3FydChzdW0yIC8gcm91bmRzIC0gYXZnICogYXZnKTsKCiAg
cmVzdWx0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRpdGxlICsgIiA6IG1l
YW49IiArIGF2Zy50b0ZpeGVkKDIpICsgIm5zLCBtaW49IiArIG1pbiArICJucywgbWVkaWFuPSIg
KyBtZWRpYW4gKyAibnMsIG1heD0iICsgbWF4ICsgIm5zLCBzdGRldj0iICsgc3RkZXYudG9GaXhl
ZCgyKSArICJucywgdG90YWw9IiArIGF2Z1RvdGFsLnRvRml4ZWQoMikgKyAibXMiKSk7CiAgcmVz
dWx0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJyIikpOwp9Cjwvc2NyaXB0
Pgo8L2hlYWQ+Cjxib2R5Pgo8c2NyaXB0Pgp2YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiZGl2Iik7CgpydW4oImRpdi5pZCA9IDI0IiwgMTAwMDAwMCwgZnVuY3Rpb24ocmVwZWF0TnVt
KSB7CiAgdmFyIGxvY2FsRGl2ID0gZGl2OwogIGZvciAodmFyIGogPSAwOyBqIDwgcmVwZWF0TnVt
OyBqKyspIHsKICAgIGxvY2FsRGl2LmlkID0gMjQ7CiAgfQp9LCAxMCk7CgpydW4oImRpdi5pZCA9
ICcyNCciLCAxMDAwMDAwLCBmdW5jdGlvbihyZXBlYXROdW0pIHsKICB2YXIgbG9jYWxEaXYgPSBk
aXY7CiAgZm9yICh2YXIgaiA9IDA7IGogPCByZXBlYXROdW07IGorKykgewogICAgbG9jYWxEaXYu
aWQgPSAnMjQnOwogIH0KfSwgMTApOwoKcnVuKCJkaXYuaWQgPSAyNDAiLCAxMDAwMDAwLCBmdW5j
dGlvbihyZXBlYXROdW0pIHsKICB2YXIgbG9jYWxEaXYgPSBkaXY7CiAgZm9yICh2YXIgaiA9IDA7
IGogPCByZXBlYXROdW07IGorKykgewogICAgbG9jYWxEaXYuaWQgPSAyNDA7CiAgfQp9LCAxMCk7
CgpydW4oImRpdi5pZCA9ICcyNDAnIiwgMTAwMDAwMCwgZnVuY3Rpb24ocmVwZWF0TnVtKSB7CiAg
dmFyIGxvY2FsRGl2ID0gZGl2OwogIGZvciAodmFyIGogPSAwOyBqIDwgcmVwZWF0TnVtOyBqKysp
IHsKICAgIGxvY2FsRGl2LmlkID0gJzI0MCc7CiAgfQp9LCAxMCk7CgpydW4oImRpdi5jbGFzc05h
bWUgPSAyNCIsIDEwMDAwMDAsIGZ1bmN0aW9uKHJlcGVhdE51bSkgewogIHZhciBsb2NhbERpdiA9
IGRpdjsKICBmb3IgKHZhciBqID0gMDsgaiA8IHJlcGVhdE51bTsgaisrKSB7CiAgICBsb2NhbERp
di5jbGFzc05hbWUgPSAyNDsKICB9Cn0sIDEwKTsKCnJ1bigiZGl2LmNsYXNzTmFtZSA9ICcyNCci
LCAxMDAwMDAwLCBmdW5jdGlvbihyZXBlYXROdW0pIHsKICB2YXIgbG9jYWxEaXYgPSBkaXY7CiAg
Zm9yICh2YXIgaiA9IDA7IGogPCByZXBlYXROdW07IGorKykgewogICAgbG9jYWxEaXYuY2xhc3NO
YW1lID0gJzI0JzsKICB9Cn0sIDEwKTsKCnJ1bigiZGl2LmNsYXNzTmFtZSA9IDI0MCIsIDEwMDAw
MDAsIGZ1bmN0aW9uKHJlcGVhdE51bSkgewogIHZhciBsb2NhbERpdiA9IGRpdjsKICBmb3IgKHZh
ciBqID0gMDsgaiA8IHJlcGVhdE51bTsgaisrKSB7CiAgICBsb2NhbERpdi5jbGFzc05hbWUgPSAy
NDA7CiAgfQp9LCAxMCk7CgpydW4oImRpdi5jbGFzc05hbWUgPSAnMjQwJyIsIDEwMDAwMDAsIGZ1
bmN0aW9uKHJlcGVhdE51bSkgewogIHZhciBsb2NhbERpdiA9IGRpdjsKICBmb3IgKHZhciBqID0g
MDsgaiA8IHJlcGVhdE51bTsgaisrKSB7CiAgICBsb2NhbERpdi5jbGFzc05hbWUgPSAnMjQwJzsK
ICB9Cn0sIDEwKTsKPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176179</attachid>
            <date>2012-11-26 22:47:29 -0800</date>
            <delta_ts>2012-11-27 05:53:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103367-20121127154506.patch</filename>
            <type>text/plain</type>
            <size>6671</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1ODE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWIwYTQwMGViMzI1Njli
YTg1OTQ3NjY2OGIxNmNhYjNkNDJiY2U5ZS4uYzViMjU2NmE0M2EyM2U3YWM3MTY5ZmEwYzJkODEz
MGFjZTYzZDg0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDMzIEBACiAyMDEyLTExLTI2ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KIAorICAgICAgICBbVjhdIFJlbW92ZSBW
OFN0cmluZ1Jlc291cmNlOjptX3N0cmluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMzY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBjbGVhbnMgdXAgVjhTdHJpbmdSZXNvdXJjZSBh
bmQgcmVtb3ZlcyBWOFN0cmluZ1Jlc291cmNlOjptX3N0cmluZy4KKyAgICAgICAgVGhpcyBwYXRj
aCB3b24ndCBjaGFuZ2UgcGVyZm9ybWFuY2UuIChUaGlzIHBhdGNoIGp1c3QgYWRkcyBvbmUgcmVk
dW5kYW50IElzU3RyaW5nKCkKKyAgICAgICAgY2hlY2sgYW5kIG9uZSBJc0ludDMyKCkgY2hlY2su
KSBJIGNvbmZpcm1lZCBubyBwZXJmb3JtYW5jZSByZWdyZXNzaW9uIGluIG1pY3JvIGJlbmNobWFy
a3MKKyAgICAgICAgKGh0dHBzOi8vYnVncy53ZWJraXQub3JnL2F0dGFjaG1lbnQuY2dpP2lkPTE3
NjE3OCkuCisKKyAgICAgICAgTm8gdGVzdHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAg
ICAgICAqIGJpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjp2OE5v
blN0cmluZ1ZhbHVlVG9XZWJDb3JlU3RyaW5nKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFN0
cmluZ1Jlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmludDMyVG9XZWJDb3JlU3RyaW5n
RmFzdCk6CisgICAgICAgIChXZWJDb3JlOjpTdHJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6QXRv
bWljU3RyaW5nKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4
U3RyaW5nUmVzb3VyY2UuaDoKKyAgICAgICAgKFdlYkNvcmU6OlY4U3RyaW5nUmVzb3VyY2U6OlY4
U3RyaW5nUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6VjhTdHJpbmdSZXNvdXJjZTo6cHJl
cGFyZUJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6VjhTdHJpbmdSZXNvdXJjZTo6dG9TdHJpbmcp
OgorICAgICAgICAoVjhTdHJpbmdSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjo6OnByZXBh
cmUpOgorCisyMDEyLTExLTI2ICBLZW50YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4K
KwogICAgICAgICBbVjhdIFJlbmFtZSBFWENFUFRJT05fQkxPQ0soKSBtYWNyb3MKICAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzM1MgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAppbmRleCBmMTk5MmY5YmY0Y2RmNDE2Nzky
NmJmNTQ1ODM2NGNhYWRhYjBmYWE4Li4wYTExZmYyMzg5ZWIxMjE0Y2ZiN2RiM2JkZjc3YzgyYTk4
Mjg2MzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAKQEAgLTEw
MCw3ICsxMDAsNyBAQCBzdGF0aWMgU3RyaW5nIHY4Tm9uU3RyaW5nVmFsdWVUb1dlYkNvcmVTdHJp
bmcodjg6OkhhbmRsZTx2ODo6VmFsdWU+IG9iamVjdCkKIHsKICAgICBBU1NFUlQoIW9iamVjdC0+
SXNTdHJpbmcoKSk7CiAgICAgaWYgKG9iamVjdC0+SXNJbnQzMigpKQotICAgICAgICByZXR1cm4g
aW50MzJUb1dlYkNvcmVTdHJpbmcob2JqZWN0LT5JbnQzMlZhbHVlKCkpOworICAgICAgICByZXR1
cm4gaW50MzJUb1dlYkNvcmVTdHJpbmc8U3RyaW5nPihvYmplY3QtPkludDMyVmFsdWUoKSk7CiAK
ICAgICB2ODo6VHJ5Q2F0Y2ggYmxvY2s7CiAgICAgdjg6OkhhbmRsZTx2ODo6U3RyaW5nPiB2OFN0
cmluZyA9IG9iamVjdC0+VG9TdHJpbmcoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4U3RyaW5nUmVzb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
djgvVjhTdHJpbmdSZXNvdXJjZS5jcHAKaW5kZXggMzcxMzkxZDJiOTU4YzljYTc4ZGE3ZmQzNmU4
MDRjNTc2MTY4ZjQ5OS4uZGY5YzhhMGMzNjkyODRhODg2MzVlNjIyM2MzODc5YmQ0NjVlYTI2NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhTdHJpbmdSZXNvdXJjZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhTdHJpbmdSZXNvdXJjZS5jcHAK
QEAgLTE5MCw2ICsxOTAsOCBAQCBTdHJpbmcgaW50MzJUb1dlYkNvcmVTdHJpbmdGYXN0KGludCB2
YWx1ZSkKIAogICAgIC8vIE1vc3QgbnVtYmVycyB1c2VkIGFyZSA8PSAxMDAuIEV2ZW4gaWYgdGhl
eSBhcmVuJ3QgdXNlZCB0aGVyZSdzIHZlcnkgbGl0dGxlIGNvc3QgaW4gdXNpbmcgdGhlIHNwYWNl
LgogICAgIGNvbnN0IGludCBrTG93TnVtYmVycyA9IDEwMDsKKworICAgIC8vIEZJWE1FOiBTdG9y
ZSBsb3dOdW1iZXJzIGluIFY4UGVySXNvbGF0ZURhdGEgc28gdGhhdCB3b3JrZXJzIGNhbiBhbHNv
IHVzZSB0aGVtLgogICAgIERFRklORV9TVEFUSUNfTE9DQUwoVmVjdG9yPEF0b21pY1N0cmluZz4s
IGxvd051bWJlcnMsIChrTG93TnVtYmVycyArIDEpKTsKICAgICBTdHJpbmcgd2ViQ29yZVN0cmlu
ZzsKICAgICBpZiAoMCA8PSB2YWx1ZSAmJiB2YWx1ZSA8PSBrTG93TnVtYmVycykgewpAQCAtMjA0
LDcgKzIwNiw3IEBAIFN0cmluZyBpbnQzMlRvV2ViQ29yZVN0cmluZ0Zhc3QoaW50IHZhbHVlKQog
ICAgIHJldHVybiB3ZWJDb3JlU3RyaW5nOwogfQogCi1TdHJpbmcgaW50MzJUb1dlYkNvcmVTdHJp
bmcoaW50IHZhbHVlKQordGVtcGxhdGU8PiBTdHJpbmcgaW50MzJUb1dlYkNvcmVTdHJpbmc8U3Ry
aW5nPihpbnQgdmFsdWUpCiB7CiAgICAgLy8gSWYgd2UgYXJlIG9uIHRoZSBtYWluIHRocmVhZCAo
dGhpcyBzaG91bGQgYWx3YXlzIHRydWUgZm9yIG5vbi13b3JrZXJzKSwgY2FsbCB0aGUgZmFzdGVy
IG9uZS4KICAgICBpZiAoaXNNYWluVGhyZWFkKCkpCkBAIC0yMTIsNCArMjE0LDkgQEAgU3RyaW5n
IGludDMyVG9XZWJDb3JlU3RyaW5nKGludCB2YWx1ZSkKICAgICByZXR1cm4gU3RyaW5nOjpudW1i
ZXIodmFsdWUpOwogfQogCit0ZW1wbGF0ZTw+IEF0b21pY1N0cmluZyBpbnQzMlRvV2ViQ29yZVN0
cmluZzxBdG9taWNTdHJpbmc+KGludCB2YWx1ZSkKK3sKKyAgICByZXR1cm4gQXRvbWljU3RyaW5n
KGludDMyVG9XZWJDb3JlU3RyaW5nPFN0cmluZz4odmFsdWUpKTsKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhTdHJp
bmdSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhTdHJpbmdSZXNvdXJj
ZS5oCmluZGV4IDZiNmJlODc3NjU5Y2EyNzAxOGNiYWIwYTY3M2I2MDdjOGZjODFlMzkuLmY3NDNl
NDk3ZjZhMjA2OTNjZmJjODQ1MTQ5YjdmYWNhNzExZDg1NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4U3RyaW5nUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy92OC9WOFN0cmluZ1Jlc291cmNlLmgKQEAgLTE0Miw3ICsxNDIsOCBAQCBlbnVt
IEV4dGVybmFsTW9kZSB7CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBTdHJpbmdUeXBlPgogU3RyaW5n
VHlwZSB2OFN0cmluZ1RvV2ViQ29yZVN0cmluZyh2ODo6SGFuZGxlPHY4OjpTdHJpbmc+LCBFeHRl
cm5hbE1vZGUpOwotU3RyaW5nIGludDMyVG9XZWJDb3JlU3RyaW5nKGludCB2YWx1ZSk7Cit0ZW1w
bGF0ZSA8dHlwZW5hbWUgU3RyaW5nVHlwZT4KK1N0cmluZ1R5cGUgaW50MzJUb1dlYkNvcmVTdHJp
bmcoaW50IHZhbHVlKTsKIAogLy8gVjhTdHJpbmdSZXNvdXJjZSBpcyBhbiBhZGFwdGVyIGNsYXNz
IHRoYXQgY29udmVydHMgVjggdmFsdWVzIHRvIFN0cmluZ3MKIC8vIG9yIEF0b21pY1N0cmluZ3Mg
YXMgYXBwcm9wcmlhdGUsIHVzaW5nIG11bHRpcGxlIHR5cGVjYXN0IG9wZXJhdG9ycy4KQEAgLTE1
OCw3ICsxNTksNiBAQCBwdWJsaWM6CiAgICAgVjhTdHJpbmdSZXNvdXJjZSh2ODo6TG9jYWw8djg6
OlZhbHVlPiBvYmplY3QpCiAgICAgICAgIDogbV92OE9iamVjdChvYmplY3QpCiAgICAgICAgICwg
bV9tb2RlKEV4dGVybmFsaXplKQotICAgICAgICAsIG1fc3RyaW5nKCkKICAgICB7CiAgICAgfQog
CkBAIC0xNjksMTcgKzE2OSwxMCBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIGJvb2wgcHJlcGFy
ZUJhc2UoKQogICAgIHsKLSAgICAgICAgaWYgKG1fdjhPYmplY3QuSXNFbXB0eSgpKQotICAgICAg
ICAgICAgcmV0dXJuIHRydWU7Ci0KLSAgICAgICAgaWYgKExJS0VMWShtX3Y4T2JqZWN0LT5Jc1N0
cmluZygpKSkKKyAgICAgICAgQVNTRVJUKCFtX3Y4T2JqZWN0LklzRW1wdHkoKSk7CisgICAgICAg
IGlmIChMSUtFTFkobV92OE9iamVjdC0+SXNTdHJpbmcoKSB8fCBtX3Y4T2JqZWN0LT5Jc0ludDMy
KCkpKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICAgICAgaWYgKExJS0VMWShtX3Y4
T2JqZWN0LT5Jc0ludDMyKCkpKSB7Ci0gICAgICAgICAgICBzZXRTdHJpbmcoaW50MzJUb1dlYkNv
cmVTdHJpbmcobV92OE9iamVjdC0+SW50MzJWYWx1ZSgpKSk7Ci0gICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKLSAgICAgICAgfQotCiAgICAgICAgIG1fbW9kZSA9IERvTm90RXh0ZXJuYWxpemU7CiAg
ICAgICAgIHY4OjpUcnlDYXRjaCBibG9jazsKICAgICAgICAgbV92OE9iamVjdCA9IG1fdjhPYmpl
Y3QtPlRvU3RyaW5nKCk7CkBAIC0xOTEsMzUgKzE4NCwzMiBAQCBwcml2YXRlOgogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICB9CiAKLSAgICB2b2lkIHNldFN0cmluZyhjb25zdCBTdHJpbmcmIHN0
cmluZykKLSAgICB7Ci0gICAgICAgIG1fc3RyaW5nID0gc3RyaW5nOwotICAgICAgICBtX3Y4T2Jq
ZWN0LkNsZWFyKCk7IC8vIFRvIHNpZ25hbCB0aGF0IFN0cmluZyBpcyByZWFkeS4KLSAgICB9Ci0K
ICAgICB0ZW1wbGF0ZSA8Y2xhc3MgU3RyaW5nVHlwZT4KICAgICBTdHJpbmdUeXBlIHRvU3RyaW5n
KCkKICAgICB7Ci0gICAgICAgIGlmIChMSUtFTFkoIW1fdjhPYmplY3QuSXNFbXB0eSgpKSkKLSAg
ICAgICAgICAgIHJldHVybiB2OFN0cmluZ1RvV2ViQ29yZVN0cmluZzxTdHJpbmdUeXBlPihtX3Y4
T2JqZWN0LkFzPHY4OjpTdHJpbmc+KCksIG1fbW9kZSk7Ci0KLSAgICAgICAgcmV0dXJuIFN0cmlu
Z1R5cGUobV9zdHJpbmcpOworICAgICAgICBpZiAobV92OE9iamVjdC5Jc0VtcHR5KCkpCisgICAg
ICAgICAgICByZXR1cm4gU3RyaW5nVHlwZSgiIik7CisgICAgICAgIGlmIChtX3Y4T2JqZWN0LT5J
c0ludDMyKCkpCisgICAgICAgICAgICByZXR1cm4gaW50MzJUb1dlYkNvcmVTdHJpbmc8U3RyaW5n
VHlwZT4obV92OE9iamVjdC0+SW50MzJWYWx1ZSgpKTsKKyAgICAgICAgQVNTRVJUKG1fdjhPYmpl
Y3QtPklzU3RyaW5nKCkpOworICAgICAgICByZXR1cm4gdjhTdHJpbmdUb1dlYkNvcmVTdHJpbmc8
U3RyaW5nVHlwZT4obV92OE9iamVjdC5Bczx2ODo6U3RyaW5nPigpLCBtX21vZGUpOwogICAgIH0K
IAogICAgIHY4OjpMb2NhbDx2ODo6VmFsdWU+IG1fdjhPYmplY3Q7CiAgICAgRXh0ZXJuYWxNb2Rl
IG1fbW9kZTsKLSAgICBTdHJpbmcgbV9zdHJpbmc7CiB9OwogCiB0ZW1wbGF0ZTw+IGlubGluZSBi
b29sIFY4U3RyaW5nUmVzb3VyY2U8RGVmYXVsdE1vZGU+OjpwcmVwYXJlKCkKIHsKKyAgICBpZiAo
bV92OE9iamVjdC5Jc0VtcHR5KCkpCisgICAgICAgIHJldHVybiB0cnVlOwogICAgIHJldHVybiBw
cmVwYXJlQmFzZSgpOwogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBib29sIFY4U3RyaW5nUmVzb3Vy
Y2U8V2l0aE51bGxDaGVjaz46OnByZXBhcmUoKQogewogICAgIGlmIChtX3Y4T2JqZWN0LklzRW1w
dHkoKSB8fCBtX3Y4T2JqZWN0LT5Jc051bGwoKSkgewotICAgICAgICBzZXRTdHJpbmcoU3RyaW5n
KCkpOworICAgICAgICBtX3Y4T2JqZWN0LkNsZWFyKCk7CiAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KICAgICByZXR1cm4gcHJlcGFyZUJhc2UoKTsKQEAgLTIyOCw3ICsyMTgsNyBAQCB0ZW1w
bGF0ZTw+IGlubGluZSBib29sIFY4U3RyaW5nUmVzb3VyY2U8V2l0aE51bGxDaGVjaz46OnByZXBh
cmUoKQogdGVtcGxhdGU8PiBpbmxpbmUgYm9vbCBWOFN0cmluZ1Jlc291cmNlPFdpdGhVbmRlZmlu
ZWRPck51bGxDaGVjaz46OnByZXBhcmUoKQogewogICAgIGlmIChtX3Y4T2JqZWN0LklzRW1wdHko
KSB8fCBtX3Y4T2JqZWN0LT5Jc051bGwoKSB8fCBtX3Y4T2JqZWN0LT5Jc1VuZGVmaW5lZCgpKSB7
Ci0gICAgICAgIHNldFN0cmluZyhTdHJpbmcoKSk7CisgICAgICAgIG1fdjhPYmplY3QuQ2xlYXIo
KTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJldHVybiBwcmVwYXJlQmFzZSgp
Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176249</attachid>
            <date>2012-11-27 05:53:24 -0800</date>
            <delta_ts>2012-11-27 07:50:55 -0800</delta_ts>
            <desc>patch for landing</desc>
            <filename>bug-103367-20121127225100.patch</filename>
            <type>text/plain</type>
            <size>6614</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1ODQ3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzA0OTlkM2E3YzhkMjdm
MGJjM2ZkOWJhYjIwYzRiNzVkZDdjY2Q4OC4uODNlMTBhYTYxZmM0MGRkOGU3ZjdiYjQ3YWU4Mjlj
Mzc5NjA2YTBkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDEyLTExLTI2ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIFJlbW92ZSBW
OFN0cmluZ1Jlc291cmNlOjptX3N0cmluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMzY3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0
aC4KKworICAgICAgICBUaGlzIHBhdGNoIGNsZWFucyB1cCBWOFN0cmluZ1Jlc291cmNlIGFuZCBy
ZW1vdmVzIFY4U3RyaW5nUmVzb3VyY2U6Om1fc3RyaW5nLgorICAgICAgICBUaGlzIHBhdGNoIHdv
bid0IGNoYW5nZSBwZXJmb3JtYW5jZS4gKFRoaXMgcGF0Y2gganVzdCBhZGRzIG9uZSByZWR1bmRh
bnQgSXNTdHJpbmcoKQorICAgICAgICBjaGVjayBhbmQgb25lIElzSW50MzIoKSBjaGVjay4pIEkg
Y29uZmlybWVkIG5vIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb24gaW4gbWljcm8gYmVuY2htYXJrcwor
ICAgICAgICAoaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvYXR0YWNobWVudC5jZ2k/aWQ9MTc2MTc4
KS4KKworICAgICAgICBObyB0ZXN0cy4gTm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAg
ICogYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnY4Tm9uU3Ry
aW5nVmFsdWVUb1dlYkNvcmVTdHJpbmcpOgorICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4U3RyaW5n
UmVzb3VyY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6aW50MzJUb1dlYkNvcmVTdHJpbmdGYXN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0cmluZyk6CisgICAgICAgIChXZWJDb3JlOjpBdG9taWNT
dHJpbmcpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogYmluZGluZ3MvdjgvVjhTdHJp
bmdSZXNvdXJjZS5oOgorICAgICAgICAoV2ViQ29yZTo6VjhTdHJpbmdSZXNvdXJjZTo6VjhTdHJp
bmdSZXNvdXJjZSk6CisgICAgICAgIChXZWJDb3JlOjpWOFN0cmluZ1Jlc291cmNlOjpwcmVwYXJl
QmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpWOFN0cmluZ1Jlc291cmNlOjp0b1N0cmluZyk6Cisg
ICAgICAgIChWOFN0cmluZ1Jlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6Ojo6cHJlcGFyZSk6
CisKIDIwMTItMTEtMjcgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQuIFJlbmFtZWQgVFJZQ0FUQ0ggPT4gVjhUUllDQVRDSC4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwCmluZGV4IGYxOTkyZjliZjRjZGY0MTY3
OTI2YmY1NDU4MzY0Y2FhZGFiMGZhYTguLjBhMTFmZjIzODllYjEyMTRjZmI3ZGIzYmRmNzdjODJh
OTgyODYzNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGlu
Zy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcApAQCAt
MTAwLDcgKzEwMCw3IEBAIHN0YXRpYyBTdHJpbmcgdjhOb25TdHJpbmdWYWx1ZVRvV2ViQ29yZVN0
cmluZyh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gb2JqZWN0KQogewogICAgIEFTU0VSVCghb2JqZWN0
LT5Jc1N0cmluZygpKTsKICAgICBpZiAob2JqZWN0LT5Jc0ludDMyKCkpCi0gICAgICAgIHJldHVy
biBpbnQzMlRvV2ViQ29yZVN0cmluZyhvYmplY3QtPkludDMyVmFsdWUoKSk7CisgICAgICAgIHJl
dHVybiBpbnQzMlRvV2ViQ29yZVN0cmluZzxTdHJpbmc+KG9iamVjdC0+SW50MzJWYWx1ZSgpKTsK
IAogICAgIHY4OjpUcnlDYXRjaCBibG9jazsKICAgICB2ODo6SGFuZGxlPHY4OjpTdHJpbmc+IHY4
U3RyaW5nID0gb2JqZWN0LT5Ub1N0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhTdHJpbmdSZXNvdXJjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOFN0cmluZ1Jlc291cmNlLmNwcAppbmRleCAzNzEzOTFkMmI5NThjOWNhNzhkYTdmZDM2
ZTgwNGM1NzYxNjhmNDk5Li5kZjljOGEwYzM2OTI4NGE4ODYzNWU2MjIzYzM4NzliZDQ2NWVhMjY2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFN0cmluZ1Jlc291cmNl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFN0cmluZ1Jlc291cmNlLmNw
cApAQCAtMTkwLDYgKzE5MCw4IEBAIFN0cmluZyBpbnQzMlRvV2ViQ29yZVN0cmluZ0Zhc3QoaW50
IHZhbHVlKQogCiAgICAgLy8gTW9zdCBudW1iZXJzIHVzZWQgYXJlIDw9IDEwMC4gRXZlbiBpZiB0
aGV5IGFyZW4ndCB1c2VkIHRoZXJlJ3MgdmVyeSBsaXR0bGUgY29zdCBpbiB1c2luZyB0aGUgc3Bh
Y2UuCiAgICAgY29uc3QgaW50IGtMb3dOdW1iZXJzID0gMTAwOworCisgICAgLy8gRklYTUU6IFN0
b3JlIGxvd051bWJlcnMgaW4gVjhQZXJJc29sYXRlRGF0YSBzbyB0aGF0IHdvcmtlcnMgY2FuIGFs
c28gdXNlIHRoZW0uCiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChWZWN0b3I8QXRvbWljU3RyaW5n
PiwgbG93TnVtYmVycywgKGtMb3dOdW1iZXJzICsgMSkpOwogICAgIFN0cmluZyB3ZWJDb3JlU3Ry
aW5nOwogICAgIGlmICgwIDw9IHZhbHVlICYmIHZhbHVlIDw9IGtMb3dOdW1iZXJzKSB7CkBAIC0y
MDQsNyArMjA2LDcgQEAgU3RyaW5nIGludDMyVG9XZWJDb3JlU3RyaW5nRmFzdChpbnQgdmFsdWUp
CiAgICAgcmV0dXJuIHdlYkNvcmVTdHJpbmc7CiB9CiAKLVN0cmluZyBpbnQzMlRvV2ViQ29yZVN0
cmluZyhpbnQgdmFsdWUpCit0ZW1wbGF0ZTw+IFN0cmluZyBpbnQzMlRvV2ViQ29yZVN0cmluZzxT
dHJpbmc+KGludCB2YWx1ZSkKIHsKICAgICAvLyBJZiB3ZSBhcmUgb24gdGhlIG1haW4gdGhyZWFk
ICh0aGlzIHNob3VsZCBhbHdheXMgdHJ1ZSBmb3Igbm9uLXdvcmtlcnMpLCBjYWxsIHRoZSBmYXN0
ZXIgb25lLgogICAgIGlmIChpc01haW5UaHJlYWQoKSkKQEAgLTIxMiw0ICsyMTQsOSBAQCBTdHJp
bmcgaW50MzJUb1dlYkNvcmVTdHJpbmcoaW50IHZhbHVlKQogICAgIHJldHVybiBTdHJpbmc6Om51
bWJlcih2YWx1ZSk7CiB9CiAKK3RlbXBsYXRlPD4gQXRvbWljU3RyaW5nIGludDMyVG9XZWJDb3Jl
U3RyaW5nPEF0b21pY1N0cmluZz4oaW50IHZhbHVlKQoreworICAgIHJldHVybiBBdG9taWNTdHJp
bmcoaW50MzJUb1dlYkNvcmVTdHJpbmc8U3RyaW5nPih2YWx1ZSkpOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFN0
cmluZ1Jlc291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFN0cmluZ1Jlc291
cmNlLmgKaW5kZXggNmI2YmU4Nzc2NTljYTI3MDE4Y2JhYjBhNjczYjYwN2M4ZmM4MWUzOS4uOTI2
ZjE4NWVlNzRjYzNjMDhmYjFlMTUzMjczM2NhNDg3MzlkNTQwZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvdjgvVjhTdHJpbmdSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3Y4L1Y4U3RyaW5nUmVzb3VyY2UuaApAQCAtMTQyLDcgKzE0Miw4IEBAIGVu
dW0gRXh0ZXJuYWxNb2RlIHsKIAogdGVtcGxhdGUgPHR5cGVuYW1lIFN0cmluZ1R5cGU+CiBTdHJp
bmdUeXBlIHY4U3RyaW5nVG9XZWJDb3JlU3RyaW5nKHY4OjpIYW5kbGU8djg6OlN0cmluZz4sIEV4
dGVybmFsTW9kZSk7Ci1TdHJpbmcgaW50MzJUb1dlYkNvcmVTdHJpbmcoaW50IHZhbHVlKTsKK3Rl
bXBsYXRlIDx0eXBlbmFtZSBTdHJpbmdUeXBlPgorU3RyaW5nVHlwZSBpbnQzMlRvV2ViQ29yZVN0
cmluZyhpbnQgdmFsdWUpOwogCiAvLyBWOFN0cmluZ1Jlc291cmNlIGlzIGFuIGFkYXB0ZXIgY2xh
c3MgdGhhdCBjb252ZXJ0cyBWOCB2YWx1ZXMgdG8gU3RyaW5ncwogLy8gb3IgQXRvbWljU3RyaW5n
cyBhcyBhcHByb3ByaWF0ZSwgdXNpbmcgbXVsdGlwbGUgdHlwZWNhc3Qgb3BlcmF0b3JzLgpAQCAt
MTU4LDcgKzE1OSw2IEBAIHB1YmxpYzoKICAgICBWOFN0cmluZ1Jlc291cmNlKHY4OjpMb2NhbDx2
ODo6VmFsdWU+IG9iamVjdCkKICAgICAgICAgOiBtX3Y4T2JqZWN0KG9iamVjdCkKICAgICAgICAg
LCBtX21vZGUoRXh0ZXJuYWxpemUpCi0gICAgICAgICwgbV9zdHJpbmcoKQogICAgIHsKICAgICB9
CiAKQEAgLTE2OSwxNyArMTY5LDEwIEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgYm9vbCBwcmVw
YXJlQmFzZSgpCiAgICAgewotICAgICAgICBpZiAobV92OE9iamVjdC5Jc0VtcHR5KCkpCi0gICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKLQotICAgICAgICBpZiAoTElLRUxZKG1fdjhPYmplY3QtPklz
U3RyaW5nKCkpKQorICAgICAgICBBU1NFUlQoIW1fdjhPYmplY3QuSXNFbXB0eSgpKTsKKyAgICAg
ICAgaWYgKExJS0VMWShtX3Y4T2JqZWN0LT5Jc1N0cmluZygpIHx8IG1fdjhPYmplY3QtPklzSW50
MzIoKSkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgICAgICBpZiAoTElLRUxZKG1f
djhPYmplY3QtPklzSW50MzIoKSkpIHsKLSAgICAgICAgICAgIHNldFN0cmluZyhpbnQzMlRvV2Vi
Q29yZVN0cmluZyhtX3Y4T2JqZWN0LT5JbnQzMlZhbHVlKCkpKTsKLSAgICAgICAgICAgIHJldHVy
biB0cnVlOwotICAgICAgICB9Ci0KICAgICAgICAgbV9tb2RlID0gRG9Ob3RFeHRlcm5hbGl6ZTsK
ICAgICAgICAgdjg6OlRyeUNhdGNoIGJsb2NrOwogICAgICAgICBtX3Y4T2JqZWN0ID0gbV92OE9i
amVjdC0+VG9TdHJpbmcoKTsKQEAgLTE5MSwzNSArMTg0LDMyIEBAIHByaXZhdGU6CiAgICAgICAg
IHJldHVybiB0cnVlOwogICAgIH0KIAotICAgIHZvaWQgc2V0U3RyaW5nKGNvbnN0IFN0cmluZyYg
c3RyaW5nKQotICAgIHsKLSAgICAgICAgbV9zdHJpbmcgPSBzdHJpbmc7Ci0gICAgICAgIG1fdjhP
YmplY3QuQ2xlYXIoKTsgLy8gVG8gc2lnbmFsIHRoYXQgU3RyaW5nIGlzIHJlYWR5LgotICAgIH0K
LQogICAgIHRlbXBsYXRlIDxjbGFzcyBTdHJpbmdUeXBlPgogICAgIFN0cmluZ1R5cGUgdG9TdHJp
bmcoKQogICAgIHsKLSAgICAgICAgaWYgKExJS0VMWSghbV92OE9iamVjdC5Jc0VtcHR5KCkpKQot
ICAgICAgICAgICAgcmV0dXJuIHY4U3RyaW5nVG9XZWJDb3JlU3RyaW5nPFN0cmluZ1R5cGU+KG1f
djhPYmplY3QuQXM8djg6OlN0cmluZz4oKSwgbV9tb2RlKTsKLQotICAgICAgICByZXR1cm4gU3Ry
aW5nVHlwZShtX3N0cmluZyk7CisgICAgICAgIGlmIChtX3Y4T2JqZWN0LklzRW1wdHkoKSkKKyAg
ICAgICAgICAgIHJldHVybiBTdHJpbmdUeXBlKCk7CisgICAgICAgIGlmIChtX3Y4T2JqZWN0LT5J
c0ludDMyKCkpCisgICAgICAgICAgICByZXR1cm4gaW50MzJUb1dlYkNvcmVTdHJpbmc8U3RyaW5n
VHlwZT4obV92OE9iamVjdC0+SW50MzJWYWx1ZSgpKTsKKyAgICAgICAgQVNTRVJUKG1fdjhPYmpl
Y3QtPklzU3RyaW5nKCkpOworICAgICAgICByZXR1cm4gdjhTdHJpbmdUb1dlYkNvcmVTdHJpbmc8
U3RyaW5nVHlwZT4obV92OE9iamVjdC5Bczx2ODo6U3RyaW5nPigpLCBtX21vZGUpOwogICAgIH0K
IAogICAgIHY4OjpMb2NhbDx2ODo6VmFsdWU+IG1fdjhPYmplY3Q7CiAgICAgRXh0ZXJuYWxNb2Rl
IG1fbW9kZTsKLSAgICBTdHJpbmcgbV9zdHJpbmc7CiB9OwogCiB0ZW1wbGF0ZTw+IGlubGluZSBi
b29sIFY4U3RyaW5nUmVzb3VyY2U8RGVmYXVsdE1vZGU+OjpwcmVwYXJlKCkKIHsKKyAgICBpZiAo
bV92OE9iamVjdC5Jc0VtcHR5KCkpCisgICAgICAgIHJldHVybiB0cnVlOwogICAgIHJldHVybiBw
cmVwYXJlQmFzZSgpOwogfQogCiB0ZW1wbGF0ZTw+IGlubGluZSBib29sIFY4U3RyaW5nUmVzb3Vy
Y2U8V2l0aE51bGxDaGVjaz46OnByZXBhcmUoKQogewogICAgIGlmIChtX3Y4T2JqZWN0LklzRW1w
dHkoKSB8fCBtX3Y4T2JqZWN0LT5Jc051bGwoKSkgewotICAgICAgICBzZXRTdHJpbmcoU3RyaW5n
KCkpOworICAgICAgICBtX3Y4T2JqZWN0LkNsZWFyKCk7CiAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgIH0KICAgICByZXR1cm4gcHJlcGFyZUJhc2UoKTsKQEAgLTIyOCw3ICsyMTgsNyBAQCB0ZW1w
bGF0ZTw+IGlubGluZSBib29sIFY4U3RyaW5nUmVzb3VyY2U8V2l0aE51bGxDaGVjaz46OnByZXBh
cmUoKQogdGVtcGxhdGU8PiBpbmxpbmUgYm9vbCBWOFN0cmluZ1Jlc291cmNlPFdpdGhVbmRlZmlu
ZWRPck51bGxDaGVjaz46OnByZXBhcmUoKQogewogICAgIGlmIChtX3Y4T2JqZWN0LklzRW1wdHko
KSB8fCBtX3Y4T2JqZWN0LT5Jc051bGwoKSB8fCBtX3Y4T2JqZWN0LT5Jc1VuZGVmaW5lZCgpKSB7
Ci0gICAgICAgIHNldFN0cmluZyhTdHJpbmcoKSk7CisgICAgICAgIG1fdjhPYmplY3QuQ2xlYXIo
KTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICAgIHJldHVybiBwcmVwYXJlQmFzZSgp
Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>