<?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>45709</bug_id>
          
          <creation_ts>2010-09-13 13:53:34 -0700</creation_ts>
          <short_desc>Need to remove autocorrection underlines in current line when newline is entered.</short_desc>
          <delta_ts>2010-09-24 01:44:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.6</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jia Pu">jiapu.mail</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>hamaji</cc>
    
    <cc>hbono</cc>
    
    <cc>jiapu.mail</cc>
    
    <cc>rniwa</cc>
    
    <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>278452</commentid>
    <comment_count>0</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-13 13:53:34 -0700</bug_when>
    <thetext>In Bug 44958, we added blue underline on autocorrected words. To be consistent with the behavior in NSTextView, we need to remove autocorrection underline in current line when a newline character is inserted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278453</commentid>
    <comment_count>1</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-13 13:56:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/8335576&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278490</commentid>
    <comment_count>2</comment_count>
      <attachid>67475</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-13 14:48:17 -0700</bug_when>
    <thetext>Created attachment 67475
Proposed patch (v1)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>279102</commentid>
    <comment_count>3</comment_count>
      <attachid>67475</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-09-14 12:56:09 -0700</bug_when>
    <thetext>Comment on attachment 67475
Proposed patch (v1)

This is the wrong level for this code. I am almost certain we don&apos;t want to removal of markers tied specifically to the code path that handles hitting the newline key.

Enrica, maybe you can help Jia find the right place for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>279602</commentid>
    <comment_count>4</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2010-09-15 10:24:01 -0700</bug_when>
    <thetext>I think the right place to do this is TypingCommand. Look at the doApply method, that is where we handle special characters such as delete, enter, backspace, etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280227</commentid>
    <comment_count>5</comment_count>
      <attachid>67822</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-16 11:32:52 -0700</bug_when>
    <thetext>Created attachment 67822
Proposed patch (v2)

Revised patch based on feedback in comment #4.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280233</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-16 11:38:40 -0700</bug_when>
    <thetext>There is no way to test this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280235</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-16 11:42:01 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; There is no way to test this?

I think you can test this given the tests in:
http://trac.webkit.org/browser/trunk/LayoutTests/editing/spelling

Take a look at http://trac.webkit.org/browser/trunk/LayoutTests/editing/editing.js for how to insert a line break from the script.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280236</commentid>
    <comment_count>8</comment_count>
      <attachid>67822</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-09-16 11:43:45 -0700</bug_when>
    <thetext>Comment on attachment 67822
Proposed patch (v2)

&gt; +        * editing/TypingCommand.cpp:
&gt; +        (WebCore::TypingCommand::insertLineBreak): Remove &quot;CorrectionUIIndication&quot; markers when a line
&gt; +          break is inserted.
&gt; +        (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Remove &quot;CorrectionUIIndication&quot;
&gt; +          markers when a paragraph separator is inserted.
&gt; +        (WebCore::TypingCommand::insertParagraphSeparator): Ditto.

Won’t the call in respondToChangedSelection already take care of this? It doesn’t make sense to me that these calls need to explicitly be done by the typing command machinery.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280331</commentid>
    <comment_count>9</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-16 13:46:11 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 67822 [details])
&gt; &gt; +        * editing/TypingCommand.cpp:
&gt; &gt; +        (WebCore::TypingCommand::insertLineBreak): Remove &quot;CorrectionUIIndication&quot; markers when a line
&gt; &gt; +          break is inserted.
&gt; &gt; +        (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Remove &quot;CorrectionUIIndication&quot;
&gt; &gt; +          markers when a paragraph separator is inserted.
&gt; &gt; +        (WebCore::TypingCommand::insertParagraphSeparator): Ditto.
&gt; 
&gt; Won’t the call in respondToChangedSelection already take care of this? It doesn’t make sense to me that these calls need to explicitly be done by the typing command machinery.

If I understand the code correctly, respondToChangedSelection() is called on every text insertion. However the behavior we want (which is consistent with AppKit) is clearing the markers only when a line break is inserted. 

That said, please let me know if this can be done in respondToChangedSelection().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280403</commentid>
    <comment_count>10</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2010-09-16 15:37:27 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; Won’t the call in respondToChangedSelection already take care of this? It doesn’t make sense to me that these calls need to explicitly be done by the typing command machinery.
&gt; 
&gt; If I understand the code correctly, respondToChangedSelection() is called on every text insertion. However the behavior we want (which is consistent with AppKit) is clearing the markers only when a line break is inserted.

Why do we want this behavior on all platforms?  If you&apos;re trying to match WebKit&apos;s behavior with AppKit, shouldn&apos;t we just doing that for Mac platforms?  Also, I&apos;m not even sure clearing markers only when a line break is inserted is an obvious improvement on Mac.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280414</commentid>
    <comment_count>11</comment_count>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-16 15:45:27 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (In reply to comment #9)
&gt; &gt; (In reply to comment #8)
&gt; &gt; &gt; Won’t the call in respondToChangedSelection already take care of this? It doesn’t make sense to me that these calls need to explicitly be done by the typing command machinery.
&gt; &gt; 
&gt; &gt; If I understand the code correctly, respondToChangedSelection() is called on every text insertion. However the behavior we want (which is consistent with AppKit) is clearing the markers only when a line break is inserted.
&gt; 
&gt; Why do we want this behavior on all platforms?  If you&apos;re trying to match WebKit&apos;s behavior with AppKit, shouldn&apos;t we just doing that for Mac platforms?  Also, I&apos;m not even sure clearing markers only when a line break is inserted is an obvious improvement on Mac.

This is in effect Mac only, since on non-Mac platform, the said marker doesn&apos;t get added  in the first place. However, I can certainly bracket the removal code with ifdef&apos;s if it&apos;s desirable.

The goal of this patch is to bring WebKit into parity with other UI on Mac. To further improve this design is probably outside of the scope of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280468</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-09-16 17:17:14 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; If I understand the code correctly, respondToChangedSelection() is called on every text insertion.

I was referring to the code you added to respondToChangedSelection. But it seems that code removes the marker from the first word in the selection and is not related to the removal when inserting a line break.

I still don’t understand why the code is tied to editing operations. Typically hitting return and pasting in a return character would do the same thing. Is it correct that pasting in a return character would not remove the marker even though hitting the return key would?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284092</commentid>
    <comment_count>13</comment_count>
      <attachid>68618</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-23 16:42:11 -0700</bug_when>
    <thetext>Created attachment 68618
Proposed patch (v3)

Much simplified patch. 

This change affects only Mac OSX.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284095</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-23 16:45:04 -0700</bug_when>
    <thetext>Attachment 68618 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebCore/ChangeLog:7:  Line contains tab character.  [whitespace/tab] [5]
WebCore/ChangeLog:8:  Line contains tab character.  [whitespace/tab] [5]
WebCore/ChangeLog:9:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 3 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284103</commentid>
    <comment_count>15</comment_count>
      <attachid>68621</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-23 16:51:49 -0700</bug_when>
    <thetext>Created attachment 68621
Proposed patch (v4)

Removed tabs from previous patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284118</commentid>
    <comment_count>16</comment_count>
      <attachid>68621</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2010-09-23 17:06:41 -0700</bug_when>
    <thetext>Comment on attachment 68621
Proposed patch (v4)

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

The rest looks good.

&gt; WebCore/editing/Editor.cpp:3131
&gt; +    VisiblePosition newSelectionEnd(newSelection.end(), newSelection.affinity());

There is no need to use oldSelection, oldSelectionStart and newSelectionEnd. You can simply do:
if (!inSameParagraph(m_frame-&gt;selection()-&gt;selection().visibleStart(), newSelection.visibleEnd()))
and remove the three lines above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284130</commentid>
    <comment_count>17</comment_count>
      <attachid>68629</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-23 17:22:06 -0700</bug_when>
    <thetext>Created attachment 68629
Proposed patch (v5)

Revised per comment #16.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284133</commentid>
    <comment_count>18</comment_count>
      <attachid>68629</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2010-09-23 17:23:51 -0700</bug_when>
    <thetext>Comment on attachment 68629
Proposed patch (v5)

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284194</commentid>
    <comment_count>19</comment_count>
      <attachid>68629</attachid>
    <who name="">mitz</who>
    <bug_when>2010-09-23 19:46:13 -0700</bug_when>
    <thetext>Comment on attachment 68629
Proposed patch (v5)

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

r=me. Set the cq flag to ? if you want this committed without changing the email address.

&gt; WebCore/ChangeLog:1
&gt; +2010-09-23  Jia Pu  &lt;jiapu.mail@gmail.com&gt;

You used a different email address in earlier patches. Are you sure you want to switch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284195</commentid>
    <comment_count>20</comment_count>
      <attachid>68641</attachid>
    <who name="Jia Pu">jiapu.mail</who>
    <bug_when>2010-09-23 19:58:17 -0700</bug_when>
    <thetext>Created attachment 68641
proposed patch (v6)

Using correct patch author email address.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284250</commentid>
    <comment_count>21</comment_count>
      <attachid>68641</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-09-23 23:28:57 -0700</bug_when>
    <thetext>Comment on attachment 68641
proposed patch (v6)

r+ based on mitz review. As Jia mentioned, the last patch only changes email address.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284295</commentid>
    <comment_count>22</comment_count>
      <attachid>68641</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-24 01:44:34 -0700</bug_when>
    <thetext>Comment on attachment 68641
proposed patch (v6)

Clearing flags on attachment: 68641

Committed r68243: &lt;http://trac.webkit.org/changeset/68243&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284296</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-24 01:44:41 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67475</attachid>
            <date>2010-09-13 14:48:17 -0700</date>
            <delta_ts>2010-09-16 11:32:52 -0700</delta_ts>
            <desc>Proposed patch (v1)</desc>
            <filename>webkit_bug45709.patch</filename>
            <type>text/plain</type>
            <size>1527</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2NzQwNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTIgQEAKKzIwMTAtMDktMTMgIEppYSBQdSAgPGpwdUBhcHBsZS5jb20+CisKKyAg
ICAgICAgTmVlZCB0byByZW1vdmUgYXV0b2NvcnJlY3Rpb24gdW5kZXJsaW5lcyBpbiBjdXJyZW50
IGxpbmUgd2hlbiBuZXdsaW5lIGlzIGVudGVyZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NTcwOQorCisgICAgICAgICogZWRpdGluZy9FZGl0b3Iu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpoYW5kbGVUZXh0RXZlbnQpOiBSZW1vdmUg
IlJlcGxhY2VtZW50IiBtYXJrcyBmcm9tIGN1cnJlbnQgbGluZSBiZWZvcmUKKyAgICAgICAgICBp
bnNlcnRpbmcgbGluZSBicmVhayBvciBwYXJhZ3JhcGggc2VwYXJhdG9yLgorCiAyMDEwLTA5LTEz
ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgRGFyaW4gQWRsZXIuCkluZGV4OiBXZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAkocmV2aXNpb24gNjc0MDcpCisr
KyBXZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ4LDYgKzE0
OCwxMiBAQCBib29sIEVkaXRvcjo6aGFuZGxlVGV4dEV2ZW50KFRleHRFdmVudCogCiAKICAgICBT
dHJpbmcgZGF0YSA9IGV2ZW50LT5kYXRhKCk7CiAgICAgaWYgKGRhdGEgPT0gIlxuIikgeworICAg
ICAgICAvLyBSZW1vdmUgYWxsIGF1dG9jb3JyZWN0aW9uIG1hcmtlcnMgaW4gY3VycmVudCBsaW5l
LgorICAgICAgICBWaXNpYmxlU2VsZWN0aW9uIHNlbGVjdGlvbihmcmFtZSgpLT5zZWxlY3Rpb24o
KS0+c2VsZWN0aW9uKCkpOworICAgICAgICBWaXNpYmxlUG9zaXRpb24gc3RhcnQoc2VsZWN0aW9u
LnN0YXJ0KCksIHNlbGVjdGlvbi5hZmZpbml0eSgpKTsKKyAgICAgICAgVmlzaWJsZVBvc2l0aW9u
IGxpbmVTdGFydCA9IHN0YXJ0T2ZMaW5lKHN0YXJ0KTsKKyAgICAgICAgVmlzaWJsZVNlbGVjdGlv
biBsaW5lID0gVmlzaWJsZVNlbGVjdGlvbihsaW5lU3RhcnQsIHN0YXJ0KTsKKyAgICAgICAgZnJh
bWUoKS0+ZG9jdW1lbnQoKS0+bWFya2VycygpLT5yZW1vdmVNYXJrZXJzKGxpbmUuZmlyc3RSYW5n
ZSgpLmdldCgpLCBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQpOwogICAgICAgICBpZiAoZXZl
bnQtPmlzTGluZUJyZWFrKCkpCiAgICAgICAgICAgICByZXR1cm4gaW5zZXJ0TGluZUJyZWFrKCk7
CiAgICAgICAgIHJldHVybiBpbnNlcnRQYXJhZ3JhcGhTZXBhcmF0b3IoKTsK
</data>
<flag name="review"
          id="56783"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67822</attachid>
            <date>2010-09-16 11:32:52 -0700</date>
            <delta_ts>2010-09-23 16:42:11 -0700</delta_ts>
            <desc>Proposed patch (v2)</desc>
            <filename>webkit_bug45709.patch</filename>
            <type>text/plain</type>
            <size>7450</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2NzYzOCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzUgQEAKKzIwMTAtMDktMTYgIEppYSBQdSAgPGpwdUBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVlZCB0byByZW1v
dmUgYXV0b2NvcnJlY3Rpb24gdW5kZXJsaW5lcyBpbiBjdXJyZW50IGxpbmUgd2hlbiBuZXdsaW5l
IGlzIGVudGVyZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00NTcwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vODMzNTU3Nj4KKworICAgICAgICAq
IGRvbS9Eb2N1bWVudE1hcmtlci5oOiBBZGRlZCAiQ29ycmVjdGlvblVJSW5kaWNhdGlvbiIgdG8g
aW5kaWNhdGUgdGhlIHdvcmRzIG9uIHdoaWNoIHdlIG5lZWQKKyAgICAgICAgICB0byBkcmF3IGF1
dG9jb3JyZWN0aW9uIHVuZGVybGluZS4gV2UgY2Fubm90IHVzZSBleGlzdGluZyAiUmVwbGFjZW1l
bnQiIGZvciB0aGlzIHB1cnBvc2UsCisgICAgICAgICAgc2luY2UgaXQgaXMgbm90IG1lYW50IHRv
IGJlIHJlbW92ZWQgb25jZSBpdCBpcyBhZGRlZC4gQnV0IHdlIG5lZWQgdG8gcmVtb3ZlIGFsbCBh
dXRvY29ycmVjdGlvbgorICAgICAgICAgIHVuZGVybGluZXMgd2hlbiBhIGxpbmUgYnJlYWsgb3Ig
cGFyYWdyYXBoIHNlcGFyYXRvciBpcyBpbnNlcnRlZCwgd2hpY2ggaXMgdGhlIGJlaGF2aW9yIGlu
CisgICAgICAgICAgTlNUZXh0Vmlldy4gSGVuY2Ugd2UgbmVlZCBhIHNlcGFyYXRlIG1hcmtlciB2
YWx1ZSBmb3IgZHJhd2luZyBhdXRvY29ycmVjdGlvbiB1bmRlcmxpbmUuCisKKyAgICAgICAgKiBl
ZGl0aW5nL0VkaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6Om1hcmtBbGxNaXNz
cGVsbGluZ3NBbmRCYWRHcmFtbWFySW5SYW5nZXMpOiBBZGQgIkNvcnJlY3Rpb25VSUluZGljYXRp
b24iIHdoZW4KKyAgICAgICAgICBhdXRvY29ycmVjdGlvbiB0YWtlcyBwbGFjZS4KKyAgICAgICAg
KFdlYkNvcmU6OkVkaXRvcjo6cmVzcG9uZFRvQ2hhbmdlZFNlbGVjdGlvbik6IFJlbW92ZSAiQ29y
cmVjdGlvblVJSW5kaWNhdGlvbiIgd2hlbmV2ZXIgd2UgcmVtb3ZlCisgICAgICAgICAgIlJlcGxh
Y2VtZW50Ii4KKworICAgICAgICAqIGVkaXRpbmcvVHlwaW5nQ29tbWFuZC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpUeXBpbmdDb21tYW5kOjppbnNlcnRMaW5lQnJlYWspOiBSZW1vdmUgIkNvcnJl
Y3Rpb25VSUluZGljYXRpb24iIG1hcmtlcnMgd2hlbiBhIGxpbmUKKyAgICAgICAgICBicmVhayBp
cyBpbnNlcnRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlR5cGluZ0NvbW1hbmQ6Omluc2VydFBhcmFn
cmFwaFNlcGFyYXRvckluUXVvdGVkQ29udGVudCk6IFJlbW92ZSAiQ29ycmVjdGlvblVJSW5kaWNh
dGlvbiIKKyAgICAgICAgICBtYXJrZXJzIHdoZW4gYSBwYXJhZ3JhcGggc2VwYXJhdG9yIGlzIGlu
c2VydGVkLgorICAgICAgICAoV2ViQ29yZTo6VHlwaW5nQ29tbWFuZDo6aW5zZXJ0UGFyYWdyYXBo
U2VwYXJhdG9yKTogRGl0dG8uCisKKyAgICAgICAgKiByZW5kZXJpbmcvSW5saW5lVGV4dEJveC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjp0ZXh0Q2hlY2tpbmdMaW5lU3R5bGVGb3JNYXJrZXJUeXBl
KTogVXNlICJDb3JyZWN0aW9uVUlJbmRpY2F0aW9uIiBtYXJrZXIgaW5zdGVhZCBvZgorICAgICAg
ICAgICJSZXBsYWNlbWVudCIgdG8gZHJhdyBhdXRvY29ycmVjdGlvbiB1bmRlcmxpbmUuCisgICAg
ICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpwYWludERvY3VtZW50TWFya2Vycyk6IERpdHRv
LgorCiAyMDEwLTA5LTE2ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNv
bT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByNjc2MjguCkluZGV4OiBXZWJD
b3JlL2RvbS9Eb2N1bWVudE1hcmtlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL0RvY3Vt
ZW50TWFya2VyLmgJKHJldmlzaW9uIDY3NjM4KQorKysgV2ViQ29yZS9kb20vRG9jdW1lbnRNYXJr
ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsNiArNDAsNyBAQCBzdHJ1Y3QgRG9jdW1lbnRNYXJr
ZXIgewogICAgICAgICBHcmFtbWFyLAogICAgICAgICBUZXh0TWF0Y2gsCiAgICAgICAgIFJlcGxh
Y2VtZW50LAorICAgICAgICBDb3JyZWN0aW9uVUlJbmRpY2F0aW9uLAogICAgICAgICBSZWplY3Rl
ZENvcnJlY3Rpb24KICAgICB9OwogCkluZGV4OiBXZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAkocmV2aXNpb24gNjc2Mzgp
CisrKyBXZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc1NSw2
ICsyNzU1LDcgQEAgdm9pZCBFZGl0b3I6Om1hcmtBbGxNaXNzcGVsbGluZ3NBbmRCYWRHcgogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEFkZCBhIG1hcmtlciBzbyB0aGF0IGNvcnJlY3Rp
b25zIGNhbiBlYXNpbHkgYmUgdW5kb25lIGFuZCB3b24ndCBiZSByZS1jb3JyZWN0ZWQuCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgUmVmUHRyPFJhbmdlPiByZXBsYWNlZFJhbmdlID0gVGV4
dEl0ZXJhdG9yOjpzdWJyYW5nZShwYXJhZ3JhcGhSYW5nZS5nZXQoKSwgcmVzdWx0TG9jYXRpb24s
IHJlcGxhY2VtZW50TGVuZ3RoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXBsYWNl
ZFJhbmdlLT5zdGFydENvbnRhaW5lcigpLT5kb2N1bWVudCgpLT5tYXJrZXJzKCktPmFkZE1hcmtl
cihyZXBsYWNlZFJhbmdlLmdldCgpLCBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQsIHJlcGxh
Y2VkU3RyaW5nKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXBsYWNlZFJhbmdlLT5z
dGFydENvbnRhaW5lcigpLT5kb2N1bWVudCgpLT5tYXJrZXJzKCktPmFkZE1hcmtlcihyZXBsYWNl
ZFJhbmdlLmdldCgpLCBEb2N1bWVudE1hcmtlcjo6Q29ycmVjdGlvblVJSW5kaWNhdGlvbik7CiAg
ICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgICB9CkBAIC0zNTg2LDYgKzM1ODcsNyBAQCB2b2lkIEVkaXRvcjo6cmVzcG9uZFRvQ2hh
bmdlZFNlbGVjdGlvbihjCiAgICAgICAgIGlmIChSZWZQdHI8UmFuZ2U+IHdvcmRSYW5nZSA9IG5l
d0FkamFjZW50V29yZHMudG9Ob3JtYWxpemVkUmFuZ2UoKSkgewogICAgICAgICAgICAgbV9mcmFt
ZS0+ZG9jdW1lbnQoKS0+bWFya2VycygpLT5yZW1vdmVNYXJrZXJzKHdvcmRSYW5nZS5nZXQoKSwg
RG9jdW1lbnRNYXJrZXI6OlNwZWxsaW5nKTsKICAgICAgICAgICAgIG1fZnJhbWUtPmRvY3VtZW50
KCktPm1hcmtlcnMoKS0+cmVtb3ZlTWFya2Vycyh3b3JkUmFuZ2UuZ2V0KCksIERvY3VtZW50TWFy
a2VyOjpSZXBsYWNlbWVudCk7CisgICAgICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5tYXJr
ZXJzKCktPnJlbW92ZU1hcmtlcnMod29yZFJhbmdlLmdldCgpLCBEb2N1bWVudE1hcmtlcjo6Q29y
cmVjdGlvblVJSW5kaWNhdGlvbik7CiAgICAgICAgIH0KICAgICAgICAgaWYgKFJlZlB0cjxSYW5n
ZT4gc2VudGVuY2VSYW5nZSA9IG5ld1NlbGVjdGVkU2VudGVuY2UudG9Ob3JtYWxpemVkUmFuZ2Uo
KSkKICAgICAgICAgICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+cmVtb3ZlTWFy
a2VycyhzZW50ZW5jZVJhbmdlLmdldCgpLCBEb2N1bWVudE1hcmtlcjo6R3JhbW1hcik7CkluZGV4
OiBXZWJDb3JlL2VkaXRpbmcvVHlwaW5nQ29tbWFuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9lZGl0aW5nL1R5cGluZ0NvbW1hbmQuY3BwCShyZXZpc2lvbiA2NzYzOCkKKysrIFdlYkNvcmUv
ZWRpdGluZy9UeXBpbmdDb21tYW5kLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg2LDEwICsxODYs
MTIgQEAgdm9pZCBUeXBpbmdDb21tYW5kOjppbnNlcnRUZXh0KERvY3VtZW50Kgogdm9pZCBUeXBp
bmdDb21tYW5kOjppbnNlcnRMaW5lQnJlYWsoRG9jdW1lbnQgKmRvY3VtZW50KQogewogICAgIEFT
U0VSVChkb2N1bWVudCk7Ci0gICAgCisKICAgICBGcmFtZSogZnJhbWUgPSBkb2N1bWVudC0+ZnJh
bWUoKTsKICAgICBBU1NFUlQoZnJhbWUpOwotICAgIAorCisgICAgZG9jdW1lbnQtPm1hcmtlcnMo
KS0+cmVtb3ZlTWFya2VycyhEb2N1bWVudE1hcmtlcjo6Q29ycmVjdGlvblVJSW5kaWNhdGlvbik7
CisKICAgICBFZGl0Q29tbWFuZCogbGFzdEVkaXRDb21tYW5kID0gZnJhbWUtPmVkaXRvcigpLT5s
YXN0RWRpdENvbW1hbmQoKTsKICAgICBpZiAoaXNPcGVuRm9yTW9yZVR5cGluZ0NvbW1hbmQobGFz
dEVkaXRDb21tYW5kKSkgewogICAgICAgICBzdGF0aWNfY2FzdDxUeXBpbmdDb21tYW5kKj4obGFz
dEVkaXRDb21tYW5kKS0+aW5zZXJ0TGluZUJyZWFrKCk7CkBAIC0yMDIsMTAgKzIwNCwxMiBAQCB2
b2lkIFR5cGluZ0NvbW1hbmQ6Omluc2VydExpbmVCcmVhayhEb2N1CiB2b2lkIFR5cGluZ0NvbW1h
bmQ6Omluc2VydFBhcmFncmFwaFNlcGFyYXRvckluUXVvdGVkQ29udGVudChEb2N1bWVudCAqZG9j
dW1lbnQpCiB7CiAgICAgQVNTRVJUKGRvY3VtZW50KTsKLSAgICAKKwogICAgIEZyYW1lKiBmcmFt
ZSA9IGRvY3VtZW50LT5mcmFtZSgpOwogICAgIEFTU0VSVChmcmFtZSk7Ci0gICAgCisKKyAgICBk
b2N1bWVudC0+bWFya2VycygpLT5yZW1vdmVNYXJrZXJzKERvY3VtZW50TWFya2VyOjpDb3JyZWN0
aW9uVUlJbmRpY2F0aW9uKTsKKwogICAgIEVkaXRDb21tYW5kKiBsYXN0RWRpdENvbW1hbmQgPSBm
cmFtZS0+ZWRpdG9yKCktPmxhc3RFZGl0Q29tbWFuZCgpOwogICAgIGlmIChpc09wZW5Gb3JNb3Jl
VHlwaW5nQ29tbWFuZChsYXN0RWRpdENvbW1hbmQpKSB7CiAgICAgICAgIHN0YXRpY19jYXN0PFR5
cGluZ0NvbW1hbmQqPihsYXN0RWRpdENvbW1hbmQpLT5pbnNlcnRQYXJhZ3JhcGhTZXBhcmF0b3JJ
blF1b3RlZENvbnRlbnQoKTsKQEAgLTIxOCwxMCArMjIyLDEyIEBAIHZvaWQgVHlwaW5nQ29tbWFu
ZDo6aW5zZXJ0UGFyYWdyYXBoU2VwYXIKIHZvaWQgVHlwaW5nQ29tbWFuZDo6aW5zZXJ0UGFyYWdy
YXBoU2VwYXJhdG9yKERvY3VtZW50ICpkb2N1bWVudCkKIHsKICAgICBBU1NFUlQoZG9jdW1lbnQp
OwotICAgIAorCiAgICAgRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQtPmZyYW1lKCk7CiAgICAgQVNT
RVJUKGZyYW1lKTsKLSAgICAKKworICAgIGRvY3VtZW50LT5tYXJrZXJzKCktPnJlbW92ZU1hcmtl
cnMoRG9jdW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25VSUluZGljYXRpb24pOworCiAgICAgRWRpdENv
bW1hbmQqIGxhc3RFZGl0Q29tbWFuZCA9IGZyYW1lLT5lZGl0b3IoKS0+bGFzdEVkaXRDb21tYW5k
KCk7CiAgICAgaWYgKGlzT3BlbkZvck1vcmVUeXBpbmdDb21tYW5kKGxhc3RFZGl0Q29tbWFuZCkp
IHsKICAgICAgICAgc3RhdGljX2Nhc3Q8VHlwaW5nQ29tbWFuZCo+KGxhc3RFZGl0Q29tbWFuZCkt
Pmluc2VydFBhcmFncmFwaFNlcGFyYXRvcigpOwpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvSW5s
aW5lVGV4dEJveC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4
dEJveC5jcHAJKHJldmlzaW9uIDY3NjM4KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4
dEJveC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc3NSw3ICs3NzUsNyBAQCBzdGF0aWMgR3JhcGhp
Y3NDb250ZXh0OjpUZXh0Q2hlY2tpbmdMaW5lCiAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRl
eHQ6OlRleHRDaGVja2luZ1NwZWxsaW5nTGluZVN0eWxlOwogICAgIGNhc2UgRG9jdW1lbnRNYXJr
ZXI6OkdyYW1tYXI6CiAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQ6OlRleHRDaGVja2lu
Z0dyYW1tYXJMaW5lU3R5bGU7Ci0gICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQ6
CisgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6Q29ycmVjdGlvblVJSW5kaWNhdGlvbjoKICAgICAg
ICAgcmV0dXJuIEdyYXBoaWNzQ29udGV4dDo6VGV4dENoZWNraW5nUmVwbGFjZW1lbnRMaW5lU3R5
bGU7CiAgICAgZGVmYXVsdDoKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC05MTMs
NiArOTEzLDcgQEAgdm9pZCBJbmxpbmVUZXh0Qm94OjpwYWludERvY3VtZW50TWFya2VycwogICAg
ICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6R3JhbW1hcjoKICAgICAgICAgICAgIGNhc2Ug
RG9jdW1lbnRNYXJrZXI6OlNwZWxsaW5nOgogICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtl
cjo6UmVwbGFjZW1lbnQ6CisgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpDb3JyZWN0
aW9uVUlJbmRpY2F0aW9uOgogICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVqZWN0
ZWRDb3JyZWN0aW9uOgogICAgICAgICAgICAgICAgIGlmIChiYWNrZ3JvdW5kKQogICAgICAgICAg
ICAgICAgICAgICBjb250aW51ZTsKQEAgLTk0NiwxMCArOTQ3LDExIEBAIHZvaWQgSW5saW5lVGV4
dEJveDo6cGFpbnREb2N1bWVudE1hcmtlcnMKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJr
ZXI6OlRleHRNYXRjaDoKICAgICAgICAgICAgICAgICBwYWludFRleHRNYXRjaE1hcmtlcihwdCwg
dHgsIHR5LCBtYXJrZXIsIHN0eWxlLCBmb250KTsKICAgICAgICAgICAgICAgICBicmVhazsKLSAg
ICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlJlcGxhY2VtZW50OgorICAgICAgICAgICAg
Y2FzZSBEb2N1bWVudE1hcmtlcjo6Q29ycmVjdGlvblVJSW5kaWNhdGlvbjoKICAgICAgICAgICAg
ICAgICBjb21wdXRlUmVjdEZvclJlcGxhY2VtZW50TWFya2VyKHR4LCB0eSwgbWFya2VyLCBzdHls
ZSwgZm9udCk7CiAgICAgICAgICAgICAgICAgcGFpbnRTcGVsbGluZ09yR3JhbW1hck1hcmtlcihw
dCwgdHgsIHR5LCBtYXJrZXIsIHN0eWxlLCBmb250LCBmYWxzZSk7CiAgICAgICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpSZXBsYWNlbWVudDoKICAg
ICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlJlamVjdGVkQ29ycmVjdGlvbjoKICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGRlZmF1bHQ6Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68618</attachid>
            <date>2010-09-23 16:42:11 -0700</date>
            <delta_ts>2010-09-23 16:51:49 -0700</delta_ts>
            <desc>Proposed patch (v3)</desc>
            <filename>webkit_bug45709.patch</filename>
            <type>text/plain</type>
            <size>5770</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzAgQEAKKzIwMTAtMDktMjMgIEppYSBQdSAgPGppYXB1Lm1haWxAZ21haWwuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5lZWQg
dG8gcmVtb3ZlIGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZXMgaW4gY3VycmVudCBsaW5lIHdoZW4g
bmV3bGluZSBpcyBlbnRlcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDU3MDkKKwkJPHJkYXI6Ly9wcm9ibGVtLzgzMzU1NzY+CisJCQorCQlUaGlz
IGNoYW5nZSBhZmZlY3RzIG9ubHkgTWFjIE9TWCBidWlsZC4KKworICAgICAgICAqIGRvbS9Eb2N1
bWVudE1hcmtlci5oOiBBZGRlZCAiQ29ycmVjdGlvbkluZGljYXRvciIgdG8gaW5kaWNhdGUgdGhl
IHdvcmRzIG9uIHdoaWNoIHdlIG5lZWQKKyAgICAgICAgICB0byBkcmF3IGF1dG9jb3JyZWN0aW9u
IHVuZGVybGluZS4gV2UgY2Fubm90IHVzZSBleGlzdGluZyAiUmVwbGFjZW1lbnQiIGZvciB0aGlz
IHB1cnBvc2UsCisgICAgICAgICAgc2luY2UgaXQgaXMgbm90IG1lYW50IHRvIGJlIHJlbW92ZWQg
b25jZSBpdCBpcyBhZGRlZC4gQnV0IHdlIG5lZWQgdG8gcmVtb3ZlIGFsbCBhdXRvY29ycmVjdGlv
bgorICAgICAgICAgIHVuZGVybGluZXMgd2hlbiBhIGxpbmUgYnJlYWsgb3IgcGFyYWdyYXBoIHNl
cGFyYXRvciBpcyBpbnNlcnRlZCwgd2hpY2ggaXMgdGhlIGJlaGF2aW9yIGluCisgICAgICAgICAg
TlNUZXh0Vmlldy4gSGVuY2Ugd2UgbmVlZCBhIHNlcGFyYXRlIG1hcmtlciB2YWx1ZSBmb3IgZHJh
d2luZyBhdXRvY29ycmVjdGlvbiB1bmRlcmxpbmUuCisKKyAgICAgICAgKiBlZGl0aW5nL0VkaXRv
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6Om1hcmtBbGxNaXNzcGVsbGluZ3NBbmRC
YWRHcmFtbWFySW5SYW5nZXMpOiBBZGQgIkNvcnJlY3Rpb25JbmRpY2F0b3IiIHdoZW4KKyAgICAg
ICAgICBhdXRvY29ycmVjdGlvbiB0YWtlcyBwbGFjZS4KKyAgICAgICAgKFdlYkNvcmU6OkVkaXRv
cjo6Y2hhbmdlU2VsZWN0aW9uQWZ0ZXJDb21tYW5kKTogUmVtb3ZlICJDb3JyZWN0aW9uSW5kaWNh
dG9yIiBtYXJrZXJzIGlmIHRoZQorICAgICAgICAgIGNvbW1hbmQgcmVzdWx0cyBpbiBpbnNlcnRp
bmcgcGFyYWdyYXBoIHNlcGFyYXRvci4KKworICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVUZXh0
Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRleHRDaGVja2luZ0xpbmVTdHlsZUZvck1hcmtl
clR5cGUpOiBVc2UgIkNvcnJlY3Rpb25JbmRpY2F0b3IiIG1hcmtlciBpbnN0ZWFkIG9mCisgICAg
ICAgICAgIlJlcGxhY2VtZW50IiB0byBkcmF3IGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZS4KKyAg
ICAgICAgKFdlYkNvcmU6OklubGluZVRleHRCb3g6OnBhaW50RG9jdW1lbnRNYXJrZXJzKTogRGl0
dG8uCisKIDIwMTAtMDktMjMgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IEFkZWxlIFBldGVyc29uLgpJbmRleDogV2ViQ29yZS9kb20vRG9jdW1l
bnRNYXJrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Eb2N1bWVudE1hcmtlci5oCShy
ZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvZG9tL0RvY3VtZW50TWFya2VyLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTQwLDYgKzQwLDcgQEAgc3RydWN0IERvY3VtZW50TWFya2VyIHsKICAgICAgICAg
R3JhbW1hciwKICAgICAgICAgVGV4dE1hdGNoLAogICAgICAgICBSZXBsYWNlbWVudCwKKyAgICAg
ICAgQ29ycmVjdGlvbkluZGljYXRvciwKICAgICAgICAgUmVqZWN0ZWRDb3JyZWN0aW9uCiAgICAg
fTsKIApJbmRleDogV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9lZGl0aW5nL0VkaXRvci5jcHAJKHJldmlzaW9uIDY4MjA5KQorKysgV2ViQ29yZS9lZGl0
aW5nL0VkaXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3NDEsNiArMjc0MSw3IEBAIHZvaWQg
RWRpdG9yOjptYXJrQWxsTWlzc3BlbGxpbmdzQW5kQmFkR3IKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvLyBBZGQgYSBtYXJrZXIgc28gdGhhdCBjb3JyZWN0aW9ucyBjYW4gZWFzaWx5IGJl
IHVuZG9uZSBhbmQgd29uJ3QgYmUgcmUtY29ycmVjdGVkLgogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFJlZlB0cjxSYW5nZT4gcmVwbGFjZWRSYW5nZSA9IFRleHRJdGVyYXRvcjo6c3VicmFu
Z2UocGFyYWdyYXBoUmFuZ2UuZ2V0KCksIHJlc3VsdExvY2F0aW9uLCByZXBsYWNlbWVudExlbmd0
aCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwbGFjZWRSYW5nZS0+c3RhcnRDb250
YWluZXIoKS0+ZG9jdW1lbnQoKS0+bWFya2VycygpLT5hZGRNYXJrZXIocmVwbGFjZWRSYW5nZS5n
ZXQoKSwgRG9jdW1lbnRNYXJrZXI6OlJlcGxhY2VtZW50LCByZXBsYWNlZFN0cmluZyk7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcmVwbGFjZWRSYW5nZS0+c3RhcnRDb250YWluZXIoKS0+
ZG9jdW1lbnQoKS0+bWFya2VycygpLT5hZGRNYXJrZXIocmVwbGFjZWRSYW5nZS5nZXQoKSwgRG9j
dW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3IpOwogICAgICAgICAgICAgICAgICAgICAg
ICAgfQogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQpAQCAtMzEyMiw2
ICszMTIzLDE2IEBAIHZvaWQgRWRpdG9yOjpjaGFuZ2VTZWxlY3Rpb25BZnRlckNvbW1hbmQKICAg
ICBpZiAobmV3U2VsZWN0aW9uLnN0YXJ0KCkuaXNPcnBoYW4oKSB8fCBuZXdTZWxlY3Rpb24uZW5k
KCkuaXNPcnBoYW4oKSkKICAgICAgICAgcmV0dXJuOwogCisjaWYgUExBVEZPUk0oTUFDKSAmJiAh
ZGVmaW5lZChCVUlMRElOR19PTl9USUdFUikgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFS
RCkgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9QQVJEKQorICAgIC8vIENoZWNrIHRv
IHNlZSBpZiB0aGUgZWRpdGluZyBpbnRyb2R1Y2VkIHBhcmFncmFwaCBzZXBhcmF0b3IuIElmIGl0
IGRpZCwgd2UgcmVtb3ZlIGV4aXN0aW5nIGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZXMuCisgICAg
Ly8gVGhpcyBpcyBpbiBjb25zaXN0ZW5jeSB3aXRoIHRoZSBiZWhhdmlvciBpbiBBcHBLaXQKKyAg
ICBWaXNpYmxlU2VsZWN0aW9uIG9sZFNlbGVjdGlvbihtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+c2Vs
ZWN0aW9uKCkpOworICAgIFZpc2libGVQb3NpdGlvbiBvbGRTZWxlY3Rpb25TdGFydChvbGRTZWxl
Y3Rpb24uc3RhcnQoKSwgb2xkU2VsZWN0aW9uLmFmZmluaXR5KCkpOworICAgIFZpc2libGVQb3Np
dGlvbiBuZXdTZWxlY3Rpb25FbmQobmV3U2VsZWN0aW9uLmVuZCgpLCBuZXdTZWxlY3Rpb24uYWZm
aW5pdHkoKSk7CisgICAgaWYgKCFpblNhbWVQYXJhZ3JhcGgob2xkU2VsZWN0aW9uU3RhcnQsIG5l
d1NlbGVjdGlvbkVuZCkpCisgICAgICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+
cmVtb3ZlTWFya2VycyhEb2N1bWVudE1hcmtlcjo6Q29ycmVjdGlvbkluZGljYXRvcik7CisjZW5k
aWYKKwogICAgIC8vIElmIHRoZXJlIGlzIG5vIHNlbGVjdGlvbiBjaGFuZ2UsIGRvbid0IGJvdGhl
ciBzZW5kaW5nIHNob3VsZENoYW5nZVNlbGVjdGlvbiwgYnV0IHN0aWxsIGNhbGwgc2V0U2VsZWN0
aW9uLAogICAgIC8vIGJlY2F1c2UgdGhlcmUgaXMgd29yayB0aGF0IGl0IG11c3QgZG8gaW4gdGhp
cyBzaXR1YXRpb24uCiAgICAgLy8gVGhlIG9sZCBzZWxlY3Rpb24gY2FuIGJlIGludmFsaWQgaGVy
ZSBhbmQgY2FsbGluZyBzaG91bGRDaGFuZ2VTZWxlY3Rpb24gY2FuIHByb2R1Y2Ugc29tZSBzdHJh
bmdlIGNhbGxzLgpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAJKHJldmlzaW9u
IDY4MjA5KQorKysgV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTc3NSw3ICs3NzUsNyBAQCBzdGF0aWMgR3JhcGhpY3NDb250ZXh0OjpUZXh0Q2hl
Y2tpbmdMaW5lCiAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQ6OlRleHRDaGVja2luZ1Nw
ZWxsaW5nTGluZVN0eWxlOwogICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OkdyYW1tYXI6CiAgICAg
ICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQ6OlRleHRDaGVja2luZ0dyYW1tYXJMaW5lU3R5bGU7
Ci0gICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQ6CisgICAgY2FzZSBEb2N1bWVu
dE1hcmtlcjo6Q29ycmVjdGlvbkluZGljYXRvcjoKICAgICAgICAgcmV0dXJuIEdyYXBoaWNzQ29u
dGV4dDo6VGV4dENoZWNraW5nUmVwbGFjZW1lbnRMaW5lU3R5bGU7CiAgICAgZGVmYXVsdDoKICAg
ICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC05MTMsNiArOTEzLDcgQEAgdm9pZCBJbmxp
bmVUZXh0Qm94OjpwYWludERvY3VtZW50TWFya2VycwogICAgICAgICAgICAgY2FzZSBEb2N1bWVu
dE1hcmtlcjo6R3JhbW1hcjoKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlNwZWxs
aW5nOgogICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQ6CisgICAg
ICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpDb3JyZWN0aW9uSW5kaWNhdG9yOgogICAgICAg
ICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVqZWN0ZWRDb3JyZWN0aW9uOgogICAgICAgICAg
ICAgICAgIGlmIChiYWNrZ3JvdW5kKQogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKQEAg
LTk0NiwxMCArOTQ3LDExIEBAIHZvaWQgSW5saW5lVGV4dEJveDo6cGFpbnREb2N1bWVudE1hcmtl
cnMKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlRleHRNYXRjaDoKICAgICAgICAg
ICAgICAgICBwYWludFRleHRNYXRjaE1hcmtlcihwdCwgdHgsIHR5LCBtYXJrZXIsIHN0eWxlLCBm
b250KTsKICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRN
YXJrZXI6OlJlcGxhY2VtZW50OgorICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6Q29y
cmVjdGlvbkluZGljYXRvcjoKICAgICAgICAgICAgICAgICBjb21wdXRlUmVjdEZvclJlcGxhY2Vt
ZW50TWFya2VyKHR4LCB0eSwgbWFya2VyLCBzdHlsZSwgZm9udCk7CiAgICAgICAgICAgICAgICAg
cGFpbnRTcGVsbGluZ09yR3JhbW1hck1hcmtlcihwdCwgdHgsIHR5LCBtYXJrZXIsIHN0eWxlLCBm
b250LCBmYWxzZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlIERv
Y3VtZW50TWFya2VyOjpSZXBsYWNlbWVudDoKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJr
ZXI6OlJlamVjdGVkQ29ycmVjdGlvbjoKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAg
ICAgIGRlZmF1bHQ6Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68621</attachid>
            <date>2010-09-23 16:51:49 -0700</date>
            <delta_ts>2010-09-23 17:22:06 -0700</delta_ts>
            <desc>Proposed patch (v4)</desc>
            <filename>webkit_bug45709.patch</filename>
            <type>text/plain</type>
            <size>5780</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzAgQEAKKzIwMTAtMDktMjMgIEppYSBQdSAgPGppYXB1Lm1haWxAZ21haWwuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5lZWQg
dG8gcmVtb3ZlIGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZXMgaW4gY3VycmVudCBsaW5lIHdoZW4g
bmV3bGluZSBpcyBlbnRlcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDU3MDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgzMzU1NzY+CisKKyAg
ICAgICAgVGhpcyBjaGFuZ2UgYWZmZWN0cyBvbmx5IE1hYyBPU1ggYnVpbGQuCisKKyAgICAgICAg
KiBkb20vRG9jdW1lbnRNYXJrZXIuaDogQWRkZWQgIkNvcnJlY3Rpb25JbmRpY2F0b3IiIHRvIGlu
ZGljYXRlIHRoZSB3b3JkcyBvbiB3aGljaCB3ZSBuZWVkCisgICAgICAgICAgdG8gZHJhdyBhdXRv
Y29ycmVjdGlvbiB1bmRlcmxpbmUuIFdlIGNhbm5vdCB1c2UgZXhpc3RpbmcgIlJlcGxhY2VtZW50
IiBmb3IgdGhpcyBwdXJwb3NlLAorICAgICAgICAgIHNpbmNlIGl0IGlzIG5vdCBtZWFudCB0byBi
ZSByZW1vdmVkIG9uY2UgaXQgaXMgYWRkZWQuIEJ1dCB3ZSBuZWVkIHRvIHJlbW92ZSBhbGwgYXV0
b2NvcnJlY3Rpb24KKyAgICAgICAgICB1bmRlcmxpbmVzIHdoZW4gYSBsaW5lIGJyZWFrIG9yIHBh
cmFncmFwaCBzZXBhcmF0b3IgaXMgaW5zZXJ0ZWQsIHdoaWNoIGlzIHRoZSBiZWhhdmlvciBpbgor
ICAgICAgICAgIE5TVGV4dFZpZXcuIEhlbmNlIHdlIG5lZWQgYSBzZXBhcmF0ZSBtYXJrZXIgdmFs
dWUgZm9yIGRyYXdpbmcgYXV0b2NvcnJlY3Rpb24gdW5kZXJsaW5lLgorCisgICAgICAgICogZWRp
dGluZy9FZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjptYXJrQWxsTWlzc3Bl
bGxpbmdzQW5kQmFkR3JhbW1hckluUmFuZ2VzKTogQWRkICJDb3JyZWN0aW9uSW5kaWNhdG9yIiB3
aGVuCisgICAgICAgICAgYXV0b2NvcnJlY3Rpb24gdGFrZXMgcGxhY2UuCisgICAgICAgIChXZWJD
b3JlOjpFZGl0b3I6OmNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZCk6IFJlbW92ZSAiQ29ycmVj
dGlvbkluZGljYXRvciIgbWFya2VycyBpZiB0aGUKKyAgICAgICAgICBjb21tYW5kIHJlc3VsdHMg
aW4gaW5zZXJ0aW5nIHBhcmFncmFwaCBzZXBhcmF0b3IuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
SW5saW5lVGV4dEJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0ZXh0Q2hlY2tpbmdMaW5lU3R5
bGVGb3JNYXJrZXJUeXBlKTogVXNlICJDb3JyZWN0aW9uSW5kaWNhdG9yIiBtYXJrZXIgaW5zdGVh
ZCBvZgorICAgICAgICAgICJSZXBsYWNlbWVudCIgdG8gZHJhdyBhdXRvY29ycmVjdGlvbiB1bmRl
cmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpwYWludERvY3VtZW50TWFy
a2Vycyk6IERpdHRvLgorCiAyMDEwLTA5LTIzICBEYXZpZCBIeWF0dCAgPGh5YXR0QGFwcGxlLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGVsZSBQZXRlcnNvbi4KSW5kZXg6IFdlYkNvcmUv
ZG9tL0RvY3VtZW50TWFya2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRG9jdW1lbnRN
YXJrZXIuaAkocmV2aXNpb24gNjgyMDkpCisrKyBXZWJDb3JlL2RvbS9Eb2N1bWVudE1hcmtlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBAIHN0cnVjdCBEb2N1bWVudE1hcmtlciB7
CiAgICAgICAgIEdyYW1tYXIsCiAgICAgICAgIFRleHRNYXRjaCwKICAgICAgICAgUmVwbGFjZW1l
bnQsCisgICAgICAgIENvcnJlY3Rpb25JbmRpY2F0b3IsCiAgICAgICAgIFJlamVjdGVkQ29ycmVj
dGlvbgogICAgIH07CiAKSW5kZXg6IFdlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCShyZXZpc2lvbiA2ODIwOSkKKysrIFdl
YkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzQxLDYgKzI3NDEs
NyBAQCB2b2lkIEVkaXRvcjo6bWFya0FsbE1pc3NwZWxsaW5nc0FuZEJhZEdyCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gQWRkIGEgbWFya2VyIHNvIHRoYXQgY29ycmVjdGlvbnMgY2Fu
IGVhc2lseSBiZSB1bmRvbmUgYW5kIHdvbid0IGJlIHJlLWNvcnJlY3RlZC4KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBSZWZQdHI8UmFuZ2U+IHJlcGxhY2VkUmFuZ2UgPSBUZXh0SXRlcmF0
b3I6OnN1YnJhbmdlKHBhcmFncmFwaFJhbmdlLmdldCgpLCByZXN1bHRMb2NhdGlvbiwgcmVwbGFj
ZW1lbnRMZW5ndGgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VkUmFuZ2Ut
PnN0YXJ0Q29udGFpbmVyKCktPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+YWRkTWFya2VyKHJlcGxh
Y2VkUmFuZ2UuZ2V0KCksIERvY3VtZW50TWFya2VyOjpSZXBsYWNlbWVudCwgcmVwbGFjZWRTdHJp
bmcpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VkUmFuZ2UtPnN0YXJ0Q29u
dGFpbmVyKCktPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+YWRkTWFya2VyKHJlcGxhY2VkUmFuZ2Uu
Z2V0KCksIERvY3VtZW50TWFya2VyOjpDb3JyZWN0aW9uSW5kaWNhdG9yKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0K
QEAgLTMxMjIsNiArMzEyMywxNiBAQCB2b2lkIEVkaXRvcjo6Y2hhbmdlU2VsZWN0aW9uQWZ0ZXJD
b21tYW5kCiAgICAgaWYgKG5ld1NlbGVjdGlvbi5zdGFydCgpLmlzT3JwaGFuKCkgfHwgbmV3U2Vs
ZWN0aW9uLmVuZCgpLmlzT3JwaGFuKCkpCiAgICAgICAgIHJldHVybjsKIAorI2lmIFBMQVRGT1JN
KE1BQykgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fVElHRVIpICYmICFkZWZpbmVkKEJVSUxESU5H
X09OX0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKKyAgICAv
LyBDaGVjayB0byBzZWUgaWYgdGhlIGVkaXRpbmcgaW50cm9kdWNlZCBwYXJhZ3JhcGggc2VwYXJh
dG9yLiBJZiBpdCBkaWQsIHdlIHJlbW92ZSBleGlzdGluZyBhdXRvY29ycmVjdGlvbiB1bmRlcmxp
bmVzLgorICAgIC8vIFRoaXMgaXMgaW4gY29uc2lzdGVuY3kgd2l0aCB0aGUgYmVoYXZpb3IgaW4g
QXBwS2l0CisgICAgVmlzaWJsZVNlbGVjdGlvbiBvbGRTZWxlY3Rpb24obV9mcmFtZS0+c2VsZWN0
aW9uKCktPnNlbGVjdGlvbigpKTsKKyAgICBWaXNpYmxlUG9zaXRpb24gb2xkU2VsZWN0aW9uU3Rh
cnQob2xkU2VsZWN0aW9uLnN0YXJ0KCksIG9sZFNlbGVjdGlvbi5hZmZpbml0eSgpKTsKKyAgICBW
aXNpYmxlUG9zaXRpb24gbmV3U2VsZWN0aW9uRW5kKG5ld1NlbGVjdGlvbi5lbmQoKSwgbmV3U2Vs
ZWN0aW9uLmFmZmluaXR5KCkpOworICAgIGlmICghaW5TYW1lUGFyYWdyYXBoKG9sZFNlbGVjdGlv
blN0YXJ0LCBuZXdTZWxlY3Rpb25FbmQpKQorICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5t
YXJrZXJzKCktPnJlbW92ZU1hcmtlcnMoRG9jdW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0
b3IpOworI2VuZGlmCisKICAgICAvLyBJZiB0aGVyZSBpcyBubyBzZWxlY3Rpb24gY2hhbmdlLCBk
b24ndCBib3RoZXIgc2VuZGluZyBzaG91bGRDaGFuZ2VTZWxlY3Rpb24sIGJ1dCBzdGlsbCBjYWxs
IHNldFNlbGVjdGlvbiwKICAgICAvLyBiZWNhdXNlIHRoZXJlIGlzIHdvcmsgdGhhdCBpdCBtdXN0
IGRvIGluIHRoaXMgc2l0dWF0aW9uLgogICAgIC8vIFRoZSBvbGQgc2VsZWN0aW9uIGNhbiBiZSBp
bnZhbGlkIGhlcmUgYW5kIGNhbGxpbmcgc2hvdWxkQ2hhbmdlU2VsZWN0aW9uIGNhbiBwcm9kdWNl
IHNvbWUgc3RyYW5nZSBjYWxscy4KSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRC
b3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3Bw
CShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC03NzUsNyArNzc1LDcgQEAgc3RhdGljIEdyYXBoaWNzQ29udGV4
dDo6VGV4dENoZWNraW5nTGluZQogICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0OjpUZXh0
Q2hlY2tpbmdTcGVsbGluZ0xpbmVTdHlsZTsKICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpHcmFt
bWFyOgogICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0OjpUZXh0Q2hlY2tpbmdHcmFtbWFy
TGluZVN0eWxlOwotICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlJlcGxhY2VtZW50OgorICAgIGNh
c2UgRG9jdW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3I6CiAgICAgICAgIHJldHVybiBH
cmFwaGljc0NvbnRleHQ6OlRleHRDaGVja2luZ1JlcGxhY2VtZW50TGluZVN0eWxlOwogICAgIGRl
ZmF1bHQ6CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpAQCAtOTEzLDYgKzkxMyw3IEBA
IHZvaWQgSW5saW5lVGV4dEJveDo6cGFpbnREb2N1bWVudE1hcmtlcnMKICAgICAgICAgICAgIGNh
c2UgRG9jdW1lbnRNYXJrZXI6OkdyYW1tYXI6CiAgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFy
a2VyOjpTcGVsbGluZzoKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlJlcGxhY2Vt
ZW50OgorICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6Q29ycmVjdGlvbkluZGljYXRv
cjoKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlJlamVjdGVkQ29ycmVjdGlvbjoK
ICAgICAgICAgICAgICAgICBpZiAoYmFja2dyb3VuZCkKICAgICAgICAgICAgICAgICAgICAgY29u
dGludWU7CkBAIC05NDYsMTAgKzk0NywxMSBAQCB2b2lkIElubGluZVRleHRCb3g6OnBhaW50RG9j
dW1lbnRNYXJrZXJzCiAgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpUZXh0TWF0Y2g6
CiAgICAgICAgICAgICAgICAgcGFpbnRUZXh0TWF0Y2hNYXJrZXIocHQsIHR4LCB0eSwgbWFya2Vy
LCBzdHlsZSwgZm9udCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICBjYXNl
IERvY3VtZW50TWFya2VyOjpSZXBsYWNlbWVudDoKKyAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRN
YXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3I6CiAgICAgICAgICAgICAgICAgY29tcHV0ZVJlY3RG
b3JSZXBsYWNlbWVudE1hcmtlcih0eCwgdHksIG1hcmtlciwgc3R5bGUsIGZvbnQpOwogICAgICAg
ICAgICAgICAgIHBhaW50U3BlbGxpbmdPckdyYW1tYXJNYXJrZXIocHQsIHR4LCB0eSwgbWFya2Vy
LCBzdHlsZSwgZm9udCwgZmFsc2UpOwogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAg
ICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQ6CiAgICAgICAgICAgICBjYXNlIERv
Y3VtZW50TWFya2VyOjpSZWplY3RlZENvcnJlY3Rpb246CiAgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgICBkZWZhdWx0Ogo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68629</attachid>
            <date>2010-09-23 17:22:06 -0700</date>
            <delta_ts>2010-09-23 19:58:17 -0700</delta_ts>
            <desc>Proposed patch (v5)</desc>
            <filename>webkit_bug45709.patch</filename>
            <type>text/plain</type>
            <size>5580</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzAgQEAKKzIwMTAtMDktMjMgIEppYSBQdSAgPGppYXB1Lm1haWxAZ21haWwuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5lZWQg
dG8gcmVtb3ZlIGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZXMgaW4gY3VycmVudCBsaW5lIHdoZW4g
bmV3bGluZSBpcyBlbnRlcmVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NDU3MDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgzMzU1NzY+CisKKyAg
ICAgICAgVGhpcyBjaGFuZ2UgYWZmZWN0cyBvbmx5IE1hYyBPU1ggYnVpbGQuCisKKyAgICAgICAg
KiBkb20vRG9jdW1lbnRNYXJrZXIuaDogQWRkZWQgIkNvcnJlY3Rpb25JbmRpY2F0b3IiIHRvIGlu
ZGljYXRlIHRoZSB3b3JkcyBvbiB3aGljaCB3ZSBuZWVkCisgICAgICAgICAgdG8gZHJhdyBhdXRv
Y29ycmVjdGlvbiB1bmRlcmxpbmUuIFdlIGNhbm5vdCB1c2UgZXhpc3RpbmcgIlJlcGxhY2VtZW50
IiBmb3IgdGhpcyBwdXJwb3NlLAorICAgICAgICAgIHNpbmNlIGl0IGlzIG5vdCBtZWFudCB0byBi
ZSByZW1vdmVkIG9uY2UgaXQgaXMgYWRkZWQuIEJ1dCB3ZSBuZWVkIHRvIHJlbW92ZSBhbGwgYXV0
b2NvcnJlY3Rpb24KKyAgICAgICAgICB1bmRlcmxpbmVzIHdoZW4gYSBsaW5lIGJyZWFrIG9yIHBh
cmFncmFwaCBzZXBhcmF0b3IgaXMgaW5zZXJ0ZWQsIHdoaWNoIGlzIHRoZSBiZWhhdmlvciBpbgor
ICAgICAgICAgIE5TVGV4dFZpZXcuIEhlbmNlIHdlIG5lZWQgYSBzZXBhcmF0ZSBtYXJrZXIgdmFs
dWUgZm9yIGRyYXdpbmcgYXV0b2NvcnJlY3Rpb24gdW5kZXJsaW5lLgorCisgICAgICAgICogZWRp
dGluZy9FZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjptYXJrQWxsTWlzc3Bl
bGxpbmdzQW5kQmFkR3JhbW1hckluUmFuZ2VzKTogQWRkICJDb3JyZWN0aW9uSW5kaWNhdG9yIiB3
aGVuCisgICAgICAgICAgYXV0b2NvcnJlY3Rpb24gdGFrZXMgcGxhY2UuCisgICAgICAgIChXZWJD
b3JlOjpFZGl0b3I6OmNoYW5nZVNlbGVjdGlvbkFmdGVyQ29tbWFuZCk6IFJlbW92ZSAiQ29ycmVj
dGlvbkluZGljYXRvciIgbWFya2VycyBpZiB0aGUKKyAgICAgICAgICBjb21tYW5kIHJlc3VsdHMg
aW4gaW5zZXJ0aW5nIHBhcmFncmFwaCBzZXBhcmF0b3IuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
SW5saW5lVGV4dEJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp0ZXh0Q2hlY2tpbmdMaW5lU3R5
bGVGb3JNYXJrZXJUeXBlKTogVXNlICJDb3JyZWN0aW9uSW5kaWNhdG9yIiBtYXJrZXIgaW5zdGVh
ZCBvZgorICAgICAgICAgICJSZXBsYWNlbWVudCIgdG8gZHJhdyBhdXRvY29ycmVjdGlvbiB1bmRl
cmxpbmUuCisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpwYWludERvY3VtZW50TWFy
a2Vycyk6IERpdHRvLgorCiAyMDEwLTA5LTIzICBEYXZpZCBIeWF0dCAgPGh5YXR0QGFwcGxlLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGVsZSBQZXRlcnNvbi4KSW5kZXg6IFdlYkNvcmUv
ZG9tL0RvY3VtZW50TWFya2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRG9jdW1lbnRN
YXJrZXIuaAkocmV2aXNpb24gNjgyMDkpCisrKyBXZWJDb3JlL2RvbS9Eb2N1bWVudE1hcmtlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw3IEBAIHN0cnVjdCBEb2N1bWVudE1hcmtlciB7
CiAgICAgICAgIEdyYW1tYXIsCiAgICAgICAgIFRleHRNYXRjaCwKICAgICAgICAgUmVwbGFjZW1l
bnQsCisgICAgICAgIENvcnJlY3Rpb25JbmRpY2F0b3IsCiAgICAgICAgIFJlamVjdGVkQ29ycmVj
dGlvbgogICAgIH07CiAKSW5kZXg6IFdlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCShyZXZpc2lvbiA2ODIwOSkKKysrIFdl
YkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzQxLDYgKzI3NDEs
NyBAQCB2b2lkIEVkaXRvcjo6bWFya0FsbE1pc3NwZWxsaW5nc0FuZEJhZEdyCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gQWRkIGEgbWFya2VyIHNvIHRoYXQgY29ycmVjdGlvbnMgY2Fu
IGVhc2lseSBiZSB1bmRvbmUgYW5kIHdvbid0IGJlIHJlLWNvcnJlY3RlZC4KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBSZWZQdHI8UmFuZ2U+IHJlcGxhY2VkUmFuZ2UgPSBUZXh0SXRlcmF0
b3I6OnN1YnJhbmdlKHBhcmFncmFwaFJhbmdlLmdldCgpLCByZXN1bHRMb2NhdGlvbiwgcmVwbGFj
ZW1lbnRMZW5ndGgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VkUmFuZ2Ut
PnN0YXJ0Q29udGFpbmVyKCktPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+YWRkTWFya2VyKHJlcGxh
Y2VkUmFuZ2UuZ2V0KCksIERvY3VtZW50TWFya2VyOjpSZXBsYWNlbWVudCwgcmVwbGFjZWRTdHJp
bmcpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VkUmFuZ2UtPnN0YXJ0Q29u
dGFpbmVyKCktPmRvY3VtZW50KCktPm1hcmtlcnMoKS0+YWRkTWFya2VyKHJlcGxhY2VkUmFuZ2Uu
Z2V0KCksIERvY3VtZW50TWFya2VyOjpDb3JyZWN0aW9uSW5kaWNhdG9yKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0K
QEAgLTMxMjIsNiArMzEyMywxMyBAQCB2b2lkIEVkaXRvcjo6Y2hhbmdlU2VsZWN0aW9uQWZ0ZXJD
b21tYW5kCiAgICAgaWYgKG5ld1NlbGVjdGlvbi5zdGFydCgpLmlzT3JwaGFuKCkgfHwgbmV3U2Vs
ZWN0aW9uLmVuZCgpLmlzT3JwaGFuKCkpCiAgICAgICAgIHJldHVybjsKIAorI2lmIFBMQVRGT1JN
KE1BQykgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fVElHRVIpICYmICFkZWZpbmVkKEJVSUxESU5H
X09OX0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKKyAgICAv
LyBDaGVjayB0byBzZWUgaWYgdGhlIGNvbW1hbmQgaW50cm9kdWNlZCBwYXJhZ3JhcGggc2VwYXJh
dG9yLiBJZiBpdCBkaWQsIHdlIHJlbW92ZSBleGlzdGluZyBhdXRvY29ycmVjdGlvbiB1bmRlcmxp
bmVzLgorICAgIC8vIFRoaXMgaXMgaW4gY29uc2lzdGVuY3kgd2l0aCB0aGUgYmVoYXZpb3IgaW4g
QXBwS2l0CisgICAgaWYgKCFpblNhbWVQYXJhZ3JhcGgobV9mcmFtZS0+c2VsZWN0aW9uKCktPnNl
bGVjdGlvbigpLnZpc2libGVTdGFydCgpLCBuZXdTZWxlY3Rpb24udmlzaWJsZUVuZCgpKSkKKyAg
ICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+bWFya2VycygpLT5yZW1vdmVNYXJrZXJzKERvY3Vt
ZW50TWFya2VyOjpDb3JyZWN0aW9uSW5kaWNhdG9yKTsKKyNlbmRpZgorCiAgICAgLy8gSWYgdGhl
cmUgaXMgbm8gc2VsZWN0aW9uIGNoYW5nZSwgZG9uJ3QgYm90aGVyIHNlbmRpbmcgc2hvdWxkQ2hh
bmdlU2VsZWN0aW9uLCBidXQgc3RpbGwgY2FsbCBzZXRTZWxlY3Rpb24sCiAgICAgLy8gYmVjYXVz
ZSB0aGVyZSBpcyB3b3JrIHRoYXQgaXQgbXVzdCBkbyBpbiB0aGlzIHNpdHVhdGlvbi4KICAgICAv
LyBUaGUgb2xkIHNlbGVjdGlvbiBjYW4gYmUgaW52YWxpZCBoZXJlIGFuZCBjYWxsaW5nIHNob3Vs
ZENoYW5nZVNlbGVjdGlvbiBjYW4gcHJvZHVjZSBzb21lIHN0cmFuZ2UgY2FsbHMuCkluZGV4OiBX
ZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAkocmV2aXNpb24gNjgyMDkpCisrKyBXZWJDb3Jl
L3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzc1LDcgKzc3
NSw3IEBAIHN0YXRpYyBHcmFwaGljc0NvbnRleHQ6OlRleHRDaGVja2luZ0xpbmUKICAgICAgICAg
cmV0dXJuIEdyYXBoaWNzQ29udGV4dDo6VGV4dENoZWNraW5nU3BlbGxpbmdMaW5lU3R5bGU7CiAg
ICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6R3JhbW1hcjoKICAgICAgICAgcmV0dXJuIEdyYXBoaWNz
Q29udGV4dDo6VGV4dENoZWNraW5nR3JhbW1hckxpbmVTdHlsZTsKLSAgICBjYXNlIERvY3VtZW50
TWFya2VyOjpSZXBsYWNlbWVudDoKKyAgICBjYXNlIERvY3VtZW50TWFya2VyOjpDb3JyZWN0aW9u
SW5kaWNhdG9yOgogICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0OjpUZXh0Q2hlY2tpbmdS
ZXBsYWNlbWVudExpbmVTdHlsZTsKICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKQEAgLTkxMyw2ICs5MTMsNyBAQCB2b2lkIElubGluZVRleHRCb3g6OnBhaW50RG9j
dW1lbnRNYXJrZXJzCiAgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpHcmFtbWFyOgog
ICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6U3BlbGxpbmc6CiAgICAgICAgICAgICBj
YXNlIERvY3VtZW50TWFya2VyOjpSZXBsYWNlbWVudDoKKyAgICAgICAgICAgIGNhc2UgRG9jdW1l
bnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3I6CiAgICAgICAgICAgICBjYXNlIERvY3VtZW50
TWFya2VyOjpSZWplY3RlZENvcnJlY3Rpb246CiAgICAgICAgICAgICAgICAgaWYgKGJhY2tncm91
bmQpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtOTQ2LDEwICs5NDcsMTEgQEAg
dm9pZCBJbmxpbmVUZXh0Qm94OjpwYWludERvY3VtZW50TWFya2VycwogICAgICAgICAgICAgY2Fz
ZSBEb2N1bWVudE1hcmtlcjo6VGV4dE1hdGNoOgogICAgICAgICAgICAgICAgIHBhaW50VGV4dE1h
dGNoTWFya2VyKHB0LCB0eCwgdHksIG1hcmtlciwgc3R5bGUsIGZvbnQpOwogICAgICAgICAgICAg
ICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQ6
CisgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpDb3JyZWN0aW9uSW5kaWNhdG9yOgog
ICAgICAgICAgICAgICAgIGNvbXB1dGVSZWN0Rm9yUmVwbGFjZW1lbnRNYXJrZXIodHgsIHR5LCBt
YXJrZXIsIHN0eWxlLCBmb250KTsKICAgICAgICAgICAgICAgICBwYWludFNwZWxsaW5nT3JHcmFt
bWFyTWFya2VyKHB0LCB0eCwgdHksIG1hcmtlciwgc3R5bGUsIGZvbnQsIGZhbHNlKTsKICAgICAg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OlJlcGxh
Y2VtZW50OgogICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVqZWN0ZWRDb3JyZWN0
aW9uOgogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgZGVmYXVsdDoK
</data>
<flag name="review"
          id="58183"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68641</attachid>
            <date>2010-09-23 19:58:17 -0700</date>
            <delta_ts>2010-09-24 01:44:34 -0700</delta_ts>
            <desc>proposed patch (v6)</desc>
            <filename>webkit_bug45709.patch</filename>
            <type>text/plain</type>
            <size>5572</size>
            <attacher name="Jia Pu">jiapu.mail</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzAgQEAKKzIwMTAtMDktMjMgIEppYSBQdSAgPGpwdUBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVlZCB0byByZW1v
dmUgYXV0b2NvcnJlY3Rpb24gdW5kZXJsaW5lcyBpbiBjdXJyZW50IGxpbmUgd2hlbiBuZXdsaW5l
IGlzIGVudGVyZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00NTcwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vODMzNTU3Nj4KKworICAgICAgICBU
aGlzIGNoYW5nZSBhZmZlY3RzIG9ubHkgTWFjIE9TWCBidWlsZC4KKworICAgICAgICAqIGRvbS9E
b2N1bWVudE1hcmtlci5oOiBBZGRlZCAiQ29ycmVjdGlvbkluZGljYXRvciIgdG8gaW5kaWNhdGUg
dGhlIHdvcmRzIG9uIHdoaWNoIHdlIG5lZWQKKyAgICAgICAgICB0byBkcmF3IGF1dG9jb3JyZWN0
aW9uIHVuZGVybGluZS4gV2UgY2Fubm90IHVzZSBleGlzdGluZyAiUmVwbGFjZW1lbnQiIGZvciB0
aGlzIHB1cnBvc2UsCisgICAgICAgICAgc2luY2UgaXQgaXMgbm90IG1lYW50IHRvIGJlIHJlbW92
ZWQgb25jZSBpdCBpcyBhZGRlZC4gQnV0IHdlIG5lZWQgdG8gcmVtb3ZlIGFsbCBhdXRvY29ycmVj
dGlvbgorICAgICAgICAgIHVuZGVybGluZXMgd2hlbiBhIGxpbmUgYnJlYWsgb3IgcGFyYWdyYXBo
IHNlcGFyYXRvciBpcyBpbnNlcnRlZCwgd2hpY2ggaXMgdGhlIGJlaGF2aW9yIGluCisgICAgICAg
ICAgTlNUZXh0Vmlldy4gSGVuY2Ugd2UgbmVlZCBhIHNlcGFyYXRlIG1hcmtlciB2YWx1ZSBmb3Ig
ZHJhd2luZyBhdXRvY29ycmVjdGlvbiB1bmRlcmxpbmUuCisKKyAgICAgICAgKiBlZGl0aW5nL0Vk
aXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6Om1hcmtBbGxNaXNzcGVsbGluZ3NB
bmRCYWRHcmFtbWFySW5SYW5nZXMpOiBBZGQgIkNvcnJlY3Rpb25JbmRpY2F0b3IiIHdoZW4KKyAg
ICAgICAgICBhdXRvY29ycmVjdGlvbiB0YWtlcyBwbGFjZS4KKyAgICAgICAgKFdlYkNvcmU6OkVk
aXRvcjo6Y2hhbmdlU2VsZWN0aW9uQWZ0ZXJDb21tYW5kKTogUmVtb3ZlICJDb3JyZWN0aW9uSW5k
aWNhdG9yIiBtYXJrZXJzIGlmIHRoZQorICAgICAgICAgIGNvbW1hbmQgcmVzdWx0cyBpbiBpbnNl
cnRpbmcgcGFyYWdyYXBoIHNlcGFyYXRvci4KKworICAgICAgICAqIHJlbmRlcmluZy9JbmxpbmVU
ZXh0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnRleHRDaGVja2luZ0xpbmVTdHlsZUZvck1h
cmtlclR5cGUpOiBVc2UgIkNvcnJlY3Rpb25JbmRpY2F0b3IiIG1hcmtlciBpbnN0ZWFkIG9mCisg
ICAgICAgICAgIlJlcGxhY2VtZW50IiB0byBkcmF3IGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZS4K
KyAgICAgICAgKFdlYkNvcmU6OklubGluZVRleHRCb3g6OnBhaW50RG9jdW1lbnRNYXJrZXJzKTog
RGl0dG8uCisKIDIwMTAtMDktMjMgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IEFkZWxlIFBldGVyc29uLgpJbmRleDogV2ViQ29yZS9kb20vRG9j
dW1lbnRNYXJrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Eb2N1bWVudE1hcmtlci5o
CShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvZG9tL0RvY3VtZW50TWFya2VyLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQwLDYgKzQwLDcgQEAgc3RydWN0IERvY3VtZW50TWFya2VyIHsKICAgICAg
ICAgR3JhbW1hciwKICAgICAgICAgVGV4dE1hdGNoLAogICAgICAgICBSZXBsYWNlbWVudCwKKyAg
ICAgICAgQ29ycmVjdGlvbkluZGljYXRvciwKICAgICAgICAgUmVqZWN0ZWRDb3JyZWN0aW9uCiAg
ICAgfTsKIApJbmRleDogV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAJKHJldmlzaW9uIDY4MjA5KQorKysgV2ViQ29yZS9l
ZGl0aW5nL0VkaXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3NDEsNiArMjc0MSw3IEBAIHZv
aWQgRWRpdG9yOjptYXJrQWxsTWlzc3BlbGxpbmdzQW5kQmFkR3IKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvLyBBZGQgYSBtYXJrZXIgc28gdGhhdCBjb3JyZWN0aW9ucyBjYW4gZWFzaWx5
IGJlIHVuZG9uZSBhbmQgd29uJ3QgYmUgcmUtY29ycmVjdGVkLgogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFJlZlB0cjxSYW5nZT4gcmVwbGFjZWRSYW5nZSA9IFRleHRJdGVyYXRvcjo6c3Vi
cmFuZ2UocGFyYWdyYXBoUmFuZ2UuZ2V0KCksIHJlc3VsdExvY2F0aW9uLCByZXBsYWNlbWVudExl
bmd0aCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwbGFjZWRSYW5nZS0+c3RhcnRD
b250YWluZXIoKS0+ZG9jdW1lbnQoKS0+bWFya2VycygpLT5hZGRNYXJrZXIocmVwbGFjZWRSYW5n
ZS5nZXQoKSwgRG9jdW1lbnRNYXJrZXI6OlJlcGxhY2VtZW50LCByZXBsYWNlZFN0cmluZyk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwbGFjZWRSYW5nZS0+c3RhcnRDb250YWluZXIo
KS0+ZG9jdW1lbnQoKS0+bWFya2VycygpLT5hZGRNYXJrZXIocmVwbGFjZWRSYW5nZS5nZXQoKSwg
RG9jdW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3IpOwogICAgICAgICAgICAgICAgICAg
ICAgICAgfQogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQpAQCAtMzEy
Miw2ICszMTIzLDEzIEBAIHZvaWQgRWRpdG9yOjpjaGFuZ2VTZWxlY3Rpb25BZnRlckNvbW1hbmQK
ICAgICBpZiAobmV3U2VsZWN0aW9uLnN0YXJ0KCkuaXNPcnBoYW4oKSB8fCBuZXdTZWxlY3Rpb24u
ZW5kKCkuaXNPcnBoYW4oKSkKICAgICAgICAgcmV0dXJuOwogCisjaWYgUExBVEZPUk0oTUFDKSAm
JiAhZGVmaW5lZChCVUlMRElOR19PTl9USUdFUikgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fTEVP
UEFSRCkgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9QQVJEKQorICAgIC8vIENoZWNr
IHRvIHNlZSBpZiB0aGUgY29tbWFuZCBpbnRyb2R1Y2VkIHBhcmFncmFwaCBzZXBhcmF0b3IuIElm
IGl0IGRpZCwgd2UgcmVtb3ZlIGV4aXN0aW5nIGF1dG9jb3JyZWN0aW9uIHVuZGVybGluZXMuCisg
ICAgLy8gVGhpcyBpcyBpbiBjb25zaXN0ZW5jeSB3aXRoIHRoZSBiZWhhdmlvciBpbiBBcHBLaXQK
KyAgICBpZiAoIWluU2FtZVBhcmFncmFwaChtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+c2VsZWN0aW9u
KCkudmlzaWJsZVN0YXJ0KCksIG5ld1NlbGVjdGlvbi52aXNpYmxlRW5kKCkpKQorICAgICAgICBt
X2ZyYW1lLT5kb2N1bWVudCgpLT5tYXJrZXJzKCktPnJlbW92ZU1hcmtlcnMoRG9jdW1lbnRNYXJr
ZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3IpOworI2VuZGlmCisKICAgICAvLyBJZiB0aGVyZSBpcyBu
byBzZWxlY3Rpb24gY2hhbmdlLCBkb24ndCBib3RoZXIgc2VuZGluZyBzaG91bGRDaGFuZ2VTZWxl
Y3Rpb24sIGJ1dCBzdGlsbCBjYWxsIHNldFNlbGVjdGlvbiwKICAgICAvLyBiZWNhdXNlIHRoZXJl
IGlzIHdvcmsgdGhhdCBpdCBtdXN0IGRvIGluIHRoaXMgc2l0dWF0aW9uLgogICAgIC8vIFRoZSBv
bGQgc2VsZWN0aW9uIGNhbiBiZSBpbnZhbGlkIGhlcmUgYW5kIGNhbGxpbmcgc2hvdWxkQ2hhbmdl
U2VsZWN0aW9uIGNhbiBwcm9kdWNlIHNvbWUgc3RyYW5nZSBjYWxscy4KSW5kZXg6IFdlYkNvcmUv
cmVuZGVyaW5nL0lubGluZVRleHRCb3guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVy
aW5nL0lubGluZVRleHRCb3guY3BwCShyZXZpc2lvbiA2ODIwOSkKKysrIFdlYkNvcmUvcmVuZGVy
aW5nL0lubGluZVRleHRCb3guY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03NzUsNyArNzc1LDcgQEAg
c3RhdGljIEdyYXBoaWNzQ29udGV4dDo6VGV4dENoZWNraW5nTGluZQogICAgICAgICByZXR1cm4g
R3JhcGhpY3NDb250ZXh0OjpUZXh0Q2hlY2tpbmdTcGVsbGluZ0xpbmVTdHlsZTsKICAgICBjYXNl
IERvY3VtZW50TWFya2VyOjpHcmFtbWFyOgogICAgICAgICByZXR1cm4gR3JhcGhpY3NDb250ZXh0
OjpUZXh0Q2hlY2tpbmdHcmFtbWFyTGluZVN0eWxlOwotICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6
OlJlcGxhY2VtZW50OgorICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0
b3I6CiAgICAgICAgIHJldHVybiBHcmFwaGljc0NvbnRleHQ6OlRleHRDaGVja2luZ1JlcGxhY2Vt
ZW50TGluZVN0eWxlOwogICAgIGRlZmF1bHQ6CiAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwpAQCAtOTEzLDYgKzkxMyw3IEBAIHZvaWQgSW5saW5lVGV4dEJveDo6cGFpbnREb2N1bWVudE1h
cmtlcnMKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OkdyYW1tYXI6CiAgICAgICAg
ICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpTcGVsbGluZzoKICAgICAgICAgICAgIGNhc2UgRG9j
dW1lbnRNYXJrZXI6OlJlcGxhY2VtZW50OgorICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtl
cjo6Q29ycmVjdGlvbkluZGljYXRvcjoKICAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6
OlJlamVjdGVkQ29ycmVjdGlvbjoKICAgICAgICAgICAgICAgICBpZiAoYmFja2dyb3VuZCkKICAg
ICAgICAgICAgICAgICAgICAgY29udGludWU7CkBAIC05NDYsMTAgKzk0NywxMSBAQCB2b2lkIElu
bGluZVRleHRCb3g6OnBhaW50RG9jdW1lbnRNYXJrZXJzCiAgICAgICAgICAgICBjYXNlIERvY3Vt
ZW50TWFya2VyOjpUZXh0TWF0Y2g6CiAgICAgICAgICAgICAgICAgcGFpbnRUZXh0TWF0Y2hNYXJr
ZXIocHQsIHR4LCB0eSwgbWFya2VyLCBzdHlsZSwgZm9udCk7CiAgICAgICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpSZXBsYWNlbWVudDoKKyAgICAg
ICAgICAgIGNhc2UgRG9jdW1lbnRNYXJrZXI6OkNvcnJlY3Rpb25JbmRpY2F0b3I6CiAgICAgICAg
ICAgICAgICAgY29tcHV0ZVJlY3RGb3JSZXBsYWNlbWVudE1hcmtlcih0eCwgdHksIG1hcmtlciwg
c3R5bGUsIGZvbnQpOwogICAgICAgICAgICAgICAgIHBhaW50U3BlbGxpbmdPckdyYW1tYXJNYXJr
ZXIocHQsIHR4LCB0eSwgbWFya2VyLCBzdHlsZSwgZm9udCwgZmFsc2UpOwogICAgICAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSBEb2N1bWVudE1hcmtlcjo6UmVwbGFjZW1lbnQ6
CiAgICAgICAgICAgICBjYXNlIERvY3VtZW50TWFya2VyOjpSZWplY3RlZENvcnJlY3Rpb246CiAg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBkZWZhdWx0Og==
</data>

          </attachment>
      

    </bug>

</bugzilla>