<?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>61857</bug_id>
          
          <creation_ts>2011-06-01 06:37:20 -0700</creation_ts>
          <short_desc>Value of a range input does not update visually when using setAttribute</short_desc>
          <delta_ts>2011-06-15 22:16:48 -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>Forms</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="Keishi Hattori">keishi</reporter>
          <assigned_to name="Keishi Hattori">keishi</assigned_to>
          <cc>ap</cc>
    
    <cc>tkent</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>413328</commentid>
    <comment_count>0</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 06:37:20 -0700</bug_when>
    <thetext>http://code.google.com/p/chromium/issues/detail?id=77779

Value of &lt;range&gt; doesn&apos;t change when you setAttribute a new value even when it is not dirty. This only happens when the range has a min/max attribute.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413333</commentid>
    <comment_count>1</comment_count>
      <attachid>95592</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 06:42:05 -0700</bug_when>
    <thetext>Created attachment 95592
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413337</commentid>
    <comment_count>2</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 06:43:13 -0700</bug_when>
    <thetext>Sorry wrong chromium bug.
http://code.google.com/p/chromium/issues/detail?id=73541</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413436</commentid>
    <comment_count>3</comment_count>
      <attachid>95592</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-06-01 09:30:51 -0700</bug_when>
    <thetext>Comment on attachment 95592
patch

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

&gt; LayoutTests/fast/forms/script-tests/range-set-attribute.js:1
&gt; +description(&apos;Test to see if setting the value attribute updates the value.&apos;);

Please move this code into range-set-attribute.html. There is no need to create separate files and make tests harder to read.

&gt; Source/WebCore/html/HTMLInputElement.cpp:979
&gt; +void HTMLInputElement::setValue(const String&amp; value, bool sendChangeEvent, bool onlyIfDirty)

Boolean parameters are bad, bad, bad. That&apos;s right: three times bad. At the callsite, we have no idea what is happening. If you are going to modify this function signature, I would convert both parameters into enums as cleanup.

&gt; Source/WebCore/html/HTMLInputElement.h:137
&gt; +    void setValue(const String&amp;, bool sendChangeEvent = false, bool onlyIfDirty = false);

onlyIfDirty is confusing to me. What&apos;s clean? What&apos;s dirty? It&apos;s a flag of some sort, but I don&apos;t understand why it is here. The ChangeLog doesn&apos;t explain it either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413808</commentid>
    <comment_count>4</comment_count>
      <attachid>95592</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-01 18:24:19 -0700</bug_when>
    <thetext>Comment on attachment 95592
patch

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

&gt; LayoutTests/fast/forms/script-tests/range-set-attribute.js:19
&gt; +// value attribute should not change the calue after you set a value

Typo: calue

&gt; Source/WebCore/html/RangeInputType.cpp:245
&gt; -    element()-&gt;setValue(element()-&gt;value());
&gt; +    element()-&gt;setValue(element()-&gt;value(), false, true);

In this case, I think adding HTMLInputElement::isDirty() and modify this line as if (element()-&gt;isDirty())element()-&gt;setValue(...) is better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413827</commentid>
    <comment_count>5</comment_count>
      <attachid>95701</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 19:07:17 -0700</bug_when>
    <thetext>Created attachment 95701
fixed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413833</commentid>
    <comment_count>6</comment_count>
      <attachid>95701</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 19:10:54 -0700</bug_when>
    <thetext>Comment on attachment 95701
fixed patch

I shouldn&apos;t have put the setNeedsStyleRecalc inside the if</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413835</commentid>
    <comment_count>7</comment_count>
      <attachid>95703</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 19:12:40 -0700</bug_when>
    <thetext>Created attachment 95703
fixed patch #2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413843</commentid>
    <comment_count>8</comment_count>
      <attachid>95703</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-01 19:33:45 -0700</bug_when>
    <thetext>Comment on attachment 95703
fixed patch #2

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

&gt; LayoutTests/fast/forms/range-set-attribute.html:23
&gt; +// rewriting the value attribute should update the value
&gt; +input.setAttribute(&apos;value&apos;, &apos;20&apos;);
&gt; +shouldBe(&apos;input.value&apos;, &apos;&quot;20&quot;&apos;);

I don&apos;t understand why this patch fixes this case.  Would you explain it please?

&gt; Source/WebCore/html/HTMLInputElement.h:142
&gt; +    bool isDirtyValue() const;

I&apos;m sorry, hasDirtyValue() is better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413899</commentid>
    <comment_count>9</comment_count>
      <attachid>95719</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 21:54:18 -0700</bug_when>
    <thetext>Created attachment 95719
hasDirtyValue, better test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413901</commentid>
    <comment_count>10</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-01 22:04:32 -0700</bug_when>
    <thetext>The first setAttribute(&quot;value&quot;) should be before setting the min/max, so I fixed that. 

&gt; &gt; +// rewriting the value attribute should update the value
&gt; &gt; +input.setAttribute(&apos;value&apos;, &apos;20&apos;);
&gt; &gt; +shouldBe(&apos;input.value&apos;, &apos;&quot;20&quot;&apos;);
&gt;
&gt; I don&apos;t understand why this patch fixes this case.  Would you explain it please?

Right now setting min/max attributes causes the element to have dirty values. The test will fail with an input.value of 10. (For &quot;fixed patch #2&quot; input.value would be 50)

This patches fixes this, so as long as you don&apos;t set the input.value, you can change the value through setAttribute.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413911</commentid>
    <comment_count>11</comment_count>
      <attachid>95719</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-01 22:15:30 -0700</bug_when>
    <thetext>Comment on attachment 95719
hasDirtyValue, better test

ok, I understand.
Thank you for fixing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413952</commentid>
    <comment_count>12</comment_count>
      <attachid>95719</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-06-01 23:58:33 -0700</bug_when>
    <thetext>Comment on attachment 95719
hasDirtyValue, better test

+bool HTMLInputElement::hasDirtyValue() const
+{
+    return !m_value.isNull();
+}

Could you please explain why any value is dirty value?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413958</commentid>
    <comment_count>13</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-02 00:09:07 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 95719 [details])
&gt; +bool HTMLInputElement::hasDirtyValue() const
&gt; +{
&gt; +    return !m_value.isNull();
&gt; +}
&gt; 
&gt; Could you please explain why any value is dirty value?

Basically an input control element becomes a dirty value once the user interacts  with it. 

The &quot;value&quot; attribute is the initial value, so setAttribute(&quot;value&quot;, &quot;bar&quot;) will change the value while the value is clean. But after the user moves the slider, setAttribute(&quot;value&quot;, &quot;bar&quot;) won&apos;t work anymore.

http://www.w3.org/TR/html5/the-input-element.html#concept-input-value-dirty-flag

Do I need more explanation in the changelog?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413962</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-06-02 00:20:08 -0700</bug_when>
    <thetext>I still don&apos;t understand. For &lt;input value=&quot;test&quot;&gt;, m_value is not null, but it&apos;s obviously not dirty until the user modifies it. Am I missing something?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413965</commentid>
    <comment_count>15</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-02 00:24:29 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; I still don&apos;t understand. For &lt;input value=&quot;test&quot;&gt;, m_value is not null, but it&apos;s obviously not dirty until the user modifies it. Am I missing something?

If the element is clean m_value is null and HTMLInputElement::value takes the value from the &quot;value&quot; atribute.
http://trac.webkit.org/browser/trunk/Source/WebCore/html/HTMLInputElement.cpp#L935</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413970</commentid>
    <comment_count>16</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-02 00:28:39 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; I still don&apos;t understand. For &lt;input value=&quot;test&quot;&gt;, m_value is not null, but it&apos;s obviously not dirty until the user modifies it. Am I missing something?

In this case, m_value is null.
m_value becomes non-null when the user modifies it or JavaScript code update HTMLInputElement::value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413974</commentid>
    <comment_count>17</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-06-02 00:46:44 -0700</bug_when>
    <thetext>&gt; In this case, m_value is null.
&gt; m_value becomes non-null when the user modifies it or JavaScript code update HTMLInputElement::value.

Having an m_value data member that doesn&apos;t necessarily contain the value is incredibly confusing. Is this a recent change?

You say that m_value becomes non-null when JavaScript code modifies it. But according to HTML5, the dirty flag is only set when it&apos;s the user modifying the input. So, is the function added in this patch still wrong?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413984</commentid>
    <comment_count>18</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-02 01:21:29 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; &gt; In this case, m_value is null.
&gt; &gt; m_value becomes non-null when the user modifies it or JavaScript code update HTMLInputElement::value.
&gt; 
&gt; Having an m_value data member that doesn&apos;t necessarily contain the value is incredibly confusing. Is this a recent change?

?? I don&apos;t catch the first sentence.  m_value contains the value.
m_value&apos;s meaning have never been changed at least for two years.


&gt; 
&gt; You say that m_value becomes non-null when JavaScript code modifies it. But according to HTML5, the dirty flag is only set when it&apos;s the user modifying the input. So, is the function added in this patch still wrong?

The implementation and my explanation in Comment #16 are correct, and the first sentence in Keishi&apos;s Comment #13 was incomplete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>413986</commentid>
    <comment_count>19</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-02 01:29:25 -0700</bug_when>
    <thetext>http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-value
&gt; On getting, it must return the current value of the element. On setting, it must set the element&apos;s value to the new value, set the element&apos;s dirty value flag to true, and then invoke the value sanitization algorithm, if the element&apos;s type attribute&apos;s current state defines one.

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#concept-input-value-dirty-flag
&gt; Each input element has a boolean dirty value flag. The dirty value flag must be initially set to false when the element is created, and must be set to true whenever the user interacts with the control in a way that changes the value.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>414159</commentid>
    <comment_count>20</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-06-02 08:46:43 -0700</bug_when>
    <thetext>&gt; &gt; &gt; In this case, m_value is null.

&gt; ?? I don&apos;t catch the first sentence.  m_value contains the value.

You just said that m_value was null, even though element&apos;s value was &quot;test&quot;. The example we are talking about is &lt;input value=&quot;test&quot;&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>414166</commentid>
    <comment_count>21</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-06-02 08:54:22 -0700</bug_when>
    <thetext>&gt; &gt; On setting, it must set the element&apos;s value to the new value, set the element&apos;s dirty value flag to true, and then invoke the value sanitization algorithm, if the element&apos;s type attribute&apos;s current state defines one.

The test doesn&apos;t ever change HTMLInputElement value property. It only tests setAttribute, which is different.

FWIW, the two spec quotations you gave do appear to contradict each other. I&apos;ve submitted a spec review comment.

For content attribute that&apos;s tested here, the spec says the following:

&quot;The value content attribute gives the default value of the input element. When the value content attribute is added, set, or removed, if the control&apos;s dirty value flag is false, the user agent must set the value of the element to the value of the value content attribute, if there is one, or the empty string otherwise, and then run the current value sanitization algorithm, if one is defined.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>414493</commentid>
    <comment_count>22</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-02 15:13:22 -0700</bug_when>
    <thetext>(In reply to comment #20)
&gt; You just said that m_value was null, even though element&apos;s value was &quot;test&quot;. The example we are talking about is &lt;input value=&quot;test&quot;&gt;.

Le&apos;s call the content of HTML &apos;value&apos; attribute &apos;default value&apos;, and call the value edited by a user or set by JavaScript &apos;dirty value&apos;.
m_value always represents the dirty value, and never represents the default value.
HTMLInputElement::value() returns m_value if m_value is not null, or the default value otherwise.

(In reply to comment #21)
&gt; The test doesn&apos;t ever change HTMLInputElement value property. It only tests setAttribute, which is different.

Yes.  We&apos;d like to fix the bug about setAttribute case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>414580</commentid>
    <comment_count>23</comment_count>
      <attachid>95719</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-06-02 17:52:15 -0700</bug_when>
    <thetext>Comment on attachment 95719
hasDirtyValue, better test

I don&apos;t understand why you are saying this. We should not rename data members in our heads, they should have good names!

From your description, it appears that m_value might need to be renamed to m_valueIfDirty. Let&apos;s explore that before landing this patch, because in the current state, it makes the code strictly worse. Marking r- to that effect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>414639</commentid>
    <comment_count>24</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-02 20:59:33 -0700</bug_when>
    <thetext>&gt; From your description, it appears that m_value might need to be renamed to m_valueIfDirty. Let&apos;s explore that before landing this patch, because in the current state, it makes the code strictly worse. Marking r- to that effect.

I agree with changing the variable name. 

I filed Bug 61990 and uploaded a patch. I added the HTMLInputELement::hasDirtyValue() in that patch because it makes it easier to understand what dirty means.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>417131</commentid>
    <comment_count>25</comment_count>
      <attachid>96392</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-08 00:49:07 -0700</bug_when>
    <thetext>Created attachment 96392
new patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>417133</commentid>
    <comment_count>26</comment_count>
      <attachid>96392</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-08 00:53:33 -0700</bug_when>
    <thetext>Comment on attachment 96392
new patch

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

&gt; LayoutTests/fast/forms/range-set-attribute.html:24
&gt; +// rewriting the value attribute should update the value
&gt; +input.setAttribute(&apos;value&apos;, &apos;20&apos;);
&gt; +shouldBe(&apos;input.value&apos;, &apos;&quot;20&quot;&apos;);

You had better print this with debug() for test result readability, or
show what is happening by shouldBe(&apos;input.setAttribute(&quot;value&quot;, &quot;20&quot;); input.value&apos;, &apos;&quot;20&quot;&apos;);

&gt; LayoutTests/fast/forms/range-set-attribute.html:26
&gt; +// changing the max should effect value

ditto.

&gt; LayoutTests/fast/forms/range-set-attribute.html:30
&gt; +// value attribute should not change the value after you set a value

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>417136</commentid>
    <comment_count>27</comment_count>
      <attachid>96394</attachid>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-08 01:03:28 -0700</bug_when>
    <thetext>Created attachment 96394
final patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>421763</commentid>
    <comment_count>28</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-06-15 21:45:59 -0700</bug_when>
    <thetext>Don&apos;t you need review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>421768</commentid>
    <comment_count>29</comment_count>
    <who name="Keishi Hattori">keishi</who>
    <bug_when>2011-06-15 22:16:48 -0700</bug_when>
    <thetext>Thanks. Landed it myself.

Committed r89006: &lt;http://trac.webkit.org/changeset/89006&gt;

All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>95592</attachid>
            <date>2011-06-01 06:42:05 -0700</date>
            <delta_ts>2011-06-01 19:07:12 -0700</delta_ts>
            <desc>patch</desc>
            <filename>bug-61857-20110601224203.patch</filename>
            <type>text/plain</type>
            <size>6271</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODc3ODEKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjYzRiNmY2NzA5ZDI5ZmI4N2E2MmNm
YzUzY2E1NjAyYjhhMDNiODJhLi5jYmI4NmY0MGI3ZThjN2FjOWYzZGZhMjg1YjZmNWMzNjE1Yjdh
YTNiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMDEgIEtlaXNoaSBIYXR0b3JpICA8
a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUgYXR0
cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1z
ZXQtYXR0cmlidXRlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvc2NyaXB0LXRl
c3RzL3JhbmdlLXNldC1hdHRyaWJ1dGUuanM6IEFkZGVkLgorCiAyMDExLTA2LTAxICBOaWtvbGFz
IFppbW1lcm1hbm4gIDxuemltbWVybWFubkByaW0uY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IFJvYiBCdWlzLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQt
YXR0cmlidXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0
LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QwM2YxZjVhMTYxNTExZGI5OGI4
MTQwZmI3ZTYwNGQxMDNjM2EzNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
Zm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMyBAQAor
VGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVwZGF0ZXMgdGhlIHZh
bHVlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbnB1dC52YWx1ZSBp
cyAiMTAiCitQQVNTIGlucHV0LnZhbHVlIGlzICIyMCIKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjEw
IgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0
cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3Jhbmdl
LXNldC1hdHRyaWJ1dGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYjEzYjUwNzRlNWQ0Nzg5MTI4YjgzMGFk
YTQ5YjYxMWZlN2E4NTgyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhU
TUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5r
IHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qt
cHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMv
cmFuZ2Utc2V0LWF0dHJpYnV0ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvc2NyaXB0LXRlc3RzL3Jhbmdl
LXNldC1hdHRyaWJ1dGUuanMgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3NjcmlwdC10ZXN0cy9y
YW5nZS1zZXQtYXR0cmlidXRlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMyYWFiNjY0MDYwM2M4ZWU0YWI5NjU1
NzA1ZDJmYTgzMDI4NTZlYTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zv
cm1zL3NjcmlwdC10ZXN0cy9yYW5nZS1zZXQtYXR0cmlidXRlLmpzCkBAIC0wLDAgKzEsMjQgQEAK
K2Rlc2NyaXB0aW9uKCdUZXN0IHRvIHNlZSBpZiBzZXR0aW5nIHRoZSB2YWx1ZSBhdHRyaWJ1dGUg
dXBkYXRlcyB0aGUgdmFsdWUuJyk7CisKK3ZhciBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ2lucHV0Jyk7CitpbnB1dC50eXBlID0gJ3JhbmdlJzsKK2lucHV0LnNldEF0dHJpYnV0ZSgn
bWluJywgJzAnKTsKK2lucHV0LnNldEF0dHJpYnV0ZSgnbWF4JywgJzEwMCcpOworCitpbnB1dC5z
ZXRBdHRyaWJ1dGUoJ3ZhbHVlJywgJzEwJyk7CitzaG91bGRCZSgnaW5wdXQudmFsdWUnLCAnIjEw
IicpOworCisvLyByZXdyaXRpbmcgdGhlIHZhbHVlIGF0dHJpYnV0ZSBzaG91bGQgdXBkYXRlIHRo
ZSB2YWx1ZQoraW5wdXQuc2V0QXR0cmlidXRlKCd2YWx1ZScsICcyMCcpOworc2hvdWxkQmUoJ2lu
cHV0LnZhbHVlJywgJyIyMCInKTsKKworLy8gY2hhbmdpbmcgdGhlIG1heCBzaG91bGQgZWZmZWN0
IHZhbHVlCitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21heCcsICcxMCcpOworc2hvdWxkQmUoJ2lucHV0
LnZhbHVlJywgJyIxMCInKTsKKworLy8gdmFsdWUgYXR0cmlidXRlIHNob3VsZCBub3QgY2hhbmdl
IHRoZSBjYWx1ZSBhZnRlciB5b3Ugc2V0IGEgdmFsdWUKK2lucHV0LnZhbHVlID0gMTA7CitpbnB1
dC5zZXRBdHRyaWJ1dGUoJ3ZhbHVlJywgJzUnKTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1ZScsICci
MTAiJyk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDgw
ZTUwODM4ZDZhZDIyZGM2MWE2NmZjMjc2Y2JmODcwZTA5MDE4OTYuLjM3YzIxOTZmNzA0YWI0ZDEz
M2EwN2QzNjM2Zjc1ZTQzOWJmYWE1NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAx
MS0wNi0wMSAgS2Vpc2hpIEhhdHRvcmkgIDxrZWlzaGlAd2Via2l0Lm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXggcmFuZ2UgZWxlbWVudCBu
b3QgdXBkYXRpbmcgd2hlbiB2YWx1ZSBhdHRyaWJ1dGUgaXMgc2V0IHdpdGggSlMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYxODU3CisKKyAgICAgICAg
VGVzdDogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKKworICAgICAgICAqIGh0
bWwvSFRNTElucHV0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVt
ZW50OjpzZXRWYWx1ZSk6IEFkZGVkIG9ubHlJZkRpcnR5IGF0dHJpYnV0ZS4gT25seSBzZXRzIHRo
ZSBuZXcgdmFsdWUgd2hlbiB0aGUgaW5wdXQgZWxlbWVudCBpcyBkaXJ0eS4KKyAgICAgICAgKiBo
dG1sL0hUTUxJbnB1dEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL1JhbmdlSW5wdXRUeXBlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlSW5wdXRUeXBlOjptaW5Pck1heEF0dHJpYnV0ZUNo
YW5nZWQpOiBVc2VkIG9ubHlJZkRpcnR5IHNvIGl0IGRvZXNuJ3QgbWFrZSBhIGNsZWFuIGVsZW1l
bnQgZGlydHkuCisKIDIwMTEtMDYtMDEgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBLZW50IFRhbXVyYS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDNkOWM3ZTAyNDgwYTRmMjkzZjZlZGJl
OGFlZDdhYmQ4MGM5NWUyOGIuLmNjNzMyZGRiOTQwOTI1ZDBlMGE4NWMxZDYzOWIxNTUxNjljNjAx
NDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApAQCAtOTc2LDEx
ICs5NzYsMTQgQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpzZXRTdWdnZXN0ZWRWYWx1ZShjb25z
dCBTdHJpbmcmIHZhbHVlKQogICAgIHNldE5lZWRzU3R5bGVSZWNhbGMoKTsKIH0KIAotdm9pZCBI
VE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZShjb25zdCBTdHJpbmcmIHZhbHVlLCBib29sIHNlbmRD
aGFuZ2VFdmVudCkKK3ZvaWQgSFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUoY29uc3QgU3RyaW5n
JiB2YWx1ZSwgYm9vbCBzZW5kQ2hhbmdlRXZlbnQsIGJvb2wgb25seUlmRGlydHkpCiB7CiAgICAg
aWYgKCFtX2lucHV0VHlwZS0+Y2FuU2V0VmFsdWUodmFsdWUpKQogICAgICAgICByZXR1cm47CiAK
KyAgICBpZiAob25seUlmRGlydHkgJiYgbV92YWx1ZS5pc051bGwoKSkKKyAgICAgICAgcmV0dXJu
OworCiAgICAgc2V0Rm9ybUNvbnRyb2xWYWx1ZU1hdGNoZXNSZW5kZXJlcihmYWxzZSk7CiAgICAg
aWYgKG1faW5wdXRUeXBlLT5zdG9yZXNWYWx1ZVNlcGFyYXRlRnJvbUF0dHJpYnV0ZSgpKSB7CiAg
ICAgICAgIGlmIChmaWxlcygpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
SW5wdXRFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaApp
bmRleCA3YWZmZGZlNGU0NWI5Zjk2ZTliYWVmMGIwOTI4ZjU2MDgxMTc4ODQ5Li44MTgyZTgxNDA2
Nzk3NDA2OWM4YjdhYjZiYTE4MTE3ODYxYjQ3M2VhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJ
bnB1dEVsZW1lbnQuaApAQCAtMTM0LDcgKzEzNCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFR5
cGUoY29uc3QgU3RyaW5nJik7CiAKICAgICBTdHJpbmcgdmFsdWUoKSBjb25zdDsKLSAgICB2b2lk
IHNldFZhbHVlKGNvbnN0IFN0cmluZyYsIGJvb2wgc2VuZENoYW5nZUV2ZW50ID0gZmFsc2UpOwor
ICAgIHZvaWQgc2V0VmFsdWUoY29uc3QgU3RyaW5nJiwgYm9vbCBzZW5kQ2hhbmdlRXZlbnQgPSBm
YWxzZSwgYm9vbCBvbmx5SWZEaXJ0eSA9IGZhbHNlKTsKICAgICB2b2lkIHNldFZhbHVlRm9yVXNl
cihjb25zdCBTdHJpbmcmKTsKICAgICAvLyBDaGVja3MgaWYgdGhlIHNwZWNpZmllZCBzdHJpbmcg
d291bGQgYmUgYSB2YWxpZCB2YWx1ZS4KICAgICAvLyBXZSBzaG91bGQgbm90IGNhbGwgdGhpcyBm
b3IgdHlwZXMgd2l0aCBubyBzdHJpbmcgdmFsdWUgc3VjaCBhcyBDSEVDS0JPWCBhbmQgUkFESU8u
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwCmluZGV4IDMxYjBhODZiMDMwNmQ2
ZTg4M2U5NTYyNjllM2Q2MWQ2MGMwNDFiODQuLjZlNmZiOWEzZjY3MGUxN2Y2M2RiZTNlMGY0NWY0
YzA4ODc3ZWRmOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5
cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwCkBAIC0y
NDIsNyArMjQyLDcgQEAgdm9pZCBSYW5nZUlucHV0VHlwZTo6bWluT3JNYXhBdHRyaWJ1dGVDaGFu
Z2VkKCkKICAgICBJbnB1dFR5cGU6Om1pbk9yTWF4QXR0cmlidXRlQ2hhbmdlZCgpOwogCiAgICAg
Ly8gU2FuaXRpemUgdGhlIHZhbHVlLgotICAgIGVsZW1lbnQoKS0+c2V0VmFsdWUoZWxlbWVudCgp
LT52YWx1ZSgpKTsKKyAgICBlbGVtZW50KCktPnNldFZhbHVlKGVsZW1lbnQoKS0+dmFsdWUoKSwg
ZmFsc2UsIHRydWUpOwogICAgIGVsZW1lbnQoKS0+c2V0TmVlZHNTdHlsZVJlY2FsYygpOwogfQog
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>95701</attachid>
            <date>2011-06-01 19:07:17 -0700</date>
            <delta_ts>2011-06-01 19:10:54 -0700</delta_ts>
            <desc>fixed patch</desc>
            <filename>bug-61857-20110602110715.patch</filename>
            <type>text/plain</type>
            <size>5683</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODc4NzIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNDY4OTU4OTBkMDZjZWJiOTNmMjdk
OWVkY2E2NzEzMGUxMGJlMjYyLi5lNjkwZjkzNzZkNjE0OWI1MDI3MmNiZTI0MDk0ZmQyMmJlY2Fh
NWQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMDEgIEtlaXNoaSBIYXR0b3JpICA8
a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUgYXR0
cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1z
ZXQtYXR0cmlidXRlLmh0bWw6IEFkZGVkLiBUZXN0IHRvIHNlZSBpZiBzZXR0aW5nIHRoZSB2YWx1
ZSBhdHRyaWJ1dGUgb2YgYSAKKyAgICAgICAgcmFuZ2UgaW5wdXQgZWxlbWVudCB1cGRhdGVzIHRo
ZSB2YWx1ZS4KKwogMjAxMS0wNi0wMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgog
CiAgICAgICAgIFRoZXJlIHNlZW1zIHRvIGJlIHNvbWV0aGluZyBvZGQgYWJvdXQgcmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIgb24gTWFjLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QwM2YxZjVh
MTYxNTExZGI5OGI4MTQwZmI3ZTYwNGQxMDNjM2EzNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMyBAQAorVGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVw
ZGF0ZXMgdGhlIHZhbHVlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBp
bnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIGlucHV0LnZhbHVlIGlzICIyMCIKK1BBU1MgaW5wdXQu
dmFsdWUgaXMgIjEwIgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1dGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOWViYmQxMGQyYzQ4
MTc5Mjg4N2FkYzQ4NjI0NzE1MTVjYzIxZDIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKQEAgLTAsMCArMSwzOCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbignVGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVwZGF0
ZXMgdGhlIHZhbHVlLicpOworCit2YXIgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdp
bnB1dCcpOworaW5wdXQudHlwZSA9ICdyYW5nZSc7CitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21pbics
ICcwJyk7CitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21heCcsICcxMDAnKTsKKworaW5wdXQuc2V0QXR0
cmlidXRlKCd2YWx1ZScsICcxMCcpOworc2hvdWxkQmUoJ2lucHV0LnZhbHVlJywgJyIxMCInKTsK
KworLy8gcmV3cml0aW5nIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgc2hvdWxkIHVwZGF0ZSB0aGUgdmFs
dWUKK2lucHV0LnNldEF0dHJpYnV0ZSgndmFsdWUnLCAnMjAnKTsKK3Nob3VsZEJlKCdpbnB1dC52
YWx1ZScsICciMjAiJyk7CisKKy8vIGNoYW5naW5nIHRoZSBtYXggc2hvdWxkIGVmZmVjdCB2YWx1
ZQoraW5wdXQuc2V0QXR0cmlidXRlKCdtYXgnLCAnMTAnKTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1
ZScsICciMTAiJyk7CisKKy8vIHZhbHVlIGF0dHJpYnV0ZSBzaG91bGQgbm90IGNoYW5nZSB0aGUg
dmFsdWUgYWZ0ZXIgeW91IHNldCBhIHZhbHVlCitpbnB1dC52YWx1ZSA9IDEwOworaW5wdXQuc2V0
QXR0cmlidXRlKCd2YWx1ZScsICc1Jyk7CitzaG91bGRCZSgnaW5wdXQudmFsdWUnLCAnIjEwIicp
OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTkwMWVkZGVjYmI3MWM3YTI1Y2NhNGQ3ZjA5
ZWQ0MjM4OWQyYmZmYi4uYjQwZGNmMDViMDIyY2ZjMDIwMWE0ZGFjNzNmODRiMzZlZWVlOWRiZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDExLTA2LTAxICBLZWlzaGkgSGF0dG9yaSAg
PGtlaXNoaUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEZpeCByYW5nZSBlbGVtZW50IG5vdCB1cGRhdGluZyB3aGVuIHZhbHVlIGF0
dHJpYnV0ZSBpcyBzZXQgd2l0aCBKUworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NjE4NTcKKworICAgICAgICBUZXN0OiBmYXN0L2Zvcm1zL3JhbmdlLXNl
dC1hdHRyaWJ1dGUuaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmlzRGlydHlWYWx1ZSk6IFJldHVy
bnMgdGhlIGRpcnR5IHZhbHVlIGZsYWcsIGRlZmluZWQgYnkgdGhlIHNwZWMuCisgICAgICAgICog
aHRtbC9IVE1MSW5wdXRFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9SYW5nZUlucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZUlucHV0VHlwZTo6bWluT3JNYXhBdHRyaWJ1dGVD
aGFuZ2VkKTogQ2hhbmdlZCB0byBvbmx5IHNhbml0aXplIHRoZSB2YWx1ZSB3aGVuIHRoZSBkaXJ0
eSB2YWx1ZSBmbGFnIGlzIHRydWUuCisKIDIwMTEtMDYtMDEgIEFkcmllbm5lIFdhbGtlciAgPGVu
bmVAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBKYW1lcyBSb2JpbnNvbi4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDNkOWM3ZTAyNDgwYTRm
MjkzZjZlZGJlOGFlZDdhYmQ4MGM5NWUyOGIuLjQzY2I5ZjkxZThlNTJlYTQxYWQxNWFiZGVmMmM0
YjBjZjMxYTJjZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApA
QCAtMjM2LDYgKzIzNiwxMSBAQCBib29sIEhUTUxJbnB1dEVsZW1lbnQ6OmlzVmFsaWRWYWx1ZShj
b25zdCBTdHJpbmcmIHZhbHVlKSBjb25zdAogICAgICAgICAmJiAhdmFsdWVNaXNzaW5nKHZhbHVl
KTsKIH0KIAorYm9vbCBIVE1MSW5wdXRFbGVtZW50Ojppc0RpcnR5VmFsdWUoKSBjb25zdAorewor
ICAgIHJldHVybiAhbV92YWx1ZS5pc051bGwoKTsKK30KKwogYm9vbCBIVE1MSW5wdXRFbGVtZW50
Ojp0eXBlTWlzbWF0Y2goKSBjb25zdAogewogICAgIHJldHVybiBtX2lucHV0VHlwZS0+dHlwZU1p
c21hdGNoKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCmluZGV4IDdhZmZk
ZmU0ZTQ1YjlmOTZlOWJhZWYwYjA5MjhmNTYwODExNzg4NDkuLmE5MjFlMjE3MTUzZjE5YWVhYjVh
YjZhNGE2N2FjMGUzNjg4NDk5MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TElucHV0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5oCkBAIC0xMzksNiArMTM5LDcgQEAgcHVibGljOgogICAgIC8vIENoZWNrcyBpZiB0aGUgc3Bl
Y2lmaWVkIHN0cmluZyB3b3VsZCBiZSBhIHZhbGlkIHZhbHVlLgogICAgIC8vIFdlIHNob3VsZCBu
b3QgY2FsbCB0aGlzIGZvciB0eXBlcyB3aXRoIG5vIHN0cmluZyB2YWx1ZSBzdWNoIGFzIENIRUNL
Qk9YIGFuZCBSQURJTy4KICAgICBib29sIGlzVmFsaWRWYWx1ZShjb25zdCBTdHJpbmcmKSBjb25z
dDsKKyAgICBib29sIGlzRGlydHlWYWx1ZSgpIGNvbnN0OwogCiAgICAgU3RyaW5nIHNhbml0aXpl
VmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0
VHlwZS5jcHAKaW5kZXggMzFiMGE4NmIwMzA2ZDZlODgzZTk1NjI2OWUzZDYxZDYwYzA0MWI4NC4u
NDYzOTRlOTA1ZGE1ZmVkNGQ2OThkYzZiYjEyZGQwZWQ3OTQ5MGZlOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKQEAgLTI0Miw4ICsyNDIsMTAgQEAgdm9pZCBSYW5nZUlu
cHV0VHlwZTo6bWluT3JNYXhBdHRyaWJ1dGVDaGFuZ2VkKCkKICAgICBJbnB1dFR5cGU6Om1pbk9y
TWF4QXR0cmlidXRlQ2hhbmdlZCgpOwogCiAgICAgLy8gU2FuaXRpemUgdGhlIHZhbHVlLgotICAg
IGVsZW1lbnQoKS0+c2V0VmFsdWUoZWxlbWVudCgpLT52YWx1ZSgpKTsKLSAgICBlbGVtZW50KCkt
PnNldE5lZWRzU3R5bGVSZWNhbGMoKTsKKyAgICBpZiAoZWxlbWVudCgpLT5pc0RpcnR5VmFsdWUo
KSkgeworICAgICAgICBlbGVtZW50KCktPnNldFZhbHVlKGVsZW1lbnQoKS0+dmFsdWUoKSwgZmFs
c2UpOworICAgICAgICBlbGVtZW50KCktPnNldE5lZWRzU3R5bGVSZWNhbGMoKTsKKyAgICB9CiB9
CiAKIHZvaWQgUmFuZ2VJbnB1dFR5cGU6OnZhbHVlQ2hhbmdlZCgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>95703</attachid>
            <date>2011-06-01 19:12:40 -0700</date>
            <delta_ts>2011-06-01 21:54:12 -0700</delta_ts>
            <desc>fixed patch #2</desc>
            <filename>bug-61857-20110602111238.patch</filename>
            <type>text/plain</type>
            <size>5586</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODc4NzIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNDY4OTU4OTBkMDZjZWJiOTNmMjdk
OWVkY2E2NzEzMGUxMGJlMjYyLi5lNjkwZjkzNzZkNjE0OWI1MDI3MmNiZTI0MDk0ZmQyMmJlY2Fh
NWQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMDEgIEtlaXNoaSBIYXR0b3JpICA8
a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUgYXR0
cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1z
ZXQtYXR0cmlidXRlLmh0bWw6IEFkZGVkLiBUZXN0IHRvIHNlZSBpZiBzZXR0aW5nIHRoZSB2YWx1
ZSBhdHRyaWJ1dGUgb2YgYSAKKyAgICAgICAgcmFuZ2UgaW5wdXQgZWxlbWVudCB1cGRhdGVzIHRo
ZSB2YWx1ZS4KKwogMjAxMS0wNi0wMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgog
CiAgICAgICAgIFRoZXJlIHNlZW1zIHRvIGJlIHNvbWV0aGluZyBvZGQgYWJvdXQgcmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIgb24gTWFjLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QwM2YxZjVh
MTYxNTExZGI5OGI4MTQwZmI3ZTYwNGQxMDNjM2EzNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMyBAQAorVGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVw
ZGF0ZXMgdGhlIHZhbHVlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBp
bnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIGlucHV0LnZhbHVlIGlzICIyMCIKK1BBU1MgaW5wdXQu
dmFsdWUgaXMgIjEwIgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1dGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOWViYmQxMGQyYzQ4
MTc5Mjg4N2FkYzQ4NjI0NzE1MTVjYzIxZDIyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKQEAgLTAsMCArMSwzOCBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbignVGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVwZGF0
ZXMgdGhlIHZhbHVlLicpOworCit2YXIgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdp
bnB1dCcpOworaW5wdXQudHlwZSA9ICdyYW5nZSc7CitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21pbics
ICcwJyk7CitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21heCcsICcxMDAnKTsKKworaW5wdXQuc2V0QXR0
cmlidXRlKCd2YWx1ZScsICcxMCcpOworc2hvdWxkQmUoJ2lucHV0LnZhbHVlJywgJyIxMCInKTsK
KworLy8gcmV3cml0aW5nIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgc2hvdWxkIHVwZGF0ZSB0aGUgdmFs
dWUKK2lucHV0LnNldEF0dHJpYnV0ZSgndmFsdWUnLCAnMjAnKTsKK3Nob3VsZEJlKCdpbnB1dC52
YWx1ZScsICciMjAiJyk7CisKKy8vIGNoYW5naW5nIHRoZSBtYXggc2hvdWxkIGVmZmVjdCB2YWx1
ZQoraW5wdXQuc2V0QXR0cmlidXRlKCdtYXgnLCAnMTAnKTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1
ZScsICciMTAiJyk7CisKKy8vIHZhbHVlIGF0dHJpYnV0ZSBzaG91bGQgbm90IGNoYW5nZSB0aGUg
dmFsdWUgYWZ0ZXIgeW91IHNldCBhIHZhbHVlCitpbnB1dC52YWx1ZSA9IDEwOworaW5wdXQuc2V0
QXR0cmlidXRlKCd2YWx1ZScsICc1Jyk7CitzaG91bGRCZSgnaW5wdXQudmFsdWUnLCAnIjEwIicp
OworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTkwMWVkZGVjYmI3MWM3YTI1Y2NhNGQ3ZjA5
ZWQ0MjM4OWQyYmZmYi4uYjQwZGNmMDViMDIyY2ZjMDIwMWE0ZGFjNzNmODRiMzZlZWVlOWRiZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDExLTA2LTAxICBLZWlzaGkgSGF0dG9yaSAg
PGtlaXNoaUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEZpeCByYW5nZSBlbGVtZW50IG5vdCB1cGRhdGluZyB3aGVuIHZhbHVlIGF0
dHJpYnV0ZSBpcyBzZXQgd2l0aCBKUworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NjE4NTcKKworICAgICAgICBUZXN0OiBmYXN0L2Zvcm1zL3JhbmdlLXNl
dC1hdHRyaWJ1dGUuaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OmlzRGlydHlWYWx1ZSk6IFJldHVy
bnMgdGhlIGRpcnR5IHZhbHVlIGZsYWcsIGRlZmluZWQgYnkgdGhlIHNwZWMuCisgICAgICAgICog
aHRtbC9IVE1MSW5wdXRFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9SYW5nZUlucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZUlucHV0VHlwZTo6bWluT3JNYXhBdHRyaWJ1dGVD
aGFuZ2VkKTogQ2hhbmdlZCB0byBvbmx5IHNhbml0aXplIHRoZSB2YWx1ZSB3aGVuIHRoZSBkaXJ0
eSB2YWx1ZSBmbGFnIGlzIHRydWUuCisKIDIwMTEtMDYtMDEgIEFkcmllbm5lIFdhbGtlciAgPGVu
bmVAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBKYW1lcyBSb2JpbnNvbi4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDNkOWM3ZTAyNDgwYTRm
MjkzZjZlZGJlOGFlZDdhYmQ4MGM5NWUyOGIuLjQzY2I5ZjkxZThlNTJlYTQxYWQxNWFiZGVmMmM0
YjBjZjMxYTJjZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApA
QCAtMjM2LDYgKzIzNiwxMSBAQCBib29sIEhUTUxJbnB1dEVsZW1lbnQ6OmlzVmFsaWRWYWx1ZShj
b25zdCBTdHJpbmcmIHZhbHVlKSBjb25zdAogICAgICAgICAmJiAhdmFsdWVNaXNzaW5nKHZhbHVl
KTsKIH0KIAorYm9vbCBIVE1MSW5wdXRFbGVtZW50Ojppc0RpcnR5VmFsdWUoKSBjb25zdAorewor
ICAgIHJldHVybiAhbV92YWx1ZS5pc051bGwoKTsKK30KKwogYm9vbCBIVE1MSW5wdXRFbGVtZW50
Ojp0eXBlTWlzbWF0Y2goKSBjb25zdAogewogICAgIHJldHVybiBtX2lucHV0VHlwZS0+dHlwZU1p
c21hdGNoKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCmluZGV4IDdhZmZk
ZmU0ZTQ1YjlmOTZlOWJhZWYwYjA5MjhmNTYwODExNzg4NDkuLmE5MjFlMjE3MTUzZjE5YWVhYjVh
YjZhNGE2N2FjMGUzNjg4NDk5MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TElucHV0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5oCkBAIC0xMzksNiArMTM5LDcgQEAgcHVibGljOgogICAgIC8vIENoZWNrcyBpZiB0aGUgc3Bl
Y2lmaWVkIHN0cmluZyB3b3VsZCBiZSBhIHZhbGlkIHZhbHVlLgogICAgIC8vIFdlIHNob3VsZCBu
b3QgY2FsbCB0aGlzIGZvciB0eXBlcyB3aXRoIG5vIHN0cmluZyB2YWx1ZSBzdWNoIGFzIENIRUNL
Qk9YIGFuZCBSQURJTy4KICAgICBib29sIGlzVmFsaWRWYWx1ZShjb25zdCBTdHJpbmcmKSBjb25z
dDsKKyAgICBib29sIGlzRGlydHlWYWx1ZSgpIGNvbnN0OwogCiAgICAgU3RyaW5nIHNhbml0aXpl
VmFsdWUoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0
VHlwZS5jcHAKaW5kZXggMzFiMGE4NmIwMzA2ZDZlODgzZTk1NjI2OWUzZDYxZDYwYzA0MWI4NC4u
YWQyZWEwOGUxMGIxMGRlZWRiMTQzNzBhODAzNjE2YWRlNTM0ZjUzOCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKQEAgLTI0Miw3ICsyNDIsOCBAQCB2b2lkIFJhbmdlSW5w
dXRUeXBlOjptaW5Pck1heEF0dHJpYnV0ZUNoYW5nZWQoKQogICAgIElucHV0VHlwZTo6bWluT3JN
YXhBdHRyaWJ1dGVDaGFuZ2VkKCk7CiAKICAgICAvLyBTYW5pdGl6ZSB0aGUgdmFsdWUuCi0gICAg
ZWxlbWVudCgpLT5zZXRWYWx1ZShlbGVtZW50KCktPnZhbHVlKCkpOworICAgIGlmIChlbGVtZW50
KCktPmlzRGlydHlWYWx1ZSgpKQorICAgICAgICBlbGVtZW50KCktPnNldFZhbHVlKGVsZW1lbnQo
KS0+dmFsdWUoKSk7CiAgICAgZWxlbWVudCgpLT5zZXROZWVkc1N0eWxlUmVjYWxjKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>95719</attachid>
            <date>2011-06-01 21:54:18 -0700</date>
            <delta_ts>2011-06-08 00:49:01 -0700</delta_ts>
            <desc>hasDirtyValue, better test</desc>
            <filename>bug-61857-20110602135416.patch</filename>
            <type>text/plain</type>
            <size>5592</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODc4NzIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAxNDY4OTU4OTBkMDZjZWJiOTNmMjdk
OWVkY2E2NzEzMGUxMGJlMjYyLi5lNjkwZjkzNzZkNjE0OWI1MDI3MmNiZTI0MDk0ZmQyMmJlY2Fh
NWQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMDEgIEtlaXNoaSBIYXR0b3JpICA8
a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUgYXR0
cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1z
ZXQtYXR0cmlidXRlLmh0bWw6IEFkZGVkLiBUZXN0IHRvIHNlZSBpZiBzZXR0aW5nIHRoZSB2YWx1
ZSBhdHRyaWJ1dGUgb2YgYSAKKyAgICAgICAgcmFuZ2UgaW5wdXQgZWxlbWVudCB1cGRhdGVzIHRo
ZSB2YWx1ZS4KKwogMjAxMS0wNi0wMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgog
CiAgICAgICAgIFRoZXJlIHNlZW1zIHRvIGJlIHNvbWV0aGluZyBvZGQgYWJvdXQgcmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIgb24gTWFjLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZm9y
bXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2QwM2YxZjVh
MTYxNTExZGI5OGI4MTQwZmI3ZTYwNGQxMDNjM2EzNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSwxMyBAQAorVGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVw
ZGF0ZXMgdGhlIHZhbHVlLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2Yg
IlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBp
bnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIGlucHV0LnZhbHVlIGlzICIyMCIKK1BBU1MgaW5wdXQu
dmFsdWUgaXMgIjEwIgorUEFTUyBpbnB1dC52YWx1ZSBpcyAiMTAiCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1dGUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNjYyNmZhZDI2NTdk
Y2M1Yjk4OWYzNGE0YjZjMjY5YTM5OWRmYWY4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVz
dHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKQEAgLTAsMCArMSwzOSBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRl
c2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CitkZXNj
cmlwdGlvbignVGVzdCB0byBzZWUgaWYgc2V0dGluZyB0aGUgdmFsdWUgYXR0cmlidXRlIHVwZGF0
ZXMgdGhlIHZhbHVlLicpOworCit2YXIgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdp
bnB1dCcpOworaW5wdXQudHlwZSA9ICdyYW5nZSc7CisKK2lucHV0LnNldEF0dHJpYnV0ZSgndmFs
dWUnLCAnMTAnKTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1ZScsICciMTAiJyk7CisKK2lucHV0LnNl
dEF0dHJpYnV0ZSgnbWluJywgJzAnKTsKK2lucHV0LnNldEF0dHJpYnV0ZSgnbWF4JywgJzEwMCcp
OworCisvLyByZXdyaXRpbmcgdGhlIHZhbHVlIGF0dHJpYnV0ZSBzaG91bGQgdXBkYXRlIHRoZSB2
YWx1ZQoraW5wdXQuc2V0QXR0cmlidXRlKCd2YWx1ZScsICcyMCcpOworc2hvdWxkQmUoJ2lucHV0
LnZhbHVlJywgJyIyMCInKTsKKworLy8gY2hhbmdpbmcgdGhlIG1heCBzaG91bGQgZWZmZWN0IHZh
bHVlCitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21heCcsICcxMCcpOworc2hvdWxkQmUoJ2lucHV0LnZh
bHVlJywgJyIxMCInKTsKKworLy8gdmFsdWUgYXR0cmlidXRlIHNob3VsZCBub3QgY2hhbmdlIHRo
ZSB2YWx1ZSBhZnRlciB5b3Ugc2V0IGEgdmFsdWUKK2lucHV0LnZhbHVlID0gMTA7CitpbnB1dC5z
ZXRBdHRyaWJ1dGUoJ3ZhbHVlJywgJzUnKTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1ZScsICciMTAi
Jyk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4K
KzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlOTAxZWRkZWNiYjcxYzdhMjVjY2E0ZDdm
MDllZDQyMzg5ZDJiZmZiLi4yNzg1M2E3OWQ3NmVjNTQ1MWFmZjhjMDAwMThkZjY2NTY1YjYyYjgw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNv
cmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMDYtMDEgIEtlaXNoaSBIYXR0b3Jp
ICA8a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUg
YXR0cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgIFRlc3Q6IGZhc3QvZm9ybXMvcmFuZ2Ut
c2V0LWF0dHJpYnV0ZS5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6aGFzRGlydHlWYWx1ZSk6IFJl
dHVybnMgdGhlIGRpcnR5IHZhbHVlIGZsYWcsIGRlZmluZWQgYnkgdGhlIHNwZWMuCisgICAgICAg
ICogaHRtbC9IVE1MSW5wdXRFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9SYW5nZUlucHV0VHlw
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZUlucHV0VHlwZTo6bWluT3JNYXhBdHRyaWJ1
dGVDaGFuZ2VkKTogQ2hhbmdlZCB0byBvbmx5IHNhbml0aXplIHRoZSB2YWx1ZSB3aGVuIHRoZSBk
aXJ0eSB2YWx1ZSBmbGFnIGlzIHRydWUuCisKIDIwMTEtMDYtMDEgIEFkcmllbm5lIFdhbGtlciAg
PGVubmVAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBKYW1lcyBSb2JpbnNvbi4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDNkOWM3ZTAyNDgw
YTRmMjkzZjZlZGJlOGFlZDdhYmQ4MGM5NWUyOGIuLmI2ZmY3NTgxNjliNjA0YWJhYWQxYjc5MWFi
NWI4YzJhZjdlZTYzODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNw
cApAQCAtMjM2LDYgKzIzNiwxMSBAQCBib29sIEhUTUxJbnB1dEVsZW1lbnQ6OmlzVmFsaWRWYWx1
ZShjb25zdCBTdHJpbmcmIHZhbHVlKSBjb25zdAogICAgICAgICAmJiAhdmFsdWVNaXNzaW5nKHZh
bHVlKTsKIH0KIAorYm9vbCBIVE1MSW5wdXRFbGVtZW50OjpoYXNEaXJ0eVZhbHVlKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gIW1fdmFsdWUuaXNOdWxsKCk7Cit9CisKIGJvb2wgSFRNTElucHV0RWxl
bWVudDo6dHlwZU1pc21hdGNoKCkgY29uc3QKIHsKICAgICByZXR1cm4gbV9pbnB1dFR5cGUtPnR5
cGVNaXNtYXRjaCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRF
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaAppbmRleCA3
YWZmZGZlNGU0NWI5Zjk2ZTliYWVmMGIwOTI4ZjU2MDgxMTc4ODQ5Li5jNDQwMGU2YjVlZTgwZDU4
MTg3YWU0OTU5OWY4Mjk5M2E1MTgzMDMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxJbnB1dEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVs
ZW1lbnQuaApAQCAtMTM5LDYgKzEzOSw3IEBAIHB1YmxpYzoKICAgICAvLyBDaGVja3MgaWYgdGhl
IHNwZWNpZmllZCBzdHJpbmcgd291bGQgYmUgYSB2YWxpZCB2YWx1ZS4KICAgICAvLyBXZSBzaG91
bGQgbm90IGNhbGwgdGhpcyBmb3IgdHlwZXMgd2l0aCBubyBzdHJpbmcgdmFsdWUgc3VjaCBhcyBD
SEVDS0JPWCBhbmQgUkFESU8uCiAgICAgYm9vbCBpc1ZhbGlkVmFsdWUoY29uc3QgU3RyaW5nJikg
Y29uc3Q7CisgICAgYm9vbCBoYXNEaXJ0eVZhbHVlKCkgY29uc3Q7CiAKICAgICBTdHJpbmcgc2Fu
aXRpemVWYWx1ZShjb25zdCBTdHJpbmcmKSBjb25zdDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1Jhbmdl
SW5wdXRUeXBlLmNwcAppbmRleCAzMWIwYTg2YjAzMDZkNmU4ODNlOTU2MjY5ZTNkNjFkNjBjMDQx
Yjg0Li5mZGY1N2FjNGU5Y2U3YTBkZmE0YzczOThmMmE4OTVkNTExYTBhNzgwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcApAQCAtMjQyLDcgKzI0Miw4IEBAIHZvaWQgUmFu
Z2VJbnB1dFR5cGU6Om1pbk9yTWF4QXR0cmlidXRlQ2hhbmdlZCgpCiAgICAgSW5wdXRUeXBlOjpt
aW5Pck1heEF0dHJpYnV0ZUNoYW5nZWQoKTsKIAogICAgIC8vIFNhbml0aXplIHRoZSB2YWx1ZS4K
LSAgICBlbGVtZW50KCktPnNldFZhbHVlKGVsZW1lbnQoKS0+dmFsdWUoKSk7CisgICAgaWYgKGVs
ZW1lbnQoKS0+aGFzRGlydHlWYWx1ZSgpKQorICAgICAgICBlbGVtZW50KCktPnNldFZhbHVlKGVs
ZW1lbnQoKS0+dmFsdWUoKSk7CiAgICAgZWxlbWVudCgpLT5zZXROZWVkc1N0eWxlUmVjYWxjKCk7
CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96392</attachid>
            <date>2011-06-08 00:49:07 -0700</date>
            <delta_ts>2011-06-08 01:03:22 -0700</delta_ts>
            <desc>new patch</desc>
            <filename>bug-61857-20110608164905.patch</filename>
            <type>text/plain</type>
            <size>4185</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODgzMzAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmZDczNWY1NGM2MTE1NGFhOWU2N2Q2
ZjkwZDczNGIyMTA3NTEwNzlkLi4yMzhiYWYzMjBlODJmOTBhZDU5ZjY2OTk4OGI5ZmY3MmVhZTE0
ZjM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMDggIEtlaXNoaSBIYXR0b3JpICA8
a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUgYXR0
cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1z
ZXQtYXR0cmlidXRlLmh0bWw6IEFkZGVkLiBUZXN0IHRvIHNlZSBpZiBzZXR0aW5nIHRoZSB2YWx1
ZSBhdHRyaWJ1dGUgb2YgYSAKKyAgICAgICAgcmFuZ2UgaW5wdXQgZWxlbWVudCB1cGRhdGVzIHRo
ZSB2YWx1ZS4KKwogMjAxMS0wNi0wNyAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFtRdF0gU2tpcCBuZXcgZmFpbGluZyB0ZXN0cy4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjdkMDNmMWY1YTE2MTUxMWRiOThiODE0MGZiN2U2MDRkMTAzYzNhMzQKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1
dGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTMgQEAKK1Rlc3QgdG8gc2VlIGlmIHNldHRpbmcg
dGhlIHZhbHVlIGF0dHJpYnV0ZSB1cGRhdGVzIHRoZSB2YWx1ZS4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgaW5wdXQudmFsdWUgaXMgIjEwIgorUEFTUyBpbnB1dC52YWx1
ZSBpcyAiMjAiCitQQVNTIGlucHV0LnZhbHVlIGlzICIxMCIKK1BBU1MgaW5wdXQudmFsdWUgaXMg
IjEwIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMjY2MjZmYWQyNjU3ZGNjNWI5ODlmMzRhNGI2YzI2OWEzOTlkZmFmOAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS5o
dG1sCkBAIC0wLDAgKzEsMzkgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFRE
IEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3Jj
PSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1Rlc3QgdG8gc2VlIGlmIHNldHRpbmcgdGhl
IHZhbHVlIGF0dHJpYnV0ZSB1cGRhdGVzIHRoZSB2YWx1ZS4nKTsKKwordmFyIGlucHV0ID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTsKK2lucHV0LnR5cGUgPSAncmFuZ2UnOworCitp
bnB1dC5zZXRBdHRyaWJ1dGUoJ3ZhbHVlJywgJzEwJyk7CitzaG91bGRCZSgnaW5wdXQudmFsdWUn
LCAnIjEwIicpOworCitpbnB1dC5zZXRBdHRyaWJ1dGUoJ21pbicsICcwJyk7CitpbnB1dC5zZXRB
dHRyaWJ1dGUoJ21heCcsICcxMDAnKTsKKworLy8gcmV3cml0aW5nIHRoZSB2YWx1ZSBhdHRyaWJ1
dGUgc2hvdWxkIHVwZGF0ZSB0aGUgdmFsdWUKK2lucHV0LnNldEF0dHJpYnV0ZSgndmFsdWUnLCAn
MjAnKTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1ZScsICciMjAiJyk7CisKKy8vIGNoYW5naW5nIHRo
ZSBtYXggc2hvdWxkIGVmZmVjdCB2YWx1ZQoraW5wdXQuc2V0QXR0cmlidXRlKCdtYXgnLCAnMTAn
KTsKK3Nob3VsZEJlKCdpbnB1dC52YWx1ZScsICciMTAiJyk7CisKKy8vIHZhbHVlIGF0dHJpYnV0
ZSBzaG91bGQgbm90IGNoYW5nZSB0aGUgdmFsdWUgYWZ0ZXIgeW91IHNldCBhIHZhbHVlCitpbnB1
dC52YWx1ZSA9IDEwOworaW5wdXQuc2V0QXR0cmlidXRlKCd2YWx1ZScsICc1Jyk7CitzaG91bGRC
ZSgnaW5wdXQudmFsdWUnLCAnIjEwIicpOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1
ZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRl
c3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjYx
MzM4NDMwNDE1YzE1NDE0ZTkyNjU5MzM0MmE1MzNhOTNjMjAzYS4uOWZiMDE5YmY3NWYyMzZiYjMx
ZmI0NWIyZDk4ZDE3ZDEwYTYxYWE2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEx
LTA2LTA4ICBLZWlzaGkgSGF0dG9yaSAgPGtlaXNoaUB3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCByYW5nZSBlbGVtZW50IG5v
dCB1cGRhdGluZyB3aGVuIHZhbHVlIGF0dHJpYnV0ZSBpcyBzZXQgd2l0aCBKUworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjE4NTcKKworICAgICAgICBU
ZXN0OiBmYXN0L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1dGUuaHRtbAorCisgICAgICAgICogaHRt
bC9SYW5nZUlucHV0VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSYW5nZUlucHV0VHlwZTo6
bWluT3JNYXhBdHRyaWJ1dGVDaGFuZ2VkKTogQ2hhbmdlZCB0byBvbmx5IHNhbml0aXplIHRoZSB2
YWx1ZSB3aGVuIHRoZSBkaXJ0eSB2YWx1ZSBmbGFnIGlzIHRydWUuCisKIDIwMTEtMDYtMDggIE1h
cmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggdGhlIGJ1aWxkLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcAppbmRleCAzMWIwYTg2YjAzMDZkNmU4ODNl
OTU2MjY5ZTNkNjFkNjBjMDQxYjg0Li5mZGY1N2FjNGU5Y2U3YTBkZmE0YzczOThmMmE4OTVkNTEx
YTBhNzgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL1JhbmdlSW5wdXRUeXBlLmNwcApAQCAtMjQyLDcg
KzI0Miw4IEBAIHZvaWQgUmFuZ2VJbnB1dFR5cGU6Om1pbk9yTWF4QXR0cmlidXRlQ2hhbmdlZCgp
CiAgICAgSW5wdXRUeXBlOjptaW5Pck1heEF0dHJpYnV0ZUNoYW5nZWQoKTsKIAogICAgIC8vIFNh
bml0aXplIHRoZSB2YWx1ZS4KLSAgICBlbGVtZW50KCktPnNldFZhbHVlKGVsZW1lbnQoKS0+dmFs
dWUoKSk7CisgICAgaWYgKGVsZW1lbnQoKS0+aGFzRGlydHlWYWx1ZSgpKQorICAgICAgICBlbGVt
ZW50KCktPnNldFZhbHVlKGVsZW1lbnQoKS0+dmFsdWUoKSk7CiAgICAgZWxlbWVudCgpLT5zZXRO
ZWVkc1N0eWxlUmVjYWxjKCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96394</attachid>
            <date>2011-06-08 01:03:28 -0700</date>
            <delta_ts>2011-06-08 01:04:25 -0700</delta_ts>
            <desc>final patch</desc>
            <filename>bug-61857-20110608170326.patch</filename>
            <type>text/plain</type>
            <size>4513</size>
            <attacher name="Keishi Hattori">keishi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODgzMzAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmZDczNWY1NGM2MTE1NGFhOWU2N2Q2
ZjkwZDczNGIyMTA3NTEwNzlkLi4yMzhiYWYzMjBlODJmOTBhZDU5ZjY2OTk4OGI5ZmY3MmVhZTE0
ZjM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTEtMDYtMDggIEtlaXNoaSBIYXR0b3JpICA8
a2Vpc2hpQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRml4IHJhbmdlIGVsZW1lbnQgbm90IHVwZGF0aW5nIHdoZW4gdmFsdWUgYXR0
cmlidXRlIGlzIHNldCB3aXRoIEpTCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MTg1NworCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1zZXQtYXR0
cmlidXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9mb3Jtcy9yYW5nZS1z
ZXQtYXR0cmlidXRlLmh0bWw6IEFkZGVkLiBUZXN0IHRvIHNlZSBpZiBzZXR0aW5nIHRoZSB2YWx1
ZSBhdHRyaWJ1dGUgb2YgYSAKKyAgICAgICAgcmFuZ2UgaW5wdXQgZWxlbWVudCB1cGRhdGVzIHRo
ZSB2YWx1ZS4KKwogMjAxMS0wNi0wNyAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFtRdF0gU2tpcCBuZXcgZmFpbGluZyB0ZXN0cy4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1dGUtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjAyMWU3N2YzZDM1OTllZDU2ZGJjZDI2MjdlYWI5NWMwMTc0YjA5MzkKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3JhbmdlLXNldC1hdHRyaWJ1
dGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTYgQEAKK1Rlc3QgdG8gc2VlIGlmIHNldHRpbmcg
dGhlIHZhbHVlIGF0dHJpYnV0ZSB1cGRhdGVzIHRoZSB2YWx1ZS4KKworT24gc3VjY2VzcywgeW91
IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1Qg
Q09NUExFVEUiLgorCisKK1BBU1MgaW5wdXQuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsICIxMCIpOyBp
bnB1dC52YWx1ZSBpcyAiMTAiCityZXdyaXRpbmcgdGhlIHZhbHVlIGF0dHJpYnV0ZSBzaG91bGQg
dXBkYXRlIHRoZSB2YWx1ZQorUEFTUyBpbnB1dC5zZXRBdHRyaWJ1dGUoInZhbHVlIiwgIjIwIik7
IGlucHV0LnZhbHVlIGlzICIyMCIKK2NoYW5naW5nIHRoZSBtYXggc2hvdWxkIGVmZmVjdCB2YWx1
ZQorUEFTUyBpbnB1dC5zZXRBdHRyaWJ1dGUoIm1heCIsICIxMCIpOyBpbnB1dC52YWx1ZSBpcyAi
MTAiCit2YWx1ZSBhdHRyaWJ1dGUgc2hvdWxkIG5vdCBjaGFuZ2UgdGhlIHZhbHVlIGFmdGVyIHlv
dSBzZXQgYSB2YWx1ZQorUEFTUyBpbnB1dC52YWx1ZSA9IDEwOyBpbnB1dC5zZXRBdHRyaWJ1dGUo
InZhbHVlIiwgIjUiKTsgaW5wdXQudmFsdWUgaXMgIjEwIgorUEFTUyBzdWNjZXNzZnVsbHlQYXJz
ZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjIyNjhkOTY4Yjg2ZjgyN2Ri
Y2NiM2M3Y2I1YTliNjdlYzA1MDM1MgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZm9ybXMvcmFuZ2Utc2V0LWF0dHJpYnV0ZS5odG1sCkBAIC0wLDAgKzEsMzQgQEAKKzwhRE9D
VFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+
Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorZGVzY3JpcHRp
b24oJ1Rlc3QgdG8gc2VlIGlmIHNldHRpbmcgdGhlIHZhbHVlIGF0dHJpYnV0ZSB1cGRhdGVzIHRo
ZSB2YWx1ZS4nKTsKKwordmFyIGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQn
KTsKK2lucHV0LnR5cGUgPSAncmFuZ2UnOworCitzaG91bGRCZSgnaW5wdXQuc2V0QXR0cmlidXRl
KCJ2YWx1ZSIsICIxMCIpOyBpbnB1dC52YWx1ZScsICciMTAiJyk7CisKK2lucHV0LnNldEF0dHJp
YnV0ZSgnbWluJywgJzAnKTsKK2lucHV0LnNldEF0dHJpYnV0ZSgnbWF4JywgJzEwMCcpOworCitk
ZWJ1ZygicmV3cml0aW5nIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgc2hvdWxkIHVwZGF0ZSB0aGUgdmFs
dWUiKQorc2hvdWxkQmUoJ2lucHV0LnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiMjAiKTsgaW5wdXQu
dmFsdWUnLCAnIjIwIicpOworCitkZWJ1ZygiY2hhbmdpbmcgdGhlIG1heCBzaG91bGQgZWZmZWN0
IHZhbHVlIikKK3Nob3VsZEJlKCdpbnB1dC5zZXRBdHRyaWJ1dGUoIm1heCIsICIxMCIpOyBpbnB1
dC52YWx1ZScsICciMTAiJyk7CisKK2RlYnVnKCJ2YWx1ZSBhdHRyaWJ1dGUgc2hvdWxkIG5vdCBj
aGFuZ2UgdGhlIHZhbHVlIGFmdGVyIHlvdSBzZXQgYSB2YWx1ZSIpCitzaG91bGRCZSgnaW5wdXQu
dmFsdWUgPSAxMDsgaW5wdXQuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsICI1Iik7IGlucHV0LnZhbHVl
JywgJyIxMCInKTsKKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7Cis8L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI2MTMzODQzMDQxNWMxNTQx
NGU5MjY1OTMzNDJhNTMzYTkzYzIwM2EuLjlmYjAxOWJmNzVmMjM2YmIzMWZiNDViMmQ5OGQxN2Qx
MGE2MWFhNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0wNi0wOCAgS2Vpc2hp
IEhhdHRvcmkgIDxrZWlzaGlAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBGaXggcmFuZ2UgZWxlbWVudCBub3QgdXBkYXRpbmcgd2hl
biB2YWx1ZSBhdHRyaWJ1dGUgaXMgc2V0IHdpdGggSlMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYxODU3CisKKyAgICAgICAgVGVzdDogZmFzdC9mb3Jt
cy9yYW5nZS1zZXQtYXR0cmlidXRlLmh0bWwKKworICAgICAgICAqIGh0bWwvUmFuZ2VJbnB1dFR5
cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmFuZ2VJbnB1dFR5cGU6Om1pbk9yTWF4QXR0cmli
dXRlQ2hhbmdlZCk6IENoYW5nZWQgdG8gb25seSBzYW5pdGl6ZSB0aGUgdmFsdWUgd2hlbiB0aGUg
ZGlydHkgdmFsdWUgZmxhZyBpcyB0cnVlLgorCiAyMDExLTA2LTA4ICBNYXJrIFJvd2UgIDxtcm93
ZUBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IHRoZSBidWlsZC4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvUmFuZ2VJbnB1dFR5cGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9S
YW5nZUlucHV0VHlwZS5jcHAKaW5kZXggMzFiMGE4NmIwMzA2ZDZlODgzZTk1NjI2OWUzZDYxZDYw
YzA0MWI4NC4uZmRmNTdhYzRlOWNlN2EwZGZhNGM3Mzk4ZjJhODk1ZDUxMWEwYTc4MCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9SYW5nZUlucHV0VHlwZS5jcHAKQEAgLTI0Miw3ICsyNDIsOCBAQCB2b2lk
IFJhbmdlSW5wdXRUeXBlOjptaW5Pck1heEF0dHJpYnV0ZUNoYW5nZWQoKQogICAgIElucHV0VHlw
ZTo6bWluT3JNYXhBdHRyaWJ1dGVDaGFuZ2VkKCk7CiAKICAgICAvLyBTYW5pdGl6ZSB0aGUgdmFs
dWUuCi0gICAgZWxlbWVudCgpLT5zZXRWYWx1ZShlbGVtZW50KCktPnZhbHVlKCkpOworICAgIGlm
IChlbGVtZW50KCktPmhhc0RpcnR5VmFsdWUoKSkKKyAgICAgICAgZWxlbWVudCgpLT5zZXRWYWx1
ZShlbGVtZW50KCktPnZhbHVlKCkpOwogICAgIGVsZW1lbnQoKS0+c2V0TmVlZHNTdHlsZVJlY2Fs
YygpOwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>