<?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>81192</bug_id>
          
          <creation_ts>2012-03-14 23:00:49 -0700</creation_ts>
          <short_desc>[Chromium][Performance] Optimize innerText and outerText in Chromium/Mac</short_desc>
          <delta_ts>2012-03-18 10:00:10 -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>HTML Editing</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="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>arv</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dmikurube</cc>
    
    <cc>koivisto</cc>
    
    <cc>mjs</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>579140</commentid>
    <comment_count>0</comment_count>
      <attachid>131989</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-14 23:00:49 -0700</bug_when>
    <thetext>Created attachment 131989
Performance test

In Mac, HTMLElement.innerText in Chromium/V8 is 3~ times slower than HTMLElement.innerText in AppleWebKit/JavaScriptCore. We should optimize it.

The results of the attached performance test in my local Mac environemnt are as follows:

- Chromium/V8: 10250.8 ms
- AppleWebKit/JavaScriptCore: 3075.4 ms</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579143</commentid>
    <comment_count>1</comment_count>
      <attachid>131990</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-14 23:04:24 -0700</bug_when>
    <thetext>Created attachment 131990
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579168</commentid>
    <comment_count>2</comment_count>
      <attachid>131994</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 00:04:26 -0700</bug_when>
    <thetext>Created attachment 131994
Updated performance test

The change improves the performance of outerText too. Here are the results in my local Mac:

- AppleWebKit/JavaScriptCore
div.innerText : 2978.4ms
div.outerText : 2944.4ms

- Chromium/V8 without the patch
div.innerText : 10050.8ms
div.outerText : 10072.2ms

- Chromium/V8 with the patch
div.innerText: 2536.4ms
div.outerText: 2714ms</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579171</commentid>
    <comment_count>3</comment_count>
      <attachid>131995</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 00:09:49 -0700</bug_when>
    <thetext>Created attachment 131995
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579280</commentid>
    <comment_count>4</comment_count>
      <attachid>131995</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2012-03-15 04:43:45 -0700</bug_when>
    <thetext>Comment on attachment 131995
Patch

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

I&apos;ll leave reviewing to Chromium people.

&gt; Source/JavaScriptCore/wtf/Platform.h:1195
&gt; +#if PLATFORM(CHROMIUM)
&gt; +#define WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY (1 &lt;&lt; 15)
&gt; +#else
&gt; +#define WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY (1 &lt;&lt; 16)
&gt; +#endif /* PLATFORM(CHROMIUM) */

This is too small for Platform.h. It should be in the function itself.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579340</commentid>
    <comment_count>5</comment_count>
      <attachid>132038</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 07:00:32 -0700</bug_when>
    <thetext>Created attachment 132038
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579350</commentid>
    <comment_count>6</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 07:14:20 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; &gt; Source/JavaScriptCore/wtf/Platform.h:1195
&gt; &gt; +#if PLATFORM(CHROMIUM)
&gt; &gt; +#define WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY (1 &lt;&lt; 15)
&gt; &gt; +#else
&gt; &gt; +#define WTF_TEXT_ITERATOR_BUFFER_INITIAL_CAPACITY (1 &lt;&lt; 16)
&gt; &gt; +#endif /* PLATFORM(CHROMIUM) */
&gt; 
&gt; This is too small for Platform.h. It should be in the function itself.

Fixed. Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579482</commentid>
    <comment_count>7</comment_count>
      <attachid>132038</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-03-15 10:25:25 -0700</bug_when>
    <thetext>Comment on attachment 132038
Patch

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

Whoa, this is an awesome patch. For a second there, I was excited that you were speeding up the setters. But even speeding up the getters so much is kick-ass!

&gt; Source/WebCore/editing/TextIterator.cpp:2515
&gt; +#if PLATFORM(CHROMIUM)

Why CHROMIUM? That is way too wide and completely mysterious. Can we narrow down the specific bit that&apos;s required?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579681</commentid>
    <comment_count>8</comment_count>
    <who name="Dai Mikurube">dmikurube</who>
    <bug_when>2012-03-15 13:33:35 -0700</bug_when>
    <thetext>(In reply to comment #7)
This issue may depend on the fact that Chromium/Mac doesn&apos;t use tcmalloc.  So I think we can narrow it down to Mac.

Great work, haraken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>579957</commentid>
    <comment_count>9</comment_count>
      <attachid>132038</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 17:39:19 -0700</bug_when>
    <thetext>Comment on attachment 132038
Patch

Thanks for comments. Let me invalidate r? for now to investigate more. A new patch is coming soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580099</commentid>
    <comment_count>10</comment_count>
      <attachid>132190</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 21:12:51 -0700</bug_when>
    <thetext>Created attachment 132190
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>580100</commentid>
    <comment_count>11</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-15 21:16:53 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; &gt; Source/WebCore/editing/TextIterator.cpp:2515
&gt; &gt; +#if PLATFORM(CHROMIUM)
&gt; 
&gt; Why CHROMIUM? That is way too wide and completely mysterious. Can we narrow down the specific bit that&apos;s required?

(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; This issue may depend on the fact that Chromium/Mac doesn&apos;t use tcmalloc.  So I think we can narrow it down to Mac.

Fixed it.

Another thing I tried is to remove plainTextToMallocAllocatedBuffer() and replace the logic with StringBuilder. While it cleaned up the code, it degraded performance by 10%.

Consequently, I just changed the initial buffer size if &quot;PLATFORM(CHROMIUM) &amp;&amp; PLATFORM(MAC)&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581218</commentid>
    <comment_count>12</comment_count>
      <attachid>132190</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-16 19:33:07 -0700</bug_when>
    <thetext>Comment on attachment 132190
Patch

Clearing flags on attachment: 132190

Committed r111109: &lt;http://trac.webkit.org/changeset/111109&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581219</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-16 19:33:12 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581405</commentid>
    <comment_count>14</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2012-03-17 19:17:08 -0700</bug_when>
    <thetext>Why was this even made a platform ifdef at all? Is there any platform where 1 &lt;&lt; 15 is worse than 1 &lt;&lt; 16? If not, we should just keep the value consistent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581406</commentid>
    <comment_count>15</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-03-17 19:20:35 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; Why was this even made a platform ifdef at all? Is there any platform where 1 &lt;&lt; 15 is worse than 1 &lt;&lt; 16? If not, we should just keep the value consistent.

Even better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581409</commentid>
    <comment_count>16</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-17 20:34:05 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; Why was this even made a platform ifdef at all? Is there any platform where 1 &lt;&lt; 15 is worse than 1 &lt;&lt; 16?

- As far as I experimented locally, 1&lt;&lt;15 is better than 1&lt;&lt;16 in Chromium/Mac. 1&lt;&lt;15 and 1&lt;&lt;16 are the same in AppleWebKit/Mac and Chromium/Linux (their performance &quot;gap&quot; exists at between 1&lt;&lt;17 and 1&lt;&lt;18).
- According to anttik (who wrote 1&lt;&lt;16 a long time ago), there was no strong reason for 1&lt;&lt;16.
- The reason why I changed 1&lt;&lt;16 to 1&lt;&lt;15 on Chromium/Mac only is that it seems the value highly depends on malloc systems and I was afraid that changing to 1&lt;&lt;15 _might_ cause performance regression in some platform.

But as you pointed, I think 1&lt;&lt;15 would not be worse than 1&lt;&lt;16 in all platforms. I&apos;ll change it to 1&lt;&lt;15 in a following patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581450</commentid>
    <comment_count>17</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-18 04:48:36 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581451</commentid>
    <comment_count>18</comment_count>
      <attachid>132490</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-03-18 04:48:40 -0700</bug_when>
    <thetext>Created attachment 132490
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581465</commentid>
    <comment_count>19</comment_count>
      <attachid>132490</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-18 10:00:03 -0700</bug_when>
    <thetext>Comment on attachment 132490
Patch

Clearing flags on attachment: 132490

Committed r111133: &lt;http://trac.webkit.org/changeset/111133&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581466</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-18 10:00:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>131989</attachid>
            <date>2012-03-14 23:00:49 -0700</date>
            <delta_ts>2012-03-14 23:00:49 -0700</delta_ts>
            <desc>Performance test</desc>
            <filename>dom_innertext.html</filename>
            <type>text/html</type>
            <size>542</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPjwvaGVhZD4KPGJvZHk+CjxkaXYgaWQ9Im5vZGUiPgo8L2Rpdj4KPGRpdiBp
ZD0icmVzdWx0Ij48L2Rpdj4KPHNjcmlwdD4KdmFyIHJlcGVhdCA9IDEwMDAwMDAwMDsKdmFyIHRl
c3ROdW0gPSA1Owp2YXIgZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vZGUiKTsKdmFy
IHJlc3VsdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKTsKCihmdW5jdGlvbihk
aXYpIHsKICB2YXIgc3VtID0gMDsKICBmb3IgKHZhciBqID0gMDsgaiA8IHRlc3ROdW07IGorKykg
ewogICAgdmFyIHN0YXJ0ID0gRGF0ZS5ub3coKTsKICAgIGRpdi5pbm5lclRleHQgPSAiZm9vIjsK
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVwZWF0IC8gMzA7IGkrKykKICAgICAgZGl2LmlubmVy
VGV4dDsKICAgIHN1bSArPSBEYXRlLm5vdygpIC0gc3RhcnQ7CiAgfQogIHJlc3VsdC5pbm5lckhU
TUwgKz0gImRpdi5pbm5lclRleHQgOiAiICsgKHN1bSAvIHRlc3ROdW0pICsgIm1zIjsKfSkoZGl2
KTsKPC9zY3JpcHQ+CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131990</attachid>
            <date>2012-03-14 23:04:24 -0700</date>
            <delta_ts>2012-03-15 00:09:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81192-20120315150423.patch</filename>
            <type>text/plain</type>
            <size>6333</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwODAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MTExM2I4NjM5OTJjYTg0OTVjN2Q3OTYxZjIxMWQ0ZTViNzk2Yzg3Li5hNjBkN2NmZWU3Njk4OWNi
NDIyNThmNDE2Y2MzZTUzZWE2NGE2OTVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzOCBAQAorMjAxMi0wMy0xNCAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgW0Nocm9taXVtXVtQZXJmb3JtYW5jZV0gT3B0aW1pemUgSFRNTEVsZW1l
bnQuaW5uZXJUZXh0IGluIENocm9taXVtL01hYworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODExOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGltcHJvdmVzIHRoZSBwZXJmb3JtYW5jZSBv
ZiBIVE1MRWxlbWVudC5pbm5lclRleHQgYnkgNC4yIHRpbWVzIG9uIENocm9taXVtL01hYy4KKyAg
ICAgICAgQSBzaW1pbGFyIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50IHdvdWxkIGJlIGFsc28gb2Jz
ZXJ2ZWQgaW4gQVBJcyB0aGF0IGFyZSB1c2luZworICAgICAgICBUZXh0SXRlcmF0b3I6OnBsYWlu
VGV4dCgpIChlLmcuIEVkaXR0aW5nLCBTcGVsbENoZWNrZXIsIENsaXBib2FyZCwgUGFzdGVib2Fy
ZCBldGMpLgorCisgICAgICAgIFRoaXMgcGF0Y2gganVzdCBjaGFuZ2VzIHRoZSBpbml0aWFsIGJ1
ZmZlciBzaXplIG9mIGEgcGxhaW4gdGV4dCBidWZmZXIuCisgICAgICAgIEFzIHNob3duIGJlbG93
LCBpbiBteSBsb2NhbCBDaHJvbWl1bS9NYWMgZW52aXJvbm1lbnQgdGhlIHBlcmZvcm1hbmNlIGNo
YW5nZXMKKyAgICAgICAgZHJhbWF0aWNhbGx5IGJldHdlZW4gMTw8MTUgYW5kIDE8PDE2LCBhbmQg
aW4gbXkgbG9jYWwgQ2hyb21pdW0vTGludXggZW52aXJvbm1lbnQKKyAgICAgICAgdGhlIHBlcmZv
cm1hbmNlIGNoYW5nZXMgYmV0d2VlbiAxPDwxNyBhbmQgMTw8MTguIEkgYW0gbm90IHlldCBzdXJl
IHdoYXQgZGV0ZXJtaW5lcworICAgICAgICB0aGVzZSBmaWd1cmVzLiBUaGlzIHBhdGNoIHNldHMg
dGhlIGJ1ZmZlciBzaXplIHRvIDE8PDE1LCBmb3IgdGhlIHRpbWUgYmVpbmcuCisKKyAgICAgICAg
UGVyZm9ybWFuY2UgdGVzdDogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvYXR0YWNobWVudC5jZ2k/
aWQ9MTMxOTg5CisKKyAgICAgICAgVGVzdCByZXN1bHRzIG9uIENocm9taXVtL01hYzoKKyAgICAg
ICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE0ID09
PiAyNDY1LjYgbXMKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQ
QUNJVFkgPSAxIDw8IDE1ID09PiAyNDQ3LjIgbXMgICA8LS0tIGFmdGVyIHRoaXMgcGF0Y2gKKyAg
ICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE2
ID09PiAxMDI1MC44IG1zICA8LS0tIGJlZm9yZSB0aGlzIHBhdGNoCisgICAgICAgIFdURl9URVhU
X0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAxNyA9PT4gMTAyNzguMiBt
cworCisgICAgICAgIFRlc3QgcmVzdWx0cyBvbiBDaHJvbWl1bS9MaW51eDoKKyAgICAgICAgV1RG
X1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE0ID09PiAxNTY5
LjggbXMKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkg
PSAxIDw8IDE1ID09PiAxNTMxLjggbXMgICA8LS0tIGFmdGVyIHRoaXMgcGF0Y2gKKyAgICAgICAg
V1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE2ID09PiAx
NTQzLjIgbXMgICA8LS0tIGJlZm9yZSB0aGlzIHBhdGNoCisgICAgICAgIFdURl9URVhUX0lURVJB
VE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAxNyA9PT4gMTU0MS42IG1zCisgICAg
ICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAxOCA9
PT4gMTI1NDAuOCBtcworICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9D
QVBBQ0lUWSA9IDEgPDwgMTkgPT0+IDEyMzQwLjggbXMKKworICAgICAgICAqIHd0Zi9QbGF0Zm9y
bS5oOgorCiAyMDEyLTAzLTE0ICBIb2pvbmcgSGFuICA8aG9qb25nLmhhbkBzYW1zdW5nLmNvbT4K
IAogICAgICAgICBSdW4gY2FjaGVGbHVzaCBwYWdlIGJ5IHBhZ2UgdG8gYXNzdXJlIG9mIGZsdXNo
aW5nIGFsbCB0aGUgcmVxdWVzdGVkIHJhbmdlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGZjY2UzOWNkNGI5ZWRl
NjQxNWRhZmU2OTY5MjcwN2Y0NTJhZjI0ODYuLjAxNmMxMGQ3NTZlZWM1ODlkN2QxY2FkNDlhMmE5
M2Q4MzIzYTQ2ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzOSBAQAorMjAxMi0wMy0xNCAgS2Vu
dGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Nocm9taXVtXVtQ
ZXJmb3JtYW5jZV0gT3B0aW1pemUgSFRNTEVsZW1lbnQuaW5uZXJUZXh0IGluIENocm9taXVtL01h
YworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODExOTIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBh
dGNoIGltcHJvdmVzIHRoZSBwZXJmb3JtYW5jZSBvZiBIVE1MRWxlbWVudC5pbm5lclRleHQgYnkg
NC4yIHRpbWVzIG9uIENocm9taXVtL01hYy4KKyAgICAgICAgQSBzaW1pbGFyIHBlcmZvcm1hbmNl
IGltcHJvdmVtZW50IHdpbGwgYmUgYWxzbyBvYnNlcnZlZCBpbiBBUElzIHRoYXQgYXJlIHVzaW5n
CisgICAgICAgIFRleHRJdGVyYXRvcjo6cGxhaW5UZXh0KCkgKGUuZy4gRWRpdHRpbmcsIFNwZWxs
Q2hlY2tlciwgQ2xpcGJvYXJkLCBQYXN0ZWJvYXJkIGV0YykuCisKKyAgICAgICAgVGhpcyBwYXRj
aCBqdXN0IGNoYW5nZXMgdGhlIGluaXRpYWwgYnVmZmVyIHNpemUgb2YgYSB0ZXh0IGJ1ZmZlciBm
b3IgcGxhaW4gdGV4dC4KKyAgICAgICAgQXMgc2hvd24gYmVsb3csIGluIG15IGxvY2FsIENocm9t
aXVtL01hYyBlbnZpcm9ubWVudCB0aGUgcGVyZm9ybWFuY2UgY2hhbmdlcworICAgICAgICBkcmFt
YXRpY2FsbHkgYmV0d2VlbiAxPDwxNSBhbmQgMTw8MTYsIGFuZCBpbiBteSBsb2NhbCBDaHJvbWl1
bS9MaW51eCBlbnZpcm9ubWVudAorICAgICAgICB0aGUgcGVyZm9ybWFuY2UgY2hhbmdlcyBiZXR3
ZWVuIDE8PDE3IGFuZCAxPDwxOC4gSSBhbSBub3QgeWV0IHN1cmUgd2hhdCBkZXRlcm1pbmVzCisg
ICAgICAgIHRoZXNlIGZpZ3VyZXMuIFRoaXMgcGF0Y2ggc2V0cyB0aGUgYnVmZmVyIHNpemUgdG8g
MTw8MTUsIC4uLmZvciB0aGUgdGltZSBiZWluZy4KKworICAgICAgICBQZXJmb3JtYW5jZSB0ZXN0
OiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9hdHRhY2htZW50LmNnaT9pZD0xMzE5ODkKKworICAg
ICAgICBUZXN0IHJlc3VsdHMgb24gQ2hyb21pdW0vTWFjOgorICAgICAgICBXVEZfVEVYVF9JVEVS
QVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTQgPT0+IDI0NjUuNiBtcworICAg
ICAgICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTUg
PT0+IDI0NDcuMiBtcyAgIDwtLS0gYWZ0ZXIgdGhpcyBwYXRjaAorICAgICAgICBXVEZfVEVYVF9J
VEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTYgPT0+IDEwMjUwLjggbXMg
IDwtLS0gYmVmb3JlIHRoaXMgcGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVS
X0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE3ID09PiAxMDI3OC4yIG1zCisKKyAgICAgICAgVGVz
dCByZXN1bHRzIG9uIENocm9taXVtL0xpbnV4OgorICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9C
VUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTQgPT0+IDE1NjkuOCBtcworICAgICAgICBX
VEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTUgPT0+IDE1
MzEuOCBtcyAgIDwtLS0gYWZ0ZXIgdGhpcyBwYXRjaAorICAgICAgICBXVEZfVEVYVF9JVEVSQVRP
Ul9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTYgPT0+IDE1NDMuMiBtcyAgIDwtLS0g
YmVmb3JlIHRoaXMgcGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJ
QUxfQ0FQQUNJVFkgPSAxIDw8IDE3ID09PiAxNTQxLjYgbXMKKyAgICAgICAgV1RGX1RFWFRfSVRF
UkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE4ID09PiAxMjU0MC44IG1zCisg
ICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAx
OSA9PT4gMTIzNDAuOCBtcworCisgICAgICAgICogZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6cGxhaW5UZXh0VG9NYWxsb2NBbGxvY2F0ZWRCdWZmZXIpOgorCiAy
MDEyLTAzLTE0ICBJZ29yIE9saXZlaXJhICA8aWdvci5vQHNpc2Euc2Ftc3VuZy5jb20+CiAKICAg
ICAgICAgU3BsaXQgdGhlIGV4dHJhIGxvZ2ljIG91dCBvZiBSZW5kZXJCbG9jazo6dXBkYXRlRmly
c3RMZXR0ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0u
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0uaAppbmRleCBlMzBlODA0NjE2
ZTIwOTU1NzJmNmM5MzM3Yzc0OTBhNzZkOTZlMDY5Li41ODM4ZGQ0YTIzMDBhYWQ3NGQ2MDNiZDZh
MDhlYzc5NjAyNTVlMjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL1Bs
YXRmb3JtLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCkBAIC0x
MTg4LDYgKzExODgsMTIgQEAKICNlbmRpZgogI2VuZGlmIC8qIFBMQVRGT1JNKENIUk9NSVVNKSAq
LwogCisjaWYgUExBVEZPUk0oQ0hST01JVU0pCisjZGVmaW5lIFdURl9URVhUX0lURVJBVE9SX0JV
RkZFUl9JTklUSUFMX0NBUEFDSVRZICgxIDw8IDE1KQorI2Vsc2UKKyNkZWZpbmUgV1RGX1RFWFRf
SVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgKDEgPDwgMTYpCisjZW5kaWYgLyogUExB
VEZPUk0oQ0hST01JVU0pICovCisKICNpZiAhZGVmaW5lZChXVEZfVVNFX1Y4KQogI2RlZmluZSBX
VEZfVVNFX1Y4IDAKICNlbmRpZiAvKiAhZGVmaW5lZChXVEZfVVNFX1Y4KSAqLwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwIGIvU291cmNlL1dlYkNv
cmUvZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwCmluZGV4IGUwYmY4YzNhMGZlNmU4YTY4MzMxM2Yx
Nzg4Yzg0YWI1ZmIwNGQ0MzUuLjhmM2VlNmI0ZDhmYWNhMzQ0Y2M3OTJhMTc2NGVlODMxMDU1ZTli
MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAKQEAgLTI1MTMsNyAr
MjUxMyw3IEBAIFVDaGFyKiBwbGFpblRleHRUb01hbGxvY0FsbG9jYXRlZEJ1ZmZlcihjb25zdCBS
YW5nZSogciwgdW5zaWduZWQmIGJ1ZmZlckxlbmd0aCwKIAogICAgIC8vIERvIHRoaXMgaW4gcGll
Y2VzIHRvIGF2b2lkIG1hc3NpdmUgcmVhbGxvY2F0aW9ucyBpZiB0aGVyZSBpcyBhIGxhcmdlIGFt
b3VudCBvZiB0ZXh0LgogICAgIC8vIFVzZSBzeXN0ZW0gbWFsbG9jIGZvciBidWZmZXJzIHNpbmNl
IHRoZXkgY2FuIGNvbnN1bWUgbG90cyBvZiBtZW1vcnkgYW5kIGN1cnJlbnQgVENNYWxsb2MgaXMg
dW5hYmxlIHJldHVybiBpdCBiYWNrIHRvIE9TLgotICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj
TWF4U2VnbWVudFNpemUgPSAxIDw8IDE2OworICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjTWF4
U2VnbWVudFNpemUgPSBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWTsK
ICAgICBidWZmZXJMZW5ndGggPSAwOwogICAgIHR5cGVkZWYgcGFpcjxVQ2hhciosIHVuc2lnbmVk
PiBUZXh0U2VnbWVudDsKICAgICBPd25QdHI8VmVjdG9yPFRleHRTZWdtZW50PiA+IHRleHRTZWdt
ZW50czsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>131994</attachid>
            <date>2012-03-15 00:04:26 -0700</date>
            <delta_ts>2012-03-15 00:04:26 -0700</delta_ts>
            <desc>Updated performance test</desc>
            <filename>dom_innertext.html</filename>
            <type>text/html</type>
            <size>802</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPjwvaGVhZD4KPGJvZHk+CjxkaXYgaWQ9Im5vZGUiPmZvbzwvZGl2Pgo8ZGl2
IGlkPSJyZXN1bHQiPjwvZGl2Pgo8c2NyaXB0Pgp2YXIgcmVwZWF0ID0gMTAwMDAwMDAwOwp2YXIg
dGVzdE51bSA9IDU7CnZhciBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm9kZSIpOwp2
YXIgcmVzdWx0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpOwoKKGZ1bmN0aW9u
KGRpdikgewogIHZhciBzdW0gPSAwOwogIGZvciAodmFyIGogPSAwOyBqIDwgdGVzdE51bTsgaisr
KSB7CiAgICB2YXIgc3RhcnQgPSBEYXRlLm5vdygpOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBy
ZXBlYXQgLyAzMDsgaSsrKQogICAgICBkaXYuaW5uZXJUZXh0OwogICAgc3VtICs9IERhdGUubm93
KCkgLSBzdGFydDsKICB9CiAgcmVzdWx0LmlubmVySFRNTCArPSAiZGl2LmlubmVyVGV4dCA6ICIg
KyAoc3VtIC8gdGVzdE51bSkgKyAibXM8YnIgLz4iOwp9KShkaXYpOwoKKGZ1bmN0aW9uKGRpdikg
ewogIHZhciBzdW0gPSAwOwogIGZvciAodmFyIGogPSAwOyBqIDwgdGVzdE51bTsgaisrKSB7CiAg
ICB2YXIgc3RhcnQgPSBEYXRlLm5vdygpOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZXBlYXQg
LyAzMDsgaSsrKQogICAgICBkaXYub3V0ZXJUZXh0OwogICAgc3VtICs9IERhdGUubm93KCkgLSBz
dGFydDsKICB9CiAgcmVzdWx0LmlubmVySFRNTCArPSAiZGl2Lm91dGVyVGV4dCA6ICIgKyAoc3Vt
IC8gdGVzdE51bSkgKyAibXM8YnIgLz4iOwp9KShkaXYpOwo8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0
bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>131995</attachid>
            <date>2012-03-15 00:09:49 -0700</date>
            <delta_ts>2012-03-15 07:00:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81192-20120315160948.patch</filename>
            <type>text/plain</type>
            <size>7048</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwODAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA5
MTExM2I4NjM5OTJjYTg0OTVjN2Q3OTYxZjIxMWQ0ZTViNzk2Yzg3Li5jZDRhNDRjY2Q4MjU0MmE2
NjliMzA0YjI5NjA5NmFmMjJhM2NmZjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw1MCBAQAorMjAxMi0wMy0xNCAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgW0Nocm9taXVtXVtQZXJmb3JtYW5jZV0gT3B0aW1pemUgaW5uZXJUZXh0
IGFuZCBvdXRlclRleHQgaW4gQ2hyb21pdW0vTWFjCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTE5MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMgaW5uZXJUZXh0IGFuZCBvdXRl
clRleHQgNCB0aW1lcyBmYXN0ZXIgb24gQ2hyb21pdW0vTWFjLgorICAgICAgICBBIHNpbWlsYXIg
cGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQgd2lsbCBiZSBhbHNvIG9ic2VydmVkIGluIEFQSXMgdGhh
dCBhcmUgdXNpbmcKKyAgICAgICAgVGV4dEl0ZXJhdG9yOjpwbGFpblRleHQoKSAoZS5nLiBFZGl0
dGluZywgU3BlbGxDaGVja2VyLCBDbGlwYm9hcmQsIFBhc3RlYm9hcmQgZXRjKS4KKworICAgICAg
ICBQZXJmb3JtYW5jZSB0ZXN0OiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9hdHRhY2htZW50LmNn
aT9pZD0xMzE5ODkKKworICAgICAgICAtIEFwcGxlV2ViS2l0L0phdmFTY3JpcHRDb3JlL01hYzoK
KyAgICAgICAgZGl2LmlubmVyVGV4dCA6IDI5NzguNG1zCisgICAgICAgIGRpdi5vdXRlclRleHQg
OiAyOTQ0LjRtcworCisgICAgICAgIC0gQ2hyb21pdW0vVjgvTWFjIHdpdGhvdXQgdGhlIHBhdGNo
OgorICAgICAgICBkaXYuaW5uZXJUZXh0IDogMTAwNTAuOG1zCisgICAgICAgIGRpdi5vdXRlclRl
eHQgOiAxMDA3Mi4ybXMKKworICAgICAgICAtIENocm9taXVtL1Y4L01hYyB3aXRoIHRoZSBwYXRj
aDoKKyAgICAgICAgZGl2LmlubmVyVGV4dDogMjUzNi40bXMKKyAgICAgICAgZGl2Lm91dGVyVGV4
dDogMjcxNG1zCisKKyAgICAgICAgVGhpcyBwYXRjaCBqdXN0IGNoYW5nZXMgdGhlIGluaXRpYWwg
YnVmZmVyIHNpemUgb2YgYSB0ZXh0IGJ1ZmZlciBmb3IgcGxhaW4gdGV4dC4KKyAgICAgICAgQXMg
c2hvd24gYmVsb3csIGluIG15IGxvY2FsIENocm9taXVtL01hYyBlbnZpcm9ubWVudCB0aGUgcGVy
Zm9ybWFuY2UgY2hhbmdlcworICAgICAgICBkcmFtYXRpY2FsbHkgYmV0d2VlbiAxPDwxNSBhbmQg
MTw8MTYsIGFuZCBpbiBteSBsb2NhbCBDaHJvbWl1bS9MaW51eCBlbnZpcm9ubWVudAorICAgICAg
ICB0aGUgcGVyZm9ybWFuY2UgY2hhbmdlcyBiZXR3ZWVuIDE8PDE3IGFuZCAxPDwxOC4gSSBhbSBu
b3QgeWV0IHN1cmUgd2hhdCBkZXRlcm1pbmVzCisgICAgICAgIHRoZXNlIGZpZ3VyZXMuIFRoaXMg
cGF0Y2ggc2V0cyB0aGUgYnVmZmVyIHNpemUgdG8gMTw8MTUsIC4uLmZvciB0aGUgdGltZSBiZWlu
Zy4KKworICAgICAgICAtIGRpdi5pbm5lclRleHQgcmVzdWx0cyBvbiBDaHJvbWl1bS9WOC9NYWM6
CisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8
PCAxNCA9PT4gMjQ2NS42IG1zCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklU
SUFMX0NBUEFDSVRZID0gMSA8PCAxNSA9PT4gMjQ0Ny4yIG1zICAgPC0tLSBhZnRlciB0aGlzIHBh
dGNoCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0g
MSA8PCAxNiA9PT4gMTAyNTAuOCBtcyAgPC0tLSBiZWZvcmUgdGhpcyBwYXRjaAorICAgICAgICBX
VEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTcgPT0+IDEw
Mjc4LjIgbXMKKworICAgICAgICAtIGRpdi5pbm5lclRleHQgcmVzdWx0cyBvbiBDaHJvbWl1bS9W
OC9MaW51eDoKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJ
VFkgPSAxIDw8IDE0ID09PiAxNTY5LjggbXMKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVG
RkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE1ID09PiAxNTMxLjggbXMgICA8LS0tIGFmdGVy
IHRoaXMgcGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQ
QUNJVFkgPSAxIDw8IDE2ID09PiAxNTQzLjIgbXMgICA8LS0tIGJlZm9yZSB0aGlzIHBhdGNoCisg
ICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAx
NyA9PT4gMTU0MS42IG1zCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFM
X0NBUEFDSVRZID0gMSA8PCAxOCA9PT4gMTI1NDAuOCBtcworICAgICAgICBXVEZfVEVYVF9JVEVS
QVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTkgPT0+IDEyMzQwLjggbXMKKwor
ICAgICAgICAqIHd0Zi9QbGF0Zm9ybS5oOgorCiAyMDEyLTAzLTE0ICBIb2pvbmcgSGFuICA8aG9q
b25nLmhhbkBzYW1zdW5nLmNvbT4KIAogICAgICAgICBSdW4gY2FjaGVGbHVzaCBwYWdlIGJ5IHBh
Z2UgdG8gYXNzdXJlIG9mIGZsdXNoaW5nIGFsbCB0aGUgcmVxdWVzdGVkIHJhbmdlcwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CmluZGV4IGZjY2UzOWNkNGI5ZWRlNjQxNWRhZmU2OTY5MjcwN2Y0NTJhZjI0ODYuLjQyOTk5YmU0
N2RhMTQ4OWNmMzY2NDY4MGVmZjIzN2EyMzhkOGU0ZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1
MSBAQAorMjAxMi0wMy0xNCAgS2VudGFybyBIYXJhICA8aGFyYWtlbkBjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgW0Nocm9taXVtXVtQZXJmb3JtYW5jZV0gT3B0aW1pemUgaW5uZXJUZXh0IGFuZCBv
dXRlclRleHQgaW4gQ2hyb21pdW0vTWFjCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD04MTE5MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMgaW5uZXJUZXh0IGFuZCBvdXRlclRleHQg
NCB0aW1lcyBmYXN0ZXIgb24gQ2hyb21pdW0vTWFjLgorICAgICAgICBBIHNpbWlsYXIgcGVyZm9y
bWFuY2UgaW1wcm92ZW1lbnQgd2lsbCBiZSBhbHNvIG9ic2VydmVkIGluIEFQSXMgdGhhdCBhcmUg
dXNpbmcKKyAgICAgICAgVGV4dEl0ZXJhdG9yOjpwbGFpblRleHQoKSAoZS5nLiBFZGl0dGluZywg
U3BlbGxDaGVja2VyLCBDbGlwYm9hcmQsIFBhc3RlYm9hcmQgZXRjKS4KKworICAgICAgICBQZXJm
b3JtYW5jZSB0ZXN0OiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9hdHRhY2htZW50LmNnaT9pZD0x
MzE5ODkKKworICAgICAgICAtIEFwcGxlV2ViS2l0L0phdmFTY3JpcHRDb3JlL01hYzoKKyAgICAg
ICAgZGl2LmlubmVyVGV4dCA6IDI5NzguNG1zCisgICAgICAgIGRpdi5vdXRlclRleHQgOiAyOTQ0
LjRtcworCisgICAgICAgIC0gQ2hyb21pdW0vVjgvTWFjIHdpdGhvdXQgdGhlIHBhdGNoOgorICAg
ICAgICBkaXYuaW5uZXJUZXh0IDogMTAwNTAuOG1zCisgICAgICAgIGRpdi5vdXRlclRleHQgOiAx
MDA3Mi4ybXMKKworICAgICAgICAtIENocm9taXVtL1Y4L01hYyB3aXRoIHRoZSBwYXRjaDoKKyAg
ICAgICAgZGl2LmlubmVyVGV4dDogMjUzNi40bXMKKyAgICAgICAgZGl2Lm91dGVyVGV4dDogMjcx
NG1zCisKKyAgICAgICAgVGhpcyBwYXRjaCBqdXN0IGNoYW5nZXMgdGhlIGluaXRpYWwgYnVmZmVy
IHNpemUgb2YgYSB0ZXh0IGJ1ZmZlciBmb3IgcGxhaW4gdGV4dC4KKyAgICAgICAgQXMgc2hvd24g
YmVsb3csIGluIG15IGxvY2FsIENocm9taXVtL01hYyBlbnZpcm9ubWVudCB0aGUgcGVyZm9ybWFu
Y2UgY2hhbmdlcworICAgICAgICBkcmFtYXRpY2FsbHkgYmV0d2VlbiAxPDwxNSBhbmQgMTw8MTYs
IGFuZCBpbiBteSBsb2NhbCBDaHJvbWl1bS9MaW51eCBlbnZpcm9ubWVudAorICAgICAgICB0aGUg
cGVyZm9ybWFuY2UgY2hhbmdlcyBiZXR3ZWVuIDE8PDE3IGFuZCAxPDwxOC4gSSBhbSBub3QgeWV0
IHN1cmUgd2hhdCBkZXRlcm1pbmVzCisgICAgICAgIHRoZXNlIGZpZ3VyZXMuIFRoaXMgcGF0Y2gg
c2V0cyB0aGUgYnVmZmVyIHNpemUgdG8gMTw8MTUsIC4uLmZvciB0aGUgdGltZSBiZWluZy4KKwor
ICAgICAgICAtIGRpdi5pbm5lclRleHQgcmVzdWx0cyBvbiBDaHJvbWl1bS9WOC9NYWM6CisgICAg
ICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAxNCA9
PT4gMjQ2NS42IG1zCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NB
UEFDSVRZID0gMSA8PCAxNSA9PT4gMjQ0Ny4yIG1zICAgPC0tLSBhZnRlciB0aGlzIHBhdGNoCisg
ICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAx
NiA9PT4gMTAyNTAuOCBtcyAgPC0tLSBiZWZvcmUgdGhpcyBwYXRjaAorICAgICAgICBXVEZfVEVY
VF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTcgPT0+IDEwMjc4LjIg
bXMKKworICAgICAgICAtIGRpdi5pbm5lclRleHQgcmVzdWx0cyBvbiBDaHJvbWl1bS9WOC9MaW51
eDoKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAx
IDw8IDE0ID09PiAxNTY5LjggbXMKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lO
SVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE1ID09PiAxNTMxLjggbXMgICA8LS0tIGFmdGVyIHRoaXMg
cGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkg
PSAxIDw8IDE2ID09PiAxNTQzLjIgbXMgICA8LS0tIGJlZm9yZSB0aGlzIHBhdGNoCisgICAgICAg
IFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0gMSA8PCAxNyA9PT4g
MTU0MS42IG1zCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFD
SVRZID0gMSA8PCAxOCA9PT4gMTI1NDAuOCBtcworICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9C
VUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTkgPT0+IDEyMzQwLjggbXMKKworICAgICAg
ICAqIGVkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBsYWluVGV4
dFRvTWFsbG9jQWxsb2NhdGVkQnVmZmVyKToKKwogMjAxMi0wMy0xNCAgSWdvciBPbGl2ZWlyYSAg
PGlnb3Iub0BzaXNhLnNhbXN1bmcuY29tPgogCiAgICAgICAgIFNwbGl0IHRoZSBleHRyYSBsb2dp
YyBvdXQgb2YgUmVuZGVyQmxvY2s6OnVwZGF0ZUZpcnN0TGV0dGVyCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
d3RmL1BsYXRmb3JtLmgKaW5kZXggZTMwZTgwNDYxNmUyMDk1NTcyZjZjOTMzN2M3NDkwYTc2ZDk2
ZTA2OS4uNTgzOGRkNGEyMzAwYWFkNzRkNjAzYmQ2YTA4ZWM3OTYwMjU1ZTI3YiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93dGYvUGxhdGZvcm0uaApAQCAtMTE4OCw2ICsxMTg4LDEyIEBACiAjZW5kaWYK
ICNlbmRpZiAvKiBQTEFURk9STShDSFJPTUlVTSkgKi8KIAorI2lmIFBMQVRGT1JNKENIUk9NSVVN
KQorI2RlZmluZSBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSAoMSA8
PCAxNSkKKyNlbHNlCisjZGVmaW5lIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NB
UEFDSVRZICgxIDw8IDE2KQorI2VuZGlmIC8qIFBMQVRGT1JNKENIUk9NSVVNKSAqLworCiAjaWYg
IWRlZmluZWQoV1RGX1VTRV9WOCkKICNkZWZpbmUgV1RGX1VTRV9WOCAwCiAjZW5kaWYgLyogIWRl
ZmluZWQoV1RGX1VTRV9WOCkgKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
VGV4dEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNw
cAppbmRleCBlMGJmOGMzYTBmZTZlOGE2ODMzMTNmMTc4OGM4NGFiNWZiMDRkNDM1Li44ZjNlZTZi
NGQ4ZmFjYTM0NGNjNzkyYTE3NjRlZTgzMTA1NWU5YjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9UZXh0SXRlcmF0b3IuY3BwCkBAIC0yNTEzLDcgKzI1MTMsNyBAQCBVQ2hhciogcGxhaW5UZXh0
VG9NYWxsb2NBbGxvY2F0ZWRCdWZmZXIoY29uc3QgUmFuZ2UqIHIsIHVuc2lnbmVkJiBidWZmZXJM
ZW5ndGgsCiAKICAgICAvLyBEbyB0aGlzIGluIHBpZWNlcyB0byBhdm9pZCBtYXNzaXZlIHJlYWxs
b2NhdGlvbnMgaWYgdGhlcmUgaXMgYSBsYXJnZSBhbW91bnQgb2YgdGV4dC4KICAgICAvLyBVc2Ug
c3lzdGVtIG1hbGxvYyBmb3IgYnVmZmVycyBzaW5jZSB0aGV5IGNhbiBjb25zdW1lIGxvdHMgb2Yg
bWVtb3J5IGFuZCBjdXJyZW50IFRDTWFsbG9jIGlzIHVuYWJsZSByZXR1cm4gaXQgYmFjayB0byBP
Uy4KLSAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY01heFNlZ21lbnRTaXplID0gMSA8PCAxNjsK
KyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY01heFNlZ21lbnRTaXplID0gV1RGX1RFWFRfSVRF
UkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFk7CiAgICAgYnVmZmVyTGVuZ3RoID0gMDsKICAg
ICB0eXBlZGVmIHBhaXI8VUNoYXIqLCB1bnNpZ25lZD4gVGV4dFNlZ21lbnQ7CiAgICAgT3duUHRy
PFZlY3RvcjxUZXh0U2VnbWVudD4gPiB0ZXh0U2VnbWVudHM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132038</attachid>
            <date>2012-03-15 07:00:32 -0700</date>
            <delta_ts>2012-03-15 21:12:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81192-20120315230030.patch</filename>
            <type>text/plain</type>
            <size>3830</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwODAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmNjZTM5Y2Q0YjllZGU2
NDE1ZGFmZTY5NjkyNzA3ZjQ1MmFmMjQ4Ni4uNDI5OTliZTQ3ZGExNDg5Y2YzNjY0NjgwZWZmMjM3
YTIzOGQ4ZTRlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUxIEBACisyMDEyLTAzLTE0ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dW1Bl
cmZvcm1hbmNlXSBPcHRpbWl6ZSBpbm5lclRleHQgYW5kIG91dGVyVGV4dCBpbiBDaHJvbWl1bS9N
YWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxMTky
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBw
YXRjaCBtYWtlcyBpbm5lclRleHQgYW5kIG91dGVyVGV4dCA0IHRpbWVzIGZhc3RlciBvbiBDaHJv
bWl1bS9NYWMuCisgICAgICAgIEEgc2ltaWxhciBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudCB3aWxs
IGJlIGFsc28gb2JzZXJ2ZWQgaW4gQVBJcyB0aGF0IGFyZSB1c2luZworICAgICAgICBUZXh0SXRl
cmF0b3I6OnBsYWluVGV4dCgpIChlLmcuIEVkaXR0aW5nLCBTcGVsbENoZWNrZXIsIENsaXBib2Fy
ZCwgUGFzdGVib2FyZCBldGMpLgorCisgICAgICAgIFBlcmZvcm1hbmNlIHRlc3Q6IGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL2F0dGFjaG1lbnQuY2dpP2lkPTEzMTk4OQorCisgICAgICAgIC0gQXBw
bGVXZWJLaXQvSmF2YVNjcmlwdENvcmUvTWFjOgorICAgICAgICBkaXYuaW5uZXJUZXh0IDogMjk3
OC40bXMKKyAgICAgICAgZGl2Lm91dGVyVGV4dCA6IDI5NDQuNG1zCisKKyAgICAgICAgLSBDaHJv
bWl1bS9WOC9NYWMgd2l0aG91dCB0aGUgcGF0Y2g6CisgICAgICAgIGRpdi5pbm5lclRleHQgOiAx
MDA1MC44bXMKKyAgICAgICAgZGl2Lm91dGVyVGV4dCA6IDEwMDcyLjJtcworCisgICAgICAgIC0g
Q2hyb21pdW0vVjgvTWFjIHdpdGggdGhlIHBhdGNoOgorICAgICAgICBkaXYuaW5uZXJUZXh0OiAy
NTM2LjRtcworICAgICAgICBkaXYub3V0ZXJUZXh0OiAyNzE0bXMKKworICAgICAgICBUaGlzIHBh
dGNoIGp1c3QgY2hhbmdlcyB0aGUgaW5pdGlhbCBidWZmZXIgc2l6ZSBvZiBhIHRleHQgYnVmZmVy
IGZvciBwbGFpbiB0ZXh0LgorICAgICAgICBBcyBzaG93biBiZWxvdywgaW4gbXkgbG9jYWwgQ2hy
b21pdW0vTWFjIGVudmlyb25tZW50IHRoZSBwZXJmb3JtYW5jZSBjaGFuZ2VzCisgICAgICAgIGRy
YW1hdGljYWxseSBiZXR3ZWVuIDE8PDE1IGFuZCAxPDwxNiwgYW5kIGluIG15IGxvY2FsIENocm9t
aXVtL0xpbnV4IGVudmlyb25tZW50CisgICAgICAgIHRoZSBwZXJmb3JtYW5jZSBjaGFuZ2VzIGJl
dHdlZW4gMTw8MTcgYW5kIDE8PDE4LiBJIGFtIG5vdCB5ZXQgc3VyZSB3aGF0IGRldGVybWluZXMK
KyAgICAgICAgdGhlc2UgZmlndXJlcy4gVGhpcyBwYXRjaCBzZXRzIHRoZSBidWZmZXIgc2l6ZSB0
byAxPDwxNSwgLi4uZm9yIHRoZSB0aW1lIGJlaW5nLgorCisgICAgICAgIC0gZGl2LmlubmVyVGV4
dCByZXN1bHRzIG9uIENocm9taXVtL1Y4L01hYzoKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1Jf
QlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE0ID09PiAyNDY1LjYgbXMKKyAgICAgICAg
V1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE1ID09PiAy
NDQ3LjIgbXMgICA8LS0tIGFmdGVyIHRoaXMgcGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFU
T1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE2ID09PiAxMDI1MC44IG1zICA8LS0t
IGJlZm9yZSB0aGlzIHBhdGNoCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklU
SUFMX0NBUEFDSVRZID0gMSA8PCAxNyA9PT4gMTAyNzguMiBtcworCisgICAgICAgIC0gZGl2Lmlu
bmVyVGV4dCByZXN1bHRzIG9uIENocm9taXVtL1Y4L0xpbnV4OgorICAgICAgICBXVEZfVEVYVF9J
VEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTQgPT0+IDE1NjkuOCBtcwor
ICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwg
MTUgPT0+IDE1MzEuOCBtcyAgIDwtLS0gYWZ0ZXIgdGhpcyBwYXRjaAorICAgICAgICBXVEZfVEVY
VF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTYgPT0+IDE1NDMuMiBt
cyAgIDwtLS0gYmVmb3JlIHRoaXMgcGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVG
RkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE3ID09PiAxNTQxLjYgbXMKKyAgICAgICAgV1RG
X1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE4ID09PiAxMjU0
MC44IG1zCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZ
ID0gMSA8PCAxOSA9PT4gMTIzNDAuOCBtcworCisgICAgICAgICogZWRpdGluZy9UZXh0SXRlcmF0
b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cGxhaW5UZXh0VG9NYWxsb2NBbGxvY2F0ZWRCdWZm
ZXIpOgorCiAyMDEyLTAzLTE0ICBJZ29yIE9saXZlaXJhICA8aWdvci5vQHNpc2Euc2Ftc3VuZy5j
b20+CiAKICAgICAgICAgU3BsaXQgdGhlIGV4dHJhIGxvZ2ljIG91dCBvZiBSZW5kZXJCbG9jazo6
dXBkYXRlRmlyc3RMZXR0ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4
dEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcApp
bmRleCBlMGJmOGMzYTBmZTZlOGE2ODMzMTNmMTc4OGM4NGFiNWZiMDRkNDM1Li40ZWI1OTgwOWVl
M2E3Yzg5NTQzZjFjNDgwZTMwYmFhOGIzNWJiY2Y2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9U
ZXh0SXRlcmF0b3IuY3BwCkBAIC0yNTExLDkgKzI1MTEsMTMgQEAgVUNoYXIqIHBsYWluVGV4dFRv
TWFsbG9jQWxsb2NhdGVkQnVmZmVyKGNvbnN0IFJhbmdlKiByLCB1bnNpZ25lZCYgYnVmZmVyTGVu
Z3RoLAogewogICAgIFVDaGFyKiByZXN1bHQgPSAwOwogCi0gICAgLy8gRG8gdGhpcyBpbiBwaWVj
ZXMgdG8gYXZvaWQgbWFzc2l2ZSByZWFsbG9jYXRpb25zIGlmIHRoZXJlIGlzIGEgbGFyZ2UgYW1v
dW50IG9mIHRleHQuCi0gICAgLy8gVXNlIHN5c3RlbSBtYWxsb2MgZm9yIGJ1ZmZlcnMgc2luY2Ug
dGhleSBjYW4gY29uc3VtZSBsb3RzIG9mIG1lbW9yeSBhbmQgY3VycmVudCBUQ01hbGxvYyBpcyB1
bmFibGUgcmV0dXJuIGl0IGJhY2sgdG8gT1MuCisgICAgLy8gVGhlIGluaXRpYWwgYnVmZmVyIHNp
emUgY2FuIGJlIGNyaXRpY2FsIGZvciBwZXJmb3JtYW5jZSAoaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTgxMTkyKS4KKyNpZiBQTEFURk9STShDSFJPTUlVTSkKKyAgICBz
dGF0aWMgY29uc3QgdW5zaWduZWQgY01heFNlZ21lbnRTaXplID0gMSA8PCAxNTsKKyNlbHNlCiAg
ICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNNYXhTZWdtZW50U2l6ZSA9IDEgPDwgMTY7CisjZW5k
aWYKKwogICAgIGJ1ZmZlckxlbmd0aCA9IDA7CiAgICAgdHlwZWRlZiBwYWlyPFVDaGFyKiwgdW5z
aWduZWQ+IFRleHRTZWdtZW50OwogICAgIE93blB0cjxWZWN0b3I8VGV4dFNlZ21lbnQ+ID4gdGV4
dFNlZ21lbnRzOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132190</attachid>
            <date>2012-03-15 21:12:51 -0700</date>
            <delta_ts>2012-03-18 04:48:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81192-20120316131250.patch</filename>
            <type>text/plain</type>
            <size>3876</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEwOTE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWU0ZDkyZTdkNjE2YWMy
YzExNmI2ZDAyYTBmMzkxM2YyOTAxZjJiMS4uYmMwYzgxZmM4MTExYzUwMDM3NzllNjE5NWJjY2M2
YjdkY2QxZjI3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTAzLTE0ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1dW1Bl
cmZvcm1hbmNlXSBPcHRpbWl6ZSBpbm5lclRleHQgYW5kIG91dGVyVGV4dCBpbiBDaHJvbWl1bS9N
YWMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxMTky
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBw
YXRjaCBtYWtlcyBpbm5lclRleHQgYW5kIG91dGVyVGV4dCA0IHRpbWVzIGZhc3RlciBvbiBDaHJv
bWl1bS9NYWMuCisgICAgICAgIEEgc2ltaWxhciBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudCB3aWxs
IGJlIGFsc28gb2JzZXJ2ZWQgaW4gQVBJcyB0aGF0IGFyZSB1c2luZworICAgICAgICBUZXh0SXRl
cmF0b3I6OnBsYWluVGV4dCgpIChlLmcuIEVkaXR0aW5nLCBTcGVsbENoZWNrZXIsIENsaXBib2Fy
ZCwgUGFzdGVib2FyZCBldGMpLgorCisgICAgICAgIFBlcmZvcm1hbmNlIHRlc3Q6IGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL2F0dGFjaG1lbnQuY2dpP2lkPTEzMTk4OQorCisgICAgICAgIC0gQXBw
bGVXZWJLaXQvSmF2YVNjcmlwdENvcmUvTWFjOgorICAgICAgICBkaXYuaW5uZXJUZXh0IDogMjk3
OC40bXMKKyAgICAgICAgZGl2Lm91dGVyVGV4dCA6IDI5NDQuNG1zCisKKyAgICAgICAgLSBDaHJv
bWl1bS9WOC9NYWMgd2l0aG91dCB0aGUgcGF0Y2g6CisgICAgICAgIGRpdi5pbm5lclRleHQgOiAx
MDA1MC44bXMKKyAgICAgICAgZGl2Lm91dGVyVGV4dCA6IDEwMDcyLjJtcworCisgICAgICAgIC0g
Q2hyb21pdW0vVjgvTWFjIHdpdGggdGhlIHBhdGNoOgorICAgICAgICBkaXYuaW5uZXJUZXh0OiAy
NTM2LjRtcworICAgICAgICBkaXYub3V0ZXJUZXh0OiAyNzE0bXMKKworICAgICAgICBUaGlzIHBh
dGNoIGp1c3QgY2hhbmdlcyB0aGUgaW5pdGlhbCBidWZmZXIgc2l6ZSBvZiBhIHBsYWluIHRleHQg
YnVmZmVyIG9uIENocm9taXVtL01hYy4KKyAgICAgICAgQXMgc2hvd24gYmVsb3csIGluIG15IGxv
Y2FsIENocm9taXVtL01hYyBlbnZpcm9ubWVudCB0aGUgcGVyZm9ybWFuY2UgY2hhbmdlcworICAg
ICAgICBkcmFtYXRpY2FsbHkgYmV0d2VlbiAxPDwxNSBhbmQgMTw8MTYsIGFuZCBpbiBteSBsb2Nh
bCBDaHJvbWl1bS9MaW51eCBlbnZpcm9ubWVudAorICAgICAgICB0aGUgcGVyZm9ybWFuY2UgY2hh
bmdlcyBiZXR3ZWVuIDE8PDE3IGFuZCAxPDwxOC4gSSBhbSBub3QgeWV0IHN1cmUgd2hhdCBkZXRl
cm1pbmVzCisgICAgICAgIHRoZXNlIGZpZ3VyZXMsIGJ1dCBpdCBzZWVtcyB0aGVyZSBleGlzdHMg
YSBwZXJmb3JtYW5jZSBnYXAgYXQgc29tZSBwb2ludAorICAgICAgICBkZXBlbmRpbmcgb24gYSBt
YWxsb2MgbWVjaGFuaXNtLgorCisgICAgICAgIC0gZGl2LmlubmVyVGV4dCByZXN1bHRzIG9uIENo
cm9taXVtL1Y4L01hYzoKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJQUxf
Q0FQQUNJVFkgPSAxIDw8IDE0ID09PiAyNDY1LjYgbXMKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFU
T1JfQlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE1ID09PiAyNDQ3LjIgbXMgICA8LS0t
IGFmdGVyIHRoaXMgcGF0Y2gKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1JfQlVGRkVSX0lOSVRJ
QUxfQ0FQQUNJVFkgPSAxIDw8IDE2ID09PiAxMDI1MC44IG1zICA8LS0tIGJlZm9yZSB0aGlzIHBh
dGNoCisgICAgICAgIFdURl9URVhUX0lURVJBVE9SX0JVRkZFUl9JTklUSUFMX0NBUEFDSVRZID0g
MSA8PCAxNyA9PT4gMTAyNzguMiBtcworCisgICAgICAgIC0gZGl2LmlubmVyVGV4dCByZXN1bHRz
IG9uIENocm9taXVtL1Y4L0xpbnV4OgorICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJf
SU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTQgPT0+IDE1NjkuOCBtcworICAgICAgICBXVEZfVEVY
VF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTUgPT0+IDE1MzEuOCBt
cworICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEg
PDwgMTYgPT0+IDE1NDMuMiBtcyAgPC0tLSBiZWZvcmUvYWZ0ZXIgdGhpcyBwYXRjaAorICAgICAg
ICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBBQ0lUWSA9IDEgPDwgMTcgPT0+
IDE1NDEuNiBtcworICAgICAgICBXVEZfVEVYVF9JVEVSQVRPUl9CVUZGRVJfSU5JVElBTF9DQVBB
Q0lUWSA9IDEgPDwgMTggPT0+IDEyNTQwLjggbXMKKyAgICAgICAgV1RGX1RFWFRfSVRFUkFUT1Jf
QlVGRkVSX0lOSVRJQUxfQ0FQQUNJVFkgPSAxIDw8IDE5ID09PiAxMjM0MC44IG1zCisKKyAgICAg
ICAgKiBlZGl0aW5nL1RleHRJdGVyYXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpwbGFpblRl
eHRUb01hbGxvY0FsbG9jYXRlZEJ1ZmZlcik6CisKIDIwMTItMDMtMTUgIEtlbnRhcm8gSGFyYSAg
PGhhcmFrZW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtSZWZhY3RvcmluZ10gUmVuYW1lIFN0
cmluZ0J1aWxkZXIgdmFyaWFibGVzIGluIE1hcmt1cEFjY3VtdWxhdG9yLntoLGNwcH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJhdG9yLmNwcAppbmRleCBlMGJmOGMzYTBmZTZlOGE2ODMz
MTNmMTc4OGM4NGFiNWZiMDRkNDM1Li5jZjRlM2RkMjliNmFmN2Y4NWIxYzJkN2YxZmRkZjNhNzM5
NTkwODUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9UZXh0SXRlcmF0b3IuY3BwCkBAIC0yNTEx
LDkgKzI1MTEsMTIgQEAgVUNoYXIqIHBsYWluVGV4dFRvTWFsbG9jQWxsb2NhdGVkQnVmZmVyKGNv
bnN0IFJhbmdlKiByLCB1bnNpZ25lZCYgYnVmZmVyTGVuZ3RoLAogewogICAgIFVDaGFyKiByZXN1
bHQgPSAwOwogCi0gICAgLy8gRG8gdGhpcyBpbiBwaWVjZXMgdG8gYXZvaWQgbWFzc2l2ZSByZWFs
bG9jYXRpb25zIGlmIHRoZXJlIGlzIGEgbGFyZ2UgYW1vdW50IG9mIHRleHQuCi0gICAgLy8gVXNl
IHN5c3RlbSBtYWxsb2MgZm9yIGJ1ZmZlcnMgc2luY2UgdGhleSBjYW4gY29uc3VtZSBsb3RzIG9m
IG1lbW9yeSBhbmQgY3VycmVudCBUQ01hbGxvYyBpcyB1bmFibGUgcmV0dXJuIGl0IGJhY2sgdG8g
T1MuCisgICAgLy8gVGhlIGluaXRpYWwgYnVmZmVyIHNpemUgY2FuIGJlIGNyaXRpY2FsIGZvciBw
ZXJmb3JtYW5jZTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgxMTky
CisjaWYgUExBVEZPUk0oQ0hST01JVU0pICYmIFBMQVRGT1JNKE1BQykKKyAgICBzdGF0aWMgY29u
c3QgdW5zaWduZWQgY01heFNlZ21lbnRTaXplID0gMSA8PCAxNTsKKyNlbHNlCiAgICAgc3RhdGlj
IGNvbnN0IHVuc2lnbmVkIGNNYXhTZWdtZW50U2l6ZSA9IDEgPDwgMTY7CisjZW5kaWYKICAgICBi
dWZmZXJMZW5ndGggPSAwOwogICAgIHR5cGVkZWYgcGFpcjxVQ2hhciosIHVuc2lnbmVkPiBUZXh0
U2VnbWVudDsKICAgICBPd25QdHI8VmVjdG9yPFRleHRTZWdtZW50PiA+IHRleHRTZWdtZW50czsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132490</attachid>
            <date>2012-03-18 04:48:40 -0700</date>
            <delta_ts>2012-03-18 10:00:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81192-20120318204839.patch</filename>
            <type>text/plain</type>
            <size>2698</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExMTMxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTMyZDJjMjI0MDVkNTQw
N2RmMWVkYzZjYWYxNGQzMmYzMjE3ZDgxYS4uNWY2OTRhM2ZhMmRlZWRhZDRkYzNkODhjM2I5Zjkz
YzEyMTZkMDBjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTAzLTE4ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBDaGFuZ2UgdGhlIGlu
aXRpYWwgYnVmZmVyIHNpemUgb2YgYSBwbGFpbiB0ZXh0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTE5MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIHIxMTExMDkgY2hhbmdlZCB0aGUgaW5pdGlhbCBidWZm
ZXIgc2l6ZSBvZiBhIHBsYWluIHRleHQKKyAgICAgICAgZnJvbSAxPDwxNiB0byAxPDwxNSBpbiBD
aHJvbWl1bS9NYWMgb25seSwgZm9yIHRoZSBmb2xsb3dpbmcgcmVhc29uczoKKworICAgICAgICAt
IEFzIGZhciBhcyBJIGV4cGVyaW1lbnRlZCBsb2NhbGx5LCB3aGlsZSAxPDwxNSBpcyBiZXR0ZXIg
dGhhbiAxPDwxNiBpbiBDaHJvbWl1bS9NYWMsCisgICAgICAgIDE8PDE1IGFuZCAxPDwxNiBhcmUg
dGhlIHNhbWUgaW4gQXBwbGVXZWJLaXQvTWFjIGFuZCBDaHJvbWl1bS9MaW51eCAodGhlaXIgcGVy
Zm9ybWFuY2UKKyAgICAgICAgImdhcCIgZXhpc3RzIGF0IGJldHdlZW4gMTw8MTcgYW5kIDE8PDE4
KS4KKyAgICAgICAgLSBUaGUgcmVhc29uIHdoeSBJIGNoYW5nZWQgMTw8MTYgdG8gMTw8MTUgaW4g
Q2hyb21pdW0vTWFjIG9ubHkgaXMgdGhhdAorICAgICAgICB0aGUgdmFsdWUgaGlnaGx5IGRlcGVu
ZHMgb24gdGhlIHVuZGVybHlpbmcgbWFsbG9jIHN5c3RlbSBhbmQgSSB3YXMgYSBiaXQgYWZyYWlk
CisgICAgICAgIHRoYXQgY2hhbmdpbmcgdG8gMTw8MTUgX21pZ2h0XyBjYXVzZSB1bmludGVudGlv
bmFsIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb24gaW4gc29tZQorICAgICAgICBwbGF0Zm9ybS4KKwor
ICAgICAgICBUaGF0IGJlaW5nIHNhaWQsIGl0IHNlZW1zIHRoYXQgMTw8MTUgd291bGQgbm90IGJl
IHdvcnNlIHRoYW4gMTw8MTYgaW4gYWxsIHBsYXRmb3JtcywKKyAgICAgICAgYW5kIHdlIHNob3Vs
ZCBqdXN0IGtlZXAgdGhlIHZhbHVlIGNvbnNpc3RlbnQuIEluIHRoZSBmaXJzdCBwbGFjZSwgYWNj
b3JkaW5nIHRvIGFudHRpaworICAgICAgICAod2hvIHdyb3RlIDE8PDE2IGEgbG9uZyB0aW1lIGFn
byksIHRoZXJlIHdhcyBubyBzdHJvbmcgcmVhc29uIGZvciAxPDwxNi4KKworICAgICAgICBCYXNl
ZCBvbiB0aGVzZSBvYnNlcnZhdGlvbnMgKFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9ODExOTIKKyAgICAgICAgZm9yIG1vcmUgZGV0YWlscyksIHRoaXMgcGF0Y2gg
dW5pZmllcyB0aGUgdmFsdWUgdG8gMTw8MTUgaW4gYWxsIHBsYXRmb3Jtcy4KKworICAgICAgICBO
byB0ZXN0cy4gTm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogZWRpdGluZy9UZXh0
SXRlcmF0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cGxhaW5UZXh0VG9NYWxsb2NBbGxvY2F0
ZWRCdWZmZXIpOgorCiAyMDEyLTAzLTE3ICBEYXZpZCBSZXZlbWFuICA8cmV2ZW1hbkBjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBQbGF0Zm9ybUNvbnRleHRTa2lhOjptX2RyYXdp
bmdUb0ltYWdlQnVmZmVyIGlzIG5vdCBjb3JyZWN0bHkgc2V0IHdoZW4gdXNpbmcgcGVyLXRpbGUg
cGFpbnRpbmcuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRv
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL1RleHRJdGVyYXRvci5jcHAKaW5kZXggNTc4
YjZiOTE5NTVlNTliN2FiNGY1NjM1ZmE2ZGU3ZmI2ZGJiNThlYy4uZDEwNDRjMTBmMWM4MmI5MTJl
Nzc2OTZmYzBjYzU1ZmMwMGRkMGUzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9UZXh0SXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvVGV4dEl0ZXJh
dG9yLmNwcApAQCAtMjUxNCwxMSArMjUxNCw3IEBAIFVDaGFyKiBwbGFpblRleHRUb01hbGxvY0Fs
bG9jYXRlZEJ1ZmZlcihjb25zdCBSYW5nZSogciwgdW5zaWduZWQmIGJ1ZmZlckxlbmd0aCwKICAg
ICBVQ2hhciogcmVzdWx0ID0gMDsKIAogICAgIC8vIFRoZSBpbml0aWFsIGJ1ZmZlciBzaXplIGNh
biBiZSBjcml0aWNhbCBmb3IgcGVyZm9ybWFuY2U6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD04MTE5MgotI2lmIFBMQVRGT1JNKENIUk9NSVVNKSAmJiBQTEFURk9STShN
QUMpCiAgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNNYXhTZWdtZW50U2l6ZSA9IDEgPDwgMTU7
Ci0jZWxzZQotICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjTWF4U2VnbWVudFNpemUgPSAxIDw8
IDE2OwotI2VuZGlmCiAgICAgYnVmZmVyTGVuZ3RoID0gMDsKICAgICB0eXBlZGVmIHBhaXI8VUNo
YXIqLCB1bnNpZ25lZD4gVGV4dFNlZ21lbnQ7CiAgICAgT3duUHRyPFZlY3RvcjxUZXh0U2VnbWVu
dD4gPiB0ZXh0U2VnbWVudHM7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>