<?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>32374</bug_id>
          
          <creation_ts>2009-12-10 04:44:34 -0800</creation_ts>
          <short_desc>marquee with display:inline causes crash</short_desc>
          <delta_ts>2009-12-17 21:42:41 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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="Shinichiro Hamaji">hamaji</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric</cc>
    
    <cc>hyatt</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>170394</commentid>
    <comment_count>0</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-10 04:44:34 -0800</bug_when>
    <thetext>The following HTML makes WebKit crash.

&lt;body&gt;
  &lt;div style=&quot;opacity: 0.9;&quot;&gt;
    &lt;marquee style=&quot;opacity: 0.9; display: inline;&quot;&gt;No crash means PASS&lt;/marquee&gt;
  &lt;/div&gt;
&lt;/body&gt;

This happens because the marquee code assumes RenderLayer&apos;s renderer is a box.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170395</commentid>
    <comment_count>1</comment_count>
      <attachid>44606</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-10 04:46:30 -0800</bug_when>
    <thetext>Created attachment 44606
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170396</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-10 04:50:19 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 44606 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>170967</commentid>
    <comment_count>3</comment_count>
      <attachid>44606</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-11 15:51:42 -0800</bug_when>
    <thetext>Comment on attachment 44606
Patch v1

renderMarquee() could be const, no?

I expect there is lots of code which uses layer()-&gt;renderBox().  I wonder how much of the rest of it is wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171004</commentid>
    <comment_count>4</comment_count>
      <attachid>44719</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-11 17:43:29 -0800</bug_when>
    <thetext>Created attachment 44719
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171005</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-11 17:44:10 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 44719 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171006</commentid>
    <comment_count>6</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-11 17:49:55 -0800</bug_when>
    <thetext>&gt; renderMarquee() could be const, no?

Fixed, thanks.

&gt; I expect there is lots of code which uses layer()-&gt;renderBox().  I wonder how
&gt; much of the rest of it is wrong.

Yeah, I think there would be some other crashes, but I couldn&apos;t find other crashes so far. I&apos;m guessing toRenderBox in RenderLayer::calculate{,Clip}Rects can cause crashes, but I&apos;m not sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171303</commentid>
    <comment_count>7</comment_count>
      <attachid>44777</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-13 23:52:04 -0800</bug_when>
    <thetext>Created attachment 44777
Patch v3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171304</commentid>
    <comment_count>8</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-13 23:52:41 -0800</bug_when>
    <thetext>Fixed a wrong changelog diff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171306</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-13 23:55:57 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 44777 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171891</commentid>
    <comment_count>10</comment_count>
      <attachid>44777</attachid>
    <who name="">mitz</who>
    <bug_when>2009-12-15 09:07:20 -0800</bug_when>
    <thetext>Comment on attachment 44777
Patch v3

I don’t think this is correct. You should just not create a RenderMarquee for an inline. Just change the condition in RenderLayer::styleChanged() to also check that the renderer is a box.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172688</commentid>
    <comment_count>11</comment_count>
      <attachid>45047</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-17 02:39:52 -0800</bug_when>
    <thetext>Created attachment 45047
Patch v4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172690</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-17 02:40:10 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45047 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172694</commentid>
    <comment_count>13</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-17 02:47:07 -0800</bug_when>
    <thetext>Ah, I see. I was unsure if marquee will never be inline. Thanks! I think we still need the fix for HTMLMarqueeElement as the code assumes it has box renderer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172766</commentid>
    <comment_count>14</comment_count>
      <attachid>45047</attachid>
    <who name="">mitz</who>
    <bug_when>2009-12-17 07:37:07 -0800</bug_when>
    <thetext>Comment on attachment 45047
Patch v4

&gt; +RenderMarquee* HTMLMarqueeElement::renderMarquee() const
&gt; +{
&gt; +    if (renderer() &amp;&amp; renderer()-&gt;hasLayer() &amp;&amp; renderBoxModelObject()-&gt;layer()-&gt;marquee())
&gt; +        return renderBoxModelObject()-&gt;layer()-&gt;marquee();
&gt; +    return 0;

You don’t need the “&amp;&amp; renderBoxModelObject()-&gt;layer()-&gt;marquee()” condition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173036</commentid>
    <comment_count>15</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2009-12-17 21:42:41 -0800</bug_when>
    <thetext>Committed r52299: &lt;http://trac.webkit.org/changeset/52299&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44606</attachid>
            <date>2009-12-10 04:46:30 -0800</date>
            <delta_ts>2009-12-11 17:43:23 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-32374-20091210214628.patch</filename>
            <type>text/plain</type>
            <size>6076</size>
            <attacher name="Shinichiro Hamaji">hamaji</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlMGIxMjJiLi5kOTU1NjkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTIt
MTAgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBtYXJxdWVlIHdpdGggZGlzcGxh
eTppbmxpbmUgY2F1c2VzIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zMjM3NAorCisgICAgICAgICogZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1
ZWUtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2lubGluZS9pbmxp
bmUtbWFycXVlZS1jcmFzaC5odG1sOiBBZGRlZC4KKwogMjAwOS0xMi0xMCAgTmlrb2xhcyBaaW1t
ZXJtYW5uICA8bnppbW1lcm1hbm5AcmltLmNvbT4KIAogICAgICAgICBOb3QgcmV2aWV3ZWQuIFNr
aXAgdHdvIHRlc3RzIG9uIGd0ay9xdCB0aGF0IGdlbmVyYXRlIG5ldyByZXN1bHRzLgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2gtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2gtZXhw
ZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2OTY0MjEKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1j
cmFzaC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorTm8gY3Jhc2ggbWVhbnMgUEFTUwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2guaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVlLWNyYXNoLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQzNWU0YgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVlLWNyYXNoLmh0bWwKQEAg
LTAsMCArMSwxNiBAQAorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5pbmxpbmUgbWFycXVlZSBjYXVz
ZXMgY3Jhc2hlczwvdGl0bGU+Cis8c2NyaXB0PgorICBpZiAod2luZG93LmxheW91dFRlc3RDb250
cm9sbGVyKQorICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworPC9zY3Jp
cHQ+Cis8L2hlYWQ+CisKKzxib2R5PgorICA8ZGl2IHN0eWxlPSJvcGFjaXR5OiAwLjk7Ij4KKyAg
ICA8bWFycXVlZSBzdHlsZT0ib3BhY2l0eTogMC45OyBkaXNwbGF5OiBpbmxpbmU7Ij5ObyBjcmFz
aCBtZWFucyBQQVNTPC9tYXJxdWVlPgorICA8L2Rpdj4KKzwvYm9keT4KKworPC9odG1sPgpkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzYmQw
MWM5Li5jODNmZjJmIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDA5LTEyLTEwICBTaGluaWNoaXJvIEhhbWFq
aSAgPGhhbWFqaUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgbWFycXVlZSB3aXRoIGRpc3BsYXk6aW5saW5lIGNhdXNlcyBjcmFz
aAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIzNzQK
KworICAgICAgICBUZXN0OiBmYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1jcmFzaC5odG1sCisK
KyAgICAgICAgKiBodG1sL0hUTUxNYXJxdWVlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MTWFycXVlZUVsZW1lbnQ6OnN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNYXJx
dWVlRWxlbWVudDo6c3RvcCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWFycXVlZUVsZW1lbnQ6
OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1hcnF1ZWVFbGVtZW50OjpyZXN1bWUp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1hcnF1ZWVFbGVtZW50OjpyZW5kZXJNYXJxdWVlKToK
KyAgICAgICAgKiBodG1sL0hUTUxNYXJxdWVlRWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJNYXJxdWVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hcnF1ZWU6OmNv
bXB1dGVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNYXJxdWVlOjp0aW1lckZp
cmVkKToKKwogMjAwOS0xMi0wOSAgTmlrb2xhcyBaaW1tZXJtYW5uICA8bnppbW1lcm1hbm5Acmlt
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBPbGl2ZXIgSHVudC4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuY3BwIGIvV2ViQ29yZS9odG1sL0hUTUxNYXJx
dWVlRWxlbWVudC5jcHAKaW5kZXggMGNiNjUwMS4uZDlmMzM4MSAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxNYXJx
dWVlRWxlbWVudC5jcHAKQEAgLTExMiwxNCArMTEyLDE0IEBAIHZvaWQgSFRNTE1hcnF1ZWVFbGVt
ZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShNYXBwZWRBdHRyaWJ1dGUgKmF0dHIpCiAKIHZvaWQg
SFRNTE1hcnF1ZWVFbGVtZW50OjpzdGFydCgpCiB7Ci0gICAgaWYgKHJlbmRlcmVyKCkgJiYgcmVu
ZGVyZXIoKS0+aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpKQot
ICAgICAgICByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpLT5zdGFydCgpOworICAgIGlm
IChSZW5kZXJNYXJxdWVlKiBtYXJxdWVlUmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAg
ICAgIG1hcnF1ZWVSZW5kZXJlci0+c3RhcnQoKTsKIH0KIAogdm9pZCBIVE1MTWFycXVlZUVsZW1l
bnQ6OnN0b3AoKQogewotICAgIGlmIChyZW5kZXJlcigpICYmIHJlbmRlcmVyKCktPmhhc0xheWVy
KCkgJiYgcmVuZGVyQm94KCktPmxheWVyKCktPm1hcnF1ZWUoKSkKLSAgICAgICAgcmVuZGVyQm94
KCktPmxheWVyKCktPm1hcnF1ZWUoKS0+c3RvcCgpOworICAgIGlmIChSZW5kZXJNYXJxdWVlKiBt
YXJxdWVlUmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAgICAgIG1hcnF1ZWVSZW5kZXJl
ci0+c3RvcCgpOwogfQogCiBib29sIEhUTUxNYXJxdWVlRWxlbWVudDo6Y2FuU3VzcGVuZCgpIGNv
bnN0CkBAIC0xMjksMTQgKzEyOSwyMSBAQCBib29sIEhUTUxNYXJxdWVlRWxlbWVudDo6Y2FuU3Vz
cGVuZCgpIGNvbnN0CiAKIHZvaWQgSFRNTE1hcnF1ZWVFbGVtZW50OjpzdXNwZW5kKCkKIHsKLSAg
ICBpZiAocmVuZGVyZXIoKSAmJiByZW5kZXJlcigpLT5oYXNMYXllcigpICYmIHJlbmRlckJveCgp
LT5sYXllcigpLT5tYXJxdWVlKCkpCi0gICAgICAgIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJx
dWVlKCktPnN1c3BlbmQoKTsKKyAgICBpZiAoUmVuZGVyTWFycXVlZSogbWFycXVlZVJlbmRlcmVy
ID0gcmVuZGVyTWFycXVlZSgpKQorICAgICAgICBtYXJxdWVlUmVuZGVyZXItPnN1c3BlbmQoKTsK
IH0KLSAgICAKKwogdm9pZCBIVE1MTWFycXVlZUVsZW1lbnQ6OnJlc3VtZSgpCiB7Ci0gICAgaWYg
KHJlbmRlcmVyKCkgJiYgcmVuZGVyZXIoKS0+aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3goKS0+bGF5
ZXIoKS0+bWFycXVlZSgpKQotICAgICAgICByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgp
LT51cGRhdGVNYXJxdWVlUG9zaXRpb24oKTsKKyAgICBpZiAoUmVuZGVyTWFycXVlZSogbWFycXVl
ZVJlbmRlcmVyID0gcmVuZGVyTWFycXVlZSgpKQorICAgICAgICBtYXJxdWVlUmVuZGVyZXItPnVw
ZGF0ZU1hcnF1ZWVQb3NpdGlvbigpOworfQorCitSZW5kZXJNYXJxdWVlKiBIVE1MTWFycXVlZUVs
ZW1lbnQ6OnJlbmRlck1hcnF1ZWUoKQoreworICAgIGlmIChyZW5kZXJlcigpICYmIHJlbmRlcmVy
KCktPmhhc0xheWVyKCkgJiYgcmVuZGVyQm94TW9kZWxPYmplY3QoKS0+bGF5ZXIoKS0+bWFycXVl
ZSgpKQorICAgICAgICByZXR1cm4gcmVuZGVyQm94TW9kZWxPYmplY3QoKS0+bGF5ZXIoKS0+bWFy
cXVlZSgpOworICAgIHJldHVybiAwOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwv
SFRNTE1hcnF1ZWVFbGVtZW50LmgKaW5kZXggMjQyM2ZjNi4uOThhOGIwNiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5oCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1M
TWFycXVlZUVsZW1lbnQuaApAQCAtMjgsNiArMjgsOCBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2NsYXNzIFJlbmRlck1hcnF1ZWU7CisKIGNsYXNzIEhUTUxNYXJxdWVlRWxlbWVudCA6IHB1
YmxpYyBIVE1MRWxlbWVudCwgcHJpdmF0ZSBBY3RpdmVET01PYmplY3QgewogcHVibGljOgogICAg
IEhUTUxNYXJxdWVlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQqKTsKQEAg
LTUxLDYgKzUzLDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgc3VzcGVuZCgpOwogICAg
IHZpcnR1YWwgdm9pZCByZXN1bWUoKTsKIAorICAgIFJlbmRlck1hcnF1ZWUqIHJlbmRlck1hcnF1
ZWUoKTsKKwogICAgIGludCBtX21pbmltdW1EZWxheTsKIH07CiAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TWFycXVlZS5jcHAKaW5kZXggYmI5MTdmOC4uNjU0YTI1ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TWFycXVlZS5jcHAKQEAgLTEwNiw3ICsxMDYsOCBAQCBib29sIFJlbmRlck1hcnF1ZWU6OmlzSG9y
aXpvbnRhbCgpIGNvbnN0CiAKIGludCBSZW5kZXJNYXJxdWVlOjpjb21wdXRlUG9zaXRpb24oRU1h
cnF1ZWVEaXJlY3Rpb24gZGlyLCBib29sIHN0b3BBdENvbnRlbnRFZGdlKQogewotICAgIFJlbmRl
ckJveCogYm94ID0gbV9sYXllci0+cmVuZGVyQm94KCk7CisgICAgQVNTRVJUKG1fbGF5ZXItPnJl
bmRlcmVyKCkpOworICAgIFJlbmRlckJveCogYm94ID0gbV9sYXllci0+cmVuZGVyZXIoKS0+ZW5j
bG9zaW5nQm94KCk7CiAgICAgQVNTRVJUKGJveCk7CiAgICAgUmVuZGVyU3R5bGUqIHMgPSBib3gt
PnN0eWxlKCk7CiAgICAgaWYgKGlzSG9yaXpvbnRhbCgpKSB7CkBAIC0yODksNyArMjkwLDkgQEAg
dm9pZCBSZW5kZXJNYXJxdWVlOjp0aW1lckZpcmVkKFRpbWVyPFJlbmRlck1hcnF1ZWU+KikKICAg
ICAgICAgICAgIGFkZEluY3JlbWVudCA9ICFhZGRJbmNyZW1lbnQ7CiAgICAgICAgIH0KICAgICAg
ICAgYm9vbCBwb3NpdGl2ZSA9IHJhbmdlID4gMDsKLSAgICAgICAgaW50IGNsaWVudFNpemUgPSAo
aXNIb3Jpem9udGFsKCkgPyBtX2xheWVyLT5yZW5kZXJCb3goKS0+Y2xpZW50V2lkdGgoKSA6IG1f
bGF5ZXItPnJlbmRlckJveCgpLT5jbGllbnRIZWlnaHQoKSk7CisgICAgICAgIFJlbmRlckJveCog
Ym94ID0gbV9sYXllci0+cmVuZGVyZXIoKS0+ZW5jbG9zaW5nQm94KCk7CisgICAgICAgIEFTU0VS
VChib3gpOworICAgICAgICBpbnQgY2xpZW50U2l6ZSA9IChpc0hvcml6b250YWwoKSA/IGJveC0+
Y2xpZW50V2lkdGgoKSA6IGJveC0+Y2xpZW50SGVpZ2h0KCkpOwogICAgICAgICBpbnQgaW5jcmVt
ZW50ID0gbWF4KDEsIGFicyhtX2xheWVyLT5yZW5kZXJlcigpLT5zdHlsZSgpLT5tYXJxdWVlSW5j
cmVtZW50KCkuY2FsY1ZhbHVlKGNsaWVudFNpemUpKSk7CiAgICAgICAgIGludCBjdXJyZW50UG9z
ID0gKGlzSG9yaXpvbnRhbCgpID8gbV9sYXllci0+c2Nyb2xsWE9mZnNldCgpIDogbV9sYXllci0+
c2Nyb2xsWU9mZnNldCgpKTsKICAgICAgICAgbmV3UG9zID0gIGN1cnJlbnRQb3MgKyAoYWRkSW5j
cmVtZW50ID8gaW5jcmVtZW50IDogLWluY3JlbWVudCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44719</attachid>
            <date>2009-12-11 17:43:29 -0800</date>
            <delta_ts>2009-12-13 23:51:56 -0800</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-32374-20091212104327.patch</filename>
            <type>text/plain</type>
            <size>6144</size>
            <attacher name="Shinichiro Hamaji">hamaji</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA4NzBjNzcwLi5iYTM3OTQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTIt
MTEgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBtYXJxdWVlIHdpdGggZGlzcGxh
eTppbmxpbmUgY2F1c2VzIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zMjM3NAorCisgICAgICAgICogZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1
ZWUtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2lubGluZS9pbmxp
bmUtbWFycXVlZS1jcmFzaC5odG1sOiBBZGRlZC4KKwogMjAwOS0xMi0xMSAgU2ltb24gSGF1c21h
bm4gIDxzaW1vbi5oYXVzbWFubkBub2tpYS5jb20+CiAKICAgICAgICAgU2tpcCB0aGUgdG91Y2gg
dGVzdHMgb24gV2luZG93cyAoc29tZWhvdyB0aGF0IGh1bmsgZ290IGxvc3QpLgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2gtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2gtZXhwZWN0
ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2OTY0MjEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1jcmFz
aC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorTm8gY3Jhc2ggbWVhbnMgUEFTUwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2guaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVlLWNyYXNoLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQzNWU0YgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVlLWNyYXNoLmh0bWwKQEAgLTAs
MCArMSwxNiBAQAorPGh0bWw+Cis8aGVhZD4KKzx0aXRsZT5pbmxpbmUgbWFycXVlZSBjYXVzZXMg
Y3Jhc2hlczwvdGl0bGU+Cis8c2NyaXB0PgorICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKQorICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworPC9zY3JpcHQ+
Cis8L2hlYWQ+CisKKzxib2R5PgorICA8ZGl2IHN0eWxlPSJvcGFjaXR5OiAwLjk7Ij4KKyAgICA8
bWFycXVlZSBzdHlsZT0ib3BhY2l0eTogMC45OyBkaXNwbGF5OiBpbmxpbmU7Ij5ObyBjcmFzaCBt
ZWFucyBQQVNTPC9tYXJxdWVlPgorICA8L2Rpdj4KKzwvYm9keT4KKworPC9odG1sPgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0ZDA3MjQz
Li5hMTg1NDAzIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSw0ICsxLDI0IEBACi0yMDA5LTEyLTExICBCZW5qYW1pbiBQb3VsYWluICA8
YmVuamFtaW4ucG91bGFpbkBub2tpYS5jb20+CisyMDA5LTEyLTExICBTaGluaWNoaXJvIEhhbWFq
aSAgPGhhbWFqaUBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgbWFycXVlZSB3aXRoIGRpc3BsYXk6aW5saW5lIGNhdXNlcyBjcmFz
aAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIzNzQK
KworICAgICAgICBUZXN0OiBmYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1jcmFzaC5odG1sCisK
KyAgICAgICAgKiBodG1sL0hUTUxNYXJxdWVlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MTWFycXVlZUVsZW1lbnQ6OnN0YXJ0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNYXJx
dWVlRWxlbWVudDo6c3RvcCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWFycXVlZUVsZW1lbnQ6
OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1hcnF1ZWVFbGVtZW50OjpyZXN1bWUp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1hcnF1ZWVFbGVtZW50OjpyZW5kZXJNYXJxdWVlKToK
KyAgICAgICAgKiBodG1sL0hUTUxNYXJxdWVlRWxlbWVudC5oOgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJNYXJxdWVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hcnF1ZWU6OmNv
bXB1dGVQb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJNYXJxdWVlOjp0aW1lckZp
cmVkKToKKworMjAwOS0xMi0xMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KIApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1
ZWVFbGVtZW50LmNwcAppbmRleCAwY2I2NTAxLi41Yjc3N2I5IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1
ZWVFbGVtZW50LmNwcApAQCAtMTEyLDE0ICsxMTIsMTQgQEAgdm9pZCBIVE1MTWFycXVlZUVsZW1l
bnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKE1hcHBlZEF0dHJpYnV0ZSAqYXR0cikKIAogdm9pZCBI
VE1MTWFycXVlZUVsZW1lbnQ6OnN0YXJ0KCkKIHsKLSAgICBpZiAocmVuZGVyZXIoKSAmJiByZW5k
ZXJlcigpLT5oYXNMYXllcigpICYmIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJxdWVlKCkpCi0g
ICAgICAgIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJxdWVlKCktPnN0YXJ0KCk7CisgICAgaWYg
KFJlbmRlck1hcnF1ZWUqIG1hcnF1ZWVSZW5kZXJlciA9IHJlbmRlck1hcnF1ZWUoKSkKKyAgICAg
ICAgbWFycXVlZVJlbmRlcmVyLT5zdGFydCgpOwogfQogCiB2b2lkIEhUTUxNYXJxdWVlRWxlbWVu
dDo6c3RvcCgpCiB7Ci0gICAgaWYgKHJlbmRlcmVyKCkgJiYgcmVuZGVyZXIoKS0+aGFzTGF5ZXIo
KSAmJiByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpKQotICAgICAgICByZW5kZXJCb3go
KS0+bGF5ZXIoKS0+bWFycXVlZSgpLT5zdG9wKCk7CisgICAgaWYgKFJlbmRlck1hcnF1ZWUqIG1h
cnF1ZWVSZW5kZXJlciA9IHJlbmRlck1hcnF1ZWUoKSkKKyAgICAgICAgbWFycXVlZVJlbmRlcmVy
LT5zdG9wKCk7CiB9CiAKIGJvb2wgSFRNTE1hcnF1ZWVFbGVtZW50OjpjYW5TdXNwZW5kKCkgY29u
c3QKQEAgLTEyOSwxNCArMTI5LDIxIEBAIGJvb2wgSFRNTE1hcnF1ZWVFbGVtZW50OjpjYW5TdXNw
ZW5kKCkgY29uc3QKIAogdm9pZCBIVE1MTWFycXVlZUVsZW1lbnQ6OnN1c3BlbmQoKQogewotICAg
IGlmIChyZW5kZXJlcigpICYmIHJlbmRlcmVyKCktPmhhc0xheWVyKCkgJiYgcmVuZGVyQm94KCkt
PmxheWVyKCktPm1hcnF1ZWUoKSkKLSAgICAgICAgcmVuZGVyQm94KCktPmxheWVyKCktPm1hcnF1
ZWUoKS0+c3VzcGVuZCgpOworICAgIGlmIChSZW5kZXJNYXJxdWVlKiBtYXJxdWVlUmVuZGVyZXIg
PSByZW5kZXJNYXJxdWVlKCkpCisgICAgICAgIG1hcnF1ZWVSZW5kZXJlci0+c3VzcGVuZCgpOwog
fQotICAgIAorCiB2b2lkIEhUTUxNYXJxdWVlRWxlbWVudDo6cmVzdW1lKCkKIHsKLSAgICBpZiAo
cmVuZGVyZXIoKSAmJiByZW5kZXJlcigpLT5oYXNMYXllcigpICYmIHJlbmRlckJveCgpLT5sYXll
cigpLT5tYXJxdWVlKCkpCi0gICAgICAgIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJxdWVlKCkt
PnVwZGF0ZU1hcnF1ZWVQb3NpdGlvbigpOworICAgIGlmIChSZW5kZXJNYXJxdWVlKiBtYXJxdWVl
UmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAgICAgIG1hcnF1ZWVSZW5kZXJlci0+dXBk
YXRlTWFycXVlZVBvc2l0aW9uKCk7Cit9CisKK1JlbmRlck1hcnF1ZWUqIEhUTUxNYXJxdWVlRWxl
bWVudDo6cmVuZGVyTWFycXVlZSgpIGNvbnN0Cit7CisgICAgaWYgKHJlbmRlcmVyKCkgJiYgcmVu
ZGVyZXIoKS0+aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3hNb2RlbE9iamVjdCgpLT5sYXllcigpLT5t
YXJxdWVlKCkpCisgICAgICAgIHJldHVybiByZW5kZXJCb3hNb2RlbE9iamVjdCgpLT5sYXllcigp
LT5tYXJxdWVlKCk7CisgICAgcmV0dXJuIDA7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuaCBiL1dlYkNvcmUv
aHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuaAppbmRleCAyNDIzZmM2Li45MTAwZThmIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1s
L0hUTUxNYXJxdWVlRWxlbWVudC5oCkBAIC0yOCw2ICsyOCw4IEBACiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAorY2xhc3MgUmVuZGVyTWFycXVlZTsKKwogY2xhc3MgSFRNTE1hcnF1ZWVFbGVtZW50
IDogcHVibGljIEhUTUxFbGVtZW50LCBwcml2YXRlIEFjdGl2ZURPTU9iamVjdCB7CiBwdWJsaWM6
CiAgICAgSFRNTE1hcnF1ZWVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCop
OwpAQCAtNTEsNiArNTMsOCBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kKCk7
CiAgICAgdmlydHVhbCB2b2lkIHJlc3VtZSgpOwogCisgICAgUmVuZGVyTWFycXVlZSogcmVuZGVy
TWFycXVlZSgpIGNvbnN0OworCiAgICAgaW50IG1fbWluaW11bURlbGF5OwogfTsKIApkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAgYi9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJNYXJxdWVlLmNwcAppbmRleCBiYjkxN2Y4Li42NTRhMjVmIDEwMDY0NAotLS0g
YS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJNYXJxdWVlLmNwcAorKysgYi9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJNYXJxdWVlLmNwcApAQCAtMTA2LDcgKzEwNiw4IEBAIGJvb2wgUmVuZGVyTWFy
cXVlZTo6aXNIb3Jpem9udGFsKCkgY29uc3QKIAogaW50IFJlbmRlck1hcnF1ZWU6OmNvbXB1dGVQ
b3NpdGlvbihFTWFycXVlZURpcmVjdGlvbiBkaXIsIGJvb2wgc3RvcEF0Q29udGVudEVkZ2UpCiB7
Ci0gICAgUmVuZGVyQm94KiBib3ggPSBtX2xheWVyLT5yZW5kZXJCb3goKTsKKyAgICBBU1NFUlQo
bV9sYXllci0+cmVuZGVyZXIoKSk7CisgICAgUmVuZGVyQm94KiBib3ggPSBtX2xheWVyLT5yZW5k
ZXJlcigpLT5lbmNsb3NpbmdCb3goKTsKICAgICBBU1NFUlQoYm94KTsKICAgICBSZW5kZXJTdHls
ZSogcyA9IGJveC0+c3R5bGUoKTsKICAgICBpZiAoaXNIb3Jpem9udGFsKCkpIHsKQEAgLTI4OSw3
ICsyOTAsOSBAQCB2b2lkIFJlbmRlck1hcnF1ZWU6OnRpbWVyRmlyZWQoVGltZXI8UmVuZGVyTWFy
cXVlZT4qKQogICAgICAgICAgICAgYWRkSW5jcmVtZW50ID0gIWFkZEluY3JlbWVudDsKICAgICAg
ICAgfQogICAgICAgICBib29sIHBvc2l0aXZlID0gcmFuZ2UgPiAwOwotICAgICAgICBpbnQgY2xp
ZW50U2l6ZSA9IChpc0hvcml6b250YWwoKSA/IG1fbGF5ZXItPnJlbmRlckJveCgpLT5jbGllbnRX
aWR0aCgpIDogbV9sYXllci0+cmVuZGVyQm94KCktPmNsaWVudEhlaWdodCgpKTsKKyAgICAgICAg
UmVuZGVyQm94KiBib3ggPSBtX2xheWVyLT5yZW5kZXJlcigpLT5lbmNsb3NpbmdCb3goKTsKKyAg
ICAgICAgQVNTRVJUKGJveCk7CisgICAgICAgIGludCBjbGllbnRTaXplID0gKGlzSG9yaXpvbnRh
bCgpID8gYm94LT5jbGllbnRXaWR0aCgpIDogYm94LT5jbGllbnRIZWlnaHQoKSk7CiAgICAgICAg
IGludCBpbmNyZW1lbnQgPSBtYXgoMSwgYWJzKG1fbGF5ZXItPnJlbmRlcmVyKCktPnN0eWxlKCkt
Pm1hcnF1ZWVJbmNyZW1lbnQoKS5jYWxjVmFsdWUoY2xpZW50U2l6ZSkpKTsKICAgICAgICAgaW50
IGN1cnJlbnRQb3MgPSAoaXNIb3Jpem9udGFsKCkgPyBtX2xheWVyLT5zY3JvbGxYT2Zmc2V0KCkg
OiBtX2xheWVyLT5zY3JvbGxZT2Zmc2V0KCkpOwogICAgICAgICBuZXdQb3MgPSAgY3VycmVudFBv
cyArIChhZGRJbmNyZW1lbnQgPyBpbmNyZW1lbnQgOiAtaW5jcmVtZW50KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44777</attachid>
            <date>2009-12-13 23:52:04 -0800</date>
            <delta_ts>2009-12-17 02:39:46 -0800</delta_ts>
            <desc>Patch v3</desc>
            <filename>bug-32374-20091214165202.patch</filename>
            <type>text/plain</type>
            <size>6031</size>
            <attacher name="Shinichiro Hamaji">hamaji</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3MjljZDU4Li5jOTJmOTI5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTIt
MTMgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBtYXJxdWVlIHdpdGggZGlzcGxh
eTppbmxpbmUgY2F1c2VzIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zMjM3NAorCisgICAgICAgICogZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1
ZWUtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2lubGluZS9pbmxp
bmUtbWFycXVlZS1jcmFzaC5odG1sOiBBZGRlZC4KKwogMjAwOS0xMi0xMyAgQWRlbGUgUGV0ZXJz
b24gIDxhZGVsZUBhcHBsZS5jb20+CiAKICAgICAgICAgUlMgYnkgTWFjaWVqIFN0YWNob3dpYWsu
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1jcmFz
aC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1j
cmFzaC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzY5
NjQyMQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1t
YXJxdWVlLWNyYXNoLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitObyBjcmFzaCBtZWFucyBQ
QVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1j
cmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2gu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNDM1ZTRiCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jhc2gu
aHRtbApAQCAtMCwwICsxLDE2IEBACis8aHRtbD4KKzxoZWFkPgorPHRpdGxlPmlubGluZSBtYXJx
dWVlIGNhdXNlcyBjcmFzaGVzPC90aXRsZT4KKzxzY3JpcHQ+CisgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpCisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7
Cis8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHk+CisgIDxkaXYgc3R5bGU9Im9wYWNpdHk6IDAu
OTsiPgorICAgIDxtYXJxdWVlIHN0eWxlPSJvcGFjaXR5OiAwLjk7IGRpc3BsYXk6IGlubGluZTsi
Pk5vIGNyYXNoIG1lYW5zIFBBU1M8L21hcnF1ZWU+CisgIDwvZGl2PgorPC9ib2R5PgorCis8L2h0
bWw+CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IDkzYjg4NDQuLjAxY2Y3YTkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMDktMTItMTMgIFNoaW5pY2hp
cm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBtYXJxdWVlIHdpdGggZGlzcGxheTppbmxpbmUgY2F1
c2VzIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zMjM3NAorCisgICAgICAgIFRlc3Q6IGZhc3QvaW5saW5lL2lubGluZS1tYXJxdWVlLWNyYXNo
Lmh0bWwKKworICAgICAgICAqIGh0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxNYXJxdWVlRWxlbWVudDo6c3RhcnQpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTE1hcnF1ZWVFbGVtZW50OjpzdG9wKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNYXJxdWVl
RWxlbWVudDo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWFycXVlZUVsZW1lbnQ6
OnJlc3VtZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWFycXVlZUVsZW1lbnQ6OnJlbmRlck1h
cnF1ZWUpOgorICAgICAgICAqIGh0bWwvSFRNTE1hcnF1ZWVFbGVtZW50Lmg6CisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTWFy
cXVlZTo6Y29tcHV0ZVBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlck1hcnF1ZWU6
OnRpbWVyRmlyZWQpOgorCiAyMDA5LTEyLTEzICBDaGFybGVzIFJlaXMgIDxjcmVpc0BjaHJvbWl1
bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuY3BwIGIvV2ViQ29yZS9odG1sL0hUTUxNYXJx
dWVlRWxlbWVudC5jcHAKaW5kZXggMGNiNjUwMS4uNWI3NzdiOSAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUxNYXJx
dWVlRWxlbWVudC5jcHAKQEAgLTExMiwxNCArMTEyLDE0IEBAIHZvaWQgSFRNTE1hcnF1ZWVFbGVt
ZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShNYXBwZWRBdHRyaWJ1dGUgKmF0dHIpCiAKIHZvaWQg
SFRNTE1hcnF1ZWVFbGVtZW50OjpzdGFydCgpCiB7Ci0gICAgaWYgKHJlbmRlcmVyKCkgJiYgcmVu
ZGVyZXIoKS0+aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpKQot
ICAgICAgICByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpLT5zdGFydCgpOworICAgIGlm
IChSZW5kZXJNYXJxdWVlKiBtYXJxdWVlUmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAg
ICAgIG1hcnF1ZWVSZW5kZXJlci0+c3RhcnQoKTsKIH0KIAogdm9pZCBIVE1MTWFycXVlZUVsZW1l
bnQ6OnN0b3AoKQogewotICAgIGlmIChyZW5kZXJlcigpICYmIHJlbmRlcmVyKCktPmhhc0xheWVy
KCkgJiYgcmVuZGVyQm94KCktPmxheWVyKCktPm1hcnF1ZWUoKSkKLSAgICAgICAgcmVuZGVyQm94
KCktPmxheWVyKCktPm1hcnF1ZWUoKS0+c3RvcCgpOworICAgIGlmIChSZW5kZXJNYXJxdWVlKiBt
YXJxdWVlUmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAgICAgIG1hcnF1ZWVSZW5kZXJl
ci0+c3RvcCgpOwogfQogCiBib29sIEhUTUxNYXJxdWVlRWxlbWVudDo6Y2FuU3VzcGVuZCgpIGNv
bnN0CkBAIC0xMjksMTQgKzEyOSwyMSBAQCBib29sIEhUTUxNYXJxdWVlRWxlbWVudDo6Y2FuU3Vz
cGVuZCgpIGNvbnN0CiAKIHZvaWQgSFRNTE1hcnF1ZWVFbGVtZW50OjpzdXNwZW5kKCkKIHsKLSAg
ICBpZiAocmVuZGVyZXIoKSAmJiByZW5kZXJlcigpLT5oYXNMYXllcigpICYmIHJlbmRlckJveCgp
LT5sYXllcigpLT5tYXJxdWVlKCkpCi0gICAgICAgIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJx
dWVlKCktPnN1c3BlbmQoKTsKKyAgICBpZiAoUmVuZGVyTWFycXVlZSogbWFycXVlZVJlbmRlcmVy
ID0gcmVuZGVyTWFycXVlZSgpKQorICAgICAgICBtYXJxdWVlUmVuZGVyZXItPnN1c3BlbmQoKTsK
IH0KLSAgICAKKwogdm9pZCBIVE1MTWFycXVlZUVsZW1lbnQ6OnJlc3VtZSgpCiB7Ci0gICAgaWYg
KHJlbmRlcmVyKCkgJiYgcmVuZGVyZXIoKS0+aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3goKS0+bGF5
ZXIoKS0+bWFycXVlZSgpKQotICAgICAgICByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgp
LT51cGRhdGVNYXJxdWVlUG9zaXRpb24oKTsKKyAgICBpZiAoUmVuZGVyTWFycXVlZSogbWFycXVl
ZVJlbmRlcmVyID0gcmVuZGVyTWFycXVlZSgpKQorICAgICAgICBtYXJxdWVlUmVuZGVyZXItPnVw
ZGF0ZU1hcnF1ZWVQb3NpdGlvbigpOworfQorCitSZW5kZXJNYXJxdWVlKiBIVE1MTWFycXVlZUVs
ZW1lbnQ6OnJlbmRlck1hcnF1ZWUoKSBjb25zdAoreworICAgIGlmIChyZW5kZXJlcigpICYmIHJl
bmRlcmVyKCktPmhhc0xheWVyKCkgJiYgcmVuZGVyQm94TW9kZWxPYmplY3QoKS0+bGF5ZXIoKS0+
bWFycXVlZSgpKQorICAgICAgICByZXR1cm4gcmVuZGVyQm94TW9kZWxPYmplY3QoKS0+bGF5ZXIo
KS0+bWFycXVlZSgpOworICAgIHJldHVybiAwOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmggYi9XZWJDb3Jl
L2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmgKaW5kZXggMjQyM2ZjNi4uOTEwMGU4ZiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5oCisrKyBiL1dlYkNvcmUvaHRt
bC9IVE1MTWFycXVlZUVsZW1lbnQuaApAQCAtMjgsNiArMjgsOCBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKK2NsYXNzIFJlbmRlck1hcnF1ZWU7CisKIGNsYXNzIEhUTUxNYXJxdWVlRWxlbWVu
dCA6IHB1YmxpYyBIVE1MRWxlbWVudCwgcHJpdmF0ZSBBY3RpdmVET01PYmplY3QgewogcHVibGlj
OgogICAgIEhUTUxNYXJxdWVlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQq
KTsKQEAgLTUxLDYgKzUzLDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgc3VzcGVuZCgp
OwogICAgIHZpcnR1YWwgdm9pZCByZXN1bWUoKTsKIAorICAgIFJlbmRlck1hcnF1ZWUqIHJlbmRl
ck1hcnF1ZWUoKSBjb25zdDsKKwogICAgIGludCBtX21pbmltdW1EZWxheTsKIH07CiAKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck1hcnF1ZWUuY3BwIGIvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAKaW5kZXggYmI5MTdmOC4uNjU0YTI1ZiAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAKKysrIGIvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTWFycXVlZS5jcHAKQEAgLTEwNiw3ICsxMDYsOCBAQCBib29sIFJlbmRlck1h
cnF1ZWU6OmlzSG9yaXpvbnRhbCgpIGNvbnN0CiAKIGludCBSZW5kZXJNYXJxdWVlOjpjb21wdXRl
UG9zaXRpb24oRU1hcnF1ZWVEaXJlY3Rpb24gZGlyLCBib29sIHN0b3BBdENvbnRlbnRFZGdlKQog
ewotICAgIFJlbmRlckJveCogYm94ID0gbV9sYXllci0+cmVuZGVyQm94KCk7CisgICAgQVNTRVJU
KG1fbGF5ZXItPnJlbmRlcmVyKCkpOworICAgIFJlbmRlckJveCogYm94ID0gbV9sYXllci0+cmVu
ZGVyZXIoKS0+ZW5jbG9zaW5nQm94KCk7CiAgICAgQVNTRVJUKGJveCk7CiAgICAgUmVuZGVyU3R5
bGUqIHMgPSBib3gtPnN0eWxlKCk7CiAgICAgaWYgKGlzSG9yaXpvbnRhbCgpKSB7CkBAIC0yODks
NyArMjkwLDkgQEAgdm9pZCBSZW5kZXJNYXJxdWVlOjp0aW1lckZpcmVkKFRpbWVyPFJlbmRlck1h
cnF1ZWU+KikKICAgICAgICAgICAgIGFkZEluY3JlbWVudCA9ICFhZGRJbmNyZW1lbnQ7CiAgICAg
ICAgIH0KICAgICAgICAgYm9vbCBwb3NpdGl2ZSA9IHJhbmdlID4gMDsKLSAgICAgICAgaW50IGNs
aWVudFNpemUgPSAoaXNIb3Jpem9udGFsKCkgPyBtX2xheWVyLT5yZW5kZXJCb3goKS0+Y2xpZW50
V2lkdGgoKSA6IG1fbGF5ZXItPnJlbmRlckJveCgpLT5jbGllbnRIZWlnaHQoKSk7CisgICAgICAg
IFJlbmRlckJveCogYm94ID0gbV9sYXllci0+cmVuZGVyZXIoKS0+ZW5jbG9zaW5nQm94KCk7Cisg
ICAgICAgIEFTU0VSVChib3gpOworICAgICAgICBpbnQgY2xpZW50U2l6ZSA9IChpc0hvcml6b250
YWwoKSA/IGJveC0+Y2xpZW50V2lkdGgoKSA6IGJveC0+Y2xpZW50SGVpZ2h0KCkpOwogICAgICAg
ICBpbnQgaW5jcmVtZW50ID0gbWF4KDEsIGFicyhtX2xheWVyLT5yZW5kZXJlcigpLT5zdHlsZSgp
LT5tYXJxdWVlSW5jcmVtZW50KCkuY2FsY1ZhbHVlKGNsaWVudFNpemUpKSk7CiAgICAgICAgIGlu
dCBjdXJyZW50UG9zID0gKGlzSG9yaXpvbnRhbCgpID8gbV9sYXllci0+c2Nyb2xsWE9mZnNldCgp
IDogbV9sYXllci0+c2Nyb2xsWU9mZnNldCgpKTsKICAgICAgICAgbmV3UG9zID0gIGN1cnJlbnRQ
b3MgKyAoYWRkSW5jcmVtZW50ID8gaW5jcmVtZW50IDogLWluY3JlbWVudCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45047</attachid>
            <date>2009-12-17 02:39:52 -0800</date>
            <delta_ts>2009-12-17 07:37:06 -0800</delta_ts>
            <desc>Patch v4</desc>
            <filename>bug-32374-20091217193950.patch</filename>
            <type>text/plain</type>
            <size>5373</size>
            <attacher name="Shinichiro Hamaji">hamaji</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzMjFmNjI0Li44MjllMGZhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTIt
MTcgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBtYXJxdWVlIHdpdGggZGlzcGxh
eTppbmxpbmUgY2F1c2VzIGNyYXNoCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0zMjM3NAorCisgICAgICAgICogZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1
ZWUtY3Jhc2gtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2lubGluZS9pbmxp
bmUtbWFycXVlZS1jcmFzaC5odG1sOiBBZGRlZC4KKwogMjAwOS0xMi0xNiAgRnVtaXRvc2hpIFVr
YWkgIDx1a2FpQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxl
ci4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVlLWNy
YXNoLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVl
LWNyYXNoLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43
Njk2NDIxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9pbmxpbmUvaW5saW5l
LW1hcnF1ZWUtY3Jhc2gtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK05vIGNyYXNoIG1lYW5z
IFBBU1MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaW5saW5lL2lubGluZS1tYXJxdWVl
LWNyYXNoLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1jcmFz
aC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE0MzVlNGIKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2lubGluZS9pbmxpbmUtbWFycXVlZS1jcmFz
aC5odG1sCkBAIC0wLDAgKzEsMTYgQEAKKzxodG1sPgorPGhlYWQ+Cis8dGl0bGU+aW5saW5lIG1h
cnF1ZWUgY2F1c2VzIGNyYXNoZXM8L3RpdGxlPgorPHNjcmlwdD4KKyAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKKzwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keT4KKyAgPGRpdiBzdHlsZT0ib3BhY2l0eTog
MC45OyI+CisgICAgPG1hcnF1ZWUgc3R5bGU9Im9wYWNpdHk6IDAuOTsgZGlzcGxheTogaW5saW5l
OyI+Tm8gY3Jhc2ggbWVhbnMgUEFTUzwvbWFycXVlZT4KKyAgPC9kaXY+Cis8L2JvZHk+CisKKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggNzFlNmE0YS4uNzhmMzI3MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAwOS0xMi0xNyAgU2hpbmlj
aGlybyBIYW1hamkgIDxoYW1hamlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIG1hcnF1ZWUgd2l0aCBkaXNwbGF5OmlubGluZSBj
YXVzZXMgY3Jhc2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTMyMzc0CisKKyAgICAgICAgVGVzdDogZmFzdC9pbmxpbmUvaW5saW5lLW1hcnF1ZWUtY3Jh
c2guaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1hcnF1ZWVFbGVtZW50OjpzdGFydCk6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MTWFycXVlZUVsZW1lbnQ6OnN0b3ApOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1hcnF1
ZWVFbGVtZW50OjpzdXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNYXJxdWVlRWxlbWVu
dDo6cmVzdW1lKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNYXJxdWVlRWxlbWVudDo6cmVuZGVy
TWFycXVlZSk6CisgICAgICAgICogaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuaDoKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5
ZXI6OnN0eWxlQ2hhbmdlZCk6CisKIDIwMDktMTItMTYgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJr
aXQub3JnPgogCiAgICAgICAgIE5vIHJldmlldywgcm9sbGluZyBvdXQgcjUyMjA2LgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5jcHAgYi9XZWJDb3JlL2h0bWwv
SFRNTE1hcnF1ZWVFbGVtZW50LmNwcAppbmRleCAwY2I2NTAxLi41Yjc3N2I5IDEwMDY0NAotLS0g
YS9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmNwcAorKysgYi9XZWJDb3JlL2h0bWwv
SFRNTE1hcnF1ZWVFbGVtZW50LmNwcApAQCAtMTEyLDE0ICsxMTIsMTQgQEAgdm9pZCBIVE1MTWFy
cXVlZUVsZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKE1hcHBlZEF0dHJpYnV0ZSAqYXR0cikK
IAogdm9pZCBIVE1MTWFycXVlZUVsZW1lbnQ6OnN0YXJ0KCkKIHsKLSAgICBpZiAocmVuZGVyZXIo
KSAmJiByZW5kZXJlcigpLT5oYXNMYXllcigpICYmIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJx
dWVlKCkpCi0gICAgICAgIHJlbmRlckJveCgpLT5sYXllcigpLT5tYXJxdWVlKCktPnN0YXJ0KCk7
CisgICAgaWYgKFJlbmRlck1hcnF1ZWUqIG1hcnF1ZWVSZW5kZXJlciA9IHJlbmRlck1hcnF1ZWUo
KSkKKyAgICAgICAgbWFycXVlZVJlbmRlcmVyLT5zdGFydCgpOwogfQogCiB2b2lkIEhUTUxNYXJx
dWVlRWxlbWVudDo6c3RvcCgpCiB7Ci0gICAgaWYgKHJlbmRlcmVyKCkgJiYgcmVuZGVyZXIoKS0+
aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpKQotICAgICAgICBy
ZW5kZXJCb3goKS0+bGF5ZXIoKS0+bWFycXVlZSgpLT5zdG9wKCk7CisgICAgaWYgKFJlbmRlck1h
cnF1ZWUqIG1hcnF1ZWVSZW5kZXJlciA9IHJlbmRlck1hcnF1ZWUoKSkKKyAgICAgICAgbWFycXVl
ZVJlbmRlcmVyLT5zdG9wKCk7CiB9CiAKIGJvb2wgSFRNTE1hcnF1ZWVFbGVtZW50OjpjYW5TdXNw
ZW5kKCkgY29uc3QKQEAgLTEyOSwxNCArMTI5LDIxIEBAIGJvb2wgSFRNTE1hcnF1ZWVFbGVtZW50
OjpjYW5TdXNwZW5kKCkgY29uc3QKIAogdm9pZCBIVE1MTWFycXVlZUVsZW1lbnQ6OnN1c3BlbmQo
KQogewotICAgIGlmIChyZW5kZXJlcigpICYmIHJlbmRlcmVyKCktPmhhc0xheWVyKCkgJiYgcmVu
ZGVyQm94KCktPmxheWVyKCktPm1hcnF1ZWUoKSkKLSAgICAgICAgcmVuZGVyQm94KCktPmxheWVy
KCktPm1hcnF1ZWUoKS0+c3VzcGVuZCgpOworICAgIGlmIChSZW5kZXJNYXJxdWVlKiBtYXJxdWVl
UmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAgICAgIG1hcnF1ZWVSZW5kZXJlci0+c3Vz
cGVuZCgpOwogfQotICAgIAorCiB2b2lkIEhUTUxNYXJxdWVlRWxlbWVudDo6cmVzdW1lKCkKIHsK
LSAgICBpZiAocmVuZGVyZXIoKSAmJiByZW5kZXJlcigpLT5oYXNMYXllcigpICYmIHJlbmRlckJv
eCgpLT5sYXllcigpLT5tYXJxdWVlKCkpCi0gICAgICAgIHJlbmRlckJveCgpLT5sYXllcigpLT5t
YXJxdWVlKCktPnVwZGF0ZU1hcnF1ZWVQb3NpdGlvbigpOworICAgIGlmIChSZW5kZXJNYXJxdWVl
KiBtYXJxdWVlUmVuZGVyZXIgPSByZW5kZXJNYXJxdWVlKCkpCisgICAgICAgIG1hcnF1ZWVSZW5k
ZXJlci0+dXBkYXRlTWFycXVlZVBvc2l0aW9uKCk7Cit9CisKK1JlbmRlck1hcnF1ZWUqIEhUTUxN
YXJxdWVlRWxlbWVudDo6cmVuZGVyTWFycXVlZSgpIGNvbnN0Cit7CisgICAgaWYgKHJlbmRlcmVy
KCkgJiYgcmVuZGVyZXIoKS0+aGFzTGF5ZXIoKSAmJiByZW5kZXJCb3hNb2RlbE9iamVjdCgpLT5s
YXllcigpLT5tYXJxdWVlKCkpCisgICAgICAgIHJldHVybiByZW5kZXJCb3hNb2RlbE9iamVjdCgp
LT5sYXllcigpLT5tYXJxdWVlKCk7CisgICAgcmV0dXJuIDA7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuaCBi
L1dlYkNvcmUvaHRtbC9IVE1MTWFycXVlZUVsZW1lbnQuaAppbmRleCAyNDIzZmM2Li45MTAwZThm
IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTE1hcnF1ZWVFbGVtZW50LmgKKysrIGIvV2Vi
Q29yZS9odG1sL0hUTUxNYXJxdWVlRWxlbWVudC5oCkBAIC0yOCw2ICsyOCw4IEBACiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgUmVuZGVyTWFycXVlZTsKKwogY2xhc3MgSFRNTE1hcnF1
ZWVFbGVtZW50IDogcHVibGljIEhUTUxFbGVtZW50LCBwcml2YXRlIEFjdGl2ZURPTU9iamVjdCB7
CiBwdWJsaWM6CiAgICAgSFRNTE1hcnF1ZWVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBE
b2N1bWVudCopOwpAQCAtNTEsNiArNTMsOCBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBz
dXNwZW5kKCk7CiAgICAgdmlydHVhbCB2b2lkIHJlc3VtZSgpOwogCisgICAgUmVuZGVyTWFycXVl
ZSogcmVuZGVyTWFycXVlZSgpIGNvbnN0OworCiAgICAgaW50IG1fbWluaW11bURlbGF5OwogfTsK
IApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IGMxNjM5ZjUuLmNiZDdhNzggMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAorKysgYi9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllci5jcHAKQEAgLTMzMTcsNyArMzMxNyw3IEBAIHZvaWQgUmVuZGVy
TGF5ZXI6OnN0eWxlQ2hhbmdlZChTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5
bGUqKQogICAgICAgICBkaXJ0eVN0YWNraW5nQ29udGV4dFpPcmRlckxpc3RzKCk7CiAgICAgfQog
Ci0gICAgaWYgKHJlbmRlcmVyKCktPnN0eWxlKCktPm92ZXJmbG93WCgpID09IE9NQVJRVUVFICYm
IHJlbmRlcmVyKCktPnN0eWxlKCktPm1hcnF1ZWVCZWhhdmlvcigpICE9IE1OT05FKSB7CisgICAg
aWYgKHJlbmRlcmVyKCktPnN0eWxlKCktPm92ZXJmbG93WCgpID09IE9NQVJRVUVFICYmIHJlbmRl
cmVyKCktPnN0eWxlKCktPm1hcnF1ZWVCZWhhdmlvcigpICE9IE1OT05FICYmIHJlbmRlcmVyKCkt
PmlzQm94KCkpIHsKICAgICAgICAgaWYgKCFtX21hcnF1ZWUpCiAgICAgICAgICAgICBtX21hcnF1
ZWUgPSBuZXcgUmVuZGVyTWFycXVlZSh0aGlzKTsKICAgICAgICAgbV9tYXJxdWVlLT51cGRhdGVN
YXJxdWVlU3R5bGUoKTsK
</data>
<flag name="review"
          id="27003"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>