<?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>58132</bug_id>
          
          <creation_ts>2011-04-08 03:50:56 -0700</creation_ts>
          <short_desc>REGRESSION: a character appears after tab span when typing immediately before the tab span</short_desc>
          <delta_ts>2011-04-26 04:12:01 -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>All</rep_platform>
          <op_sys>All</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="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>adele</cc>
    
    <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>eric</cc>
    
    <cc>justin.garcia</cc>
    
    <cc>leviw</cc>
    
    <cc>ojan</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>382128</commentid>
    <comment_count>0</comment_count>
      <attachid>88793</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-04-08 03:50:56 -0700</bug_when>
    <thetext>Created attachment 88793
test case

Reproduction steps:
1. Open the attached test case
2. Copy &quot;hello&quot;
3. Paste &quot;hello&quot; immediately after &quot;hello&quot;
4. Type &quot;x&quot;

Expected result:
&quot;x&quot; appears immediately after the second &quot;hello&quot; before a tab span.

Actual result:
&quot;x&quot; appears after the tab span.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382345</commentid>
    <comment_count>1</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2011-04-08 10:25:39 -0700</bug_when>
    <thetext>&lt;rdar://problem/9257267&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382377</commentid>
    <comment_count>2</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2011-04-08 10:51:32 -0700</bug_when>
    <thetext>I can reproduce this in Safari 5.0.3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382380</commentid>
    <comment_count>3</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-04-08 10:54:09 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; I can reproduce this in Safari 5.0.3

I see so I guess this is a pretty old regression.  It doesn&apos;t reproduce on Chrome 10 though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>382388</commentid>
    <comment_count>4</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2011-04-08 10:57:57 -0700</bug_when>
    <thetext>The rough range I found was between r 46914 and 58919.  I&apos;m having trouble bisecting right now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>391843</commentid>
    <comment_count>5</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2011-04-25 11:30:25 -0700</bug_when>
    <thetext>It appears that the problem arises because the pasted &quot;hello&quot; goes into the Tab Span, which we proceed to avoid trying to place any other text in when editing. Paste shouldn&apos;t place the text into the tab span and InsertTextCommand::positionInsideTextNode shouldn&apos;t assume any position in a tab span should be moved to after the tab span.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392019</commentid>
    <comment_count>6</comment_count>
      <attachid>90986</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2011-04-25 16:15:11 -0700</bug_when>
    <thetext>Created attachment 90986
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392296</commentid>
    <comment_count>7</comment_count>
      <attachid>90986</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-04-25 23:23:39 -0700</bug_when>
    <thetext>Comment on attachment 90986
Patch

r=me provided you&apos;ve ran all layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392298</commentid>
    <comment_count>8</comment_count>
      <attachid>90986</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2011-04-25 23:31:22 -0700</bug_when>
    <thetext>Comment on attachment 90986
Patch

Clearing flags on attachment: 90986

Committed r84885: &lt;http://trac.webkit.org/changeset/84885&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>392382</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-26 04:12:01 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/84885 might have broken SnowLeopard Intel Release (WebKit2 Tests)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>88793</attachid>
            <date>2011-04-08 03:50:56 -0700</date>
            <delta_ts>2011-04-08 03:50:56 -0700</delta_ts>
            <desc>test case</desc>
            <filename>tab-span-bug.html</filename>
            <type>text/html</type>
            <size>463</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8Ym9keSBzdHlsZT0id29yZC13cmFwOiBicmVhay13b3Jk
OyAta2h0bWwtbmJzcC1tb2RlOiBzcGFjZTsgLWtodG1sLWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRl
LXNwYWNlOyAiPgo8cD5UbyByZXByb2R1Y2UsIGNvcHkgImhlbGxvIiwgbW92ZSB0byB0aGUgcG9z
aXRpb24gaW1tZWRpYXRlbHkgYWZ0ZXIgImhlbGxvIiwgcGFzdGUgdGhlIGNvcGllZCAiaGVsbG8i
LCBhbmQgdGhlbiB0eXBlLgpUaGUgdHlwZWQgY2hhcmFjdGVyIGFwcGVhcnMgYWZ0ZXIgdGhlIHRh
YiBzcGFuLjwvcD4KPGRpdiBjb250ZW50ZWRpdGFibGUgaWQ9InJvb3QiIGNsYXNzPSJlZGl0aW5n
Ij4KPHNwYW4gaWQ9InRlc3QiPmhlbGxvPHNwYW4gY2xhc3M9IkFwcGxlLXRhYi1zcGFuIiBzdHls
ZT0id2hpdGUtc3BhY2U6cHJlIj4JCTwvc3Bhbj53b3JsZDwvc3Bhbj4KPC9kaXY+CjwvYm9keT4K
PC9odG1sPg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>90986</attachid>
            <date>2011-04-25 16:15:11 -0700</date>
            <delta_ts>2011-04-25 23:31:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58132-20110425161510.patch</filename>
            <type>text/plain</type>
            <size>4808</size>
            <attacher name="Levi Weintraub">leviw</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDg0ODI0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMDQtMjUgIExldmkgV2Vp
bnRyYXViICA8bGV2aXdAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFJFR1JFU1NJT046IGEgY2hhcmFjdGVyIGFwcGVhcnMgYWZ0
ZXIgdGFiIHNwYW4gd2hlbiB0eXBpbmcgaW1tZWRpYXRlbHkgYmVmb3JlIHRoZSB0YWIgc3Bhbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTgxMzIKKwor
ICAgICAgICBDb3JyZWN0aW5nIHRoZSBvcmRlciBvZiBvcGVyYXRpb25zIHdlIHVzZSB0byBhdm9p
ZCBpbnNlcnRpbmcgaW50byBpbnZhbGlkIHBvc2l0aW9ucyBpbgorICAgICAgICBSZXBsYWNlU2Vs
ZWN0aW9uQ29tbWFuZCB0byBhdm9pZCBpbnNlcnRpbmcgaW50byB0YWItc3BhbnMuCisKKyAgICAg
ICAgVGVzdDogZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWJlZm9yZS10YWItc3Bhbi5odG1sCisK
KyAgICAgICAgKiBlZGl0aW5nL1JlcGxhY2VTZWxlY3Rpb25Db21tYW5kLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjpkb0FwcGx5KTogTW92aW5nIHBvc2l0
aW9uT3V0c2lkZVRhYlNwYW4gdG8gYWZ0ZXIKKyAgICAgICAgcG9zaXRpb25Bdm9pZGluZ1ByZWNl
ZGluZ05vZGVzLCBzaW5jZSB0aGF0IGZ1bmN0aW9uIGNvdWxkIG9uY2UgYWdhaW4gcHV0IG91ciBw
b3NpdGlvbgorICAgICAgICBpbnNpZGUgYSB0YWIgc3Bhbi4KKwogMjAxMS0wNC0yNSAgQWRhbSBC
YXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhdmlkIExl
dmluLgpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFu
ZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9SZXBsYWNlU2VsZWN0
aW9uQ29tbWFuZC5jcHAJKHJldmlzaW9uIDg0Nzc4KQorKysgU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9SZXBsYWNlU2VsZWN0aW9uQ29tbWFuZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkyNyw5ICs5
MjcsNiBAQCB2b2lkIFJlcGxhY2VTZWxlY3Rpb25Db21tYW5kOjpkb0FwcGx5KCkKICAgICAgICAg
ZWxzZSBpZiAoaXNTdGFydE9mQmxvY2sodmlzaWJsZUluc2VydGlvblBvcykpCiAgICAgICAgICAg
ICBpbnNlcnRpb25Qb3MgPSBwb3NpdGlvbkluUGFyZW50QmVmb3JlTm9kZShzdGFydEJsb2NrKTsK
ICAgICB9Ci0KLSAgICAvLyBQYXN0ZSBpbnRvIHJ1biBvZiB0YWJzIHNwbGl0cyB0aGUgdGFiIHNw
YW4uCi0gICAgaW5zZXJ0aW9uUG9zID0gcG9zaXRpb25PdXRzaWRlVGFiU3BhbihpbnNlcnRpb25Q
b3MpOwogICAgIAogICAgIC8vIFBhc3RlIGF0IHN0YXJ0IG9yIGVuZCBvZiBsaW5rIGdvZXMgb3V0
c2lkZSBvZiBsaW5rLgogICAgIGluc2VydGlvblBvcyA9IHBvc2l0aW9uQXZvaWRpbmdTcGVjaWFs
RWxlbWVudEJvdW5kYXJ5KGluc2VydGlvblBvcyk7CkBAIC05NDYsNiArOTQzLDkgQEAgdm9pZCBS
ZXBsYWNlU2VsZWN0aW9uQ29tbWFuZDo6ZG9BcHBseSgpCiAgICAgLy8gb3V0c2lkZSBvZiBwcmVj
ZWRpbmcgdGFncy4KICAgICBpbnNlcnRpb25Qb3MgPSBwb3NpdGlvbkF2b2lkaW5nUHJlY2VkaW5n
Tm9kZXMoaW5zZXJ0aW9uUG9zKTsKIAorICAgIC8vIFBhc3RlIGludG8gcnVuIG9mIHRhYnMgc3Bs
aXRzIHRoZSB0YWIgc3Bhbi4KKyAgICBpbnNlcnRpb25Qb3MgPSBwb3NpdGlvbk91dHNpZGVUYWJT
cGFuKGluc2VydGlvblBvcyk7CisKICAgICAvLyBJZiB3ZSBhcmUgbm90IHRyeWluZyB0byBtYXRj
aCB0aGUgZGVzdGluYXRpb24gc3R5bGUgd2UgcHJlZmVyIGEgcG9zaXRpb24KICAgICAvLyB0aGF0
IGlzIG91dHNpZGUgaW5saW5lIGVsZW1lbnRzIHRoYXQgcHJvdmlkZSBzdHlsZS4KICAgICAvLyBU
aGlzIHdheSB3ZSBjYW4gcHJvZHVjZSBhIGxlc3MgdmVyYm9zZSBtYXJrdXAuCkluZGV4OiBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShy
ZXZpc2lvbiA4NDgyNCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE2IEBACisyMDExLTA0LTI1ICBMZXZpIFdlaW50cmF1YiAgPGxldml3QGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBSRUdSRVNTSU9OOiBhIGNoYXJhY3RlciBhcHBlYXJzIGFmdGVyIHRhYiBzcGFuIHdoZW4gdHlw
aW5nIGltbWVkaWF0ZWx5IGJlZm9yZSB0aGUgdGFiIHNwYW4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4MTMyCisKKyAgICAgICAgQ29ycmVjdGluZyB0
aGUgb3JkZXIgb2Ygb3BlcmF0aW9ucyB3ZSB1c2UgdG8gYXZvaWQgaW5zZXJ0aW5nIGludG8gaW52
YWxpZCBwb3NpdGlvbnMgaW4KKyAgICAgICAgUmVwbGFjZVNlbGVjdGlvbkNvbW1hbmQgdG8gYXZv
aWQgaW5zZXJ0aW5nIGludG8gdGFiLXNwYW5zLgorCisgICAgICAgICogZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLWJlZm9yZS10YWItc3Bhbi1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1iZWZvcmUtdGFiLXNwYW4uaHRtbDogQWRkZWQuCisK
IDIwMTEtMDQtMjUgIEFkZWxlIFBldGVyc29uICA8YWRlbGVAYXBwbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IEFkYW0gUm9iZW4uCkluZGV4OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3Rl
Ym9hcmQvcGFzdGUtYmVmb3JlLXRhYi1zcGFuLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYmVmb3JlLXRhYi1zcGFuLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2VkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS1iZWZvcmUtdGFiLXNwYW4tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDE0IEBACitUaGlzIHRlc3QgZW5zdXJlcyBwYXN0aW5nIGNvbnRlbnQgYmVmb3JlIGEgdGFiIHNw
YW4gaXNuJ3QgcGFzdGVkIGludG8gdGhlIHRhYiBzcGFuLgorCitSZXN1bHQ6Cit8IDxzcGFuPgor
fCAgIGlkPSJ0ZXN0IgorfCAgICJoZWxsbyIKK3wgICAiaGVsbG9hPCNzZWxlY3Rpb24tY2FyZXQ+
IgorfCAgIDxzcGFuPgorfCAgICAgY2xhc3M9IkFwcGxlLXRhYi1zcGFuIgorfCAgICAgc3R5bGU9
IndoaXRlLXNwYWNlOnByZSIKK3wgICAgICIJCSIKK3wgICAid29ybGQiCit8ICIgCisiCkluZGV4
OiBMYXlvdXRUZXN0cy9lZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYmVmb3JlLXRhYi1zcGFuLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWJl
Zm9yZS10YWItc3Bhbi5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZWRpdGluZy9w
YXN0ZWJvYXJkL3Bhc3RlLWJlZm9yZS10YWItc3Bhbi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDI4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL2R1bXAtYXMtbWFya3VwLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPGRpdiBjb250ZW50ZWRpdGFibGUgaWQ9InJvb3QiIGNsYXNzPSJlZGl0aW5nIj48c3Bh
biBpZD0idGVzdCI+aGVsbG88c3BhbiBjbGFzcz0iQXBwbGUtdGFiLXNwYW4iIHN0eWxlPSJ3aGl0
ZS1zcGFjZTpwcmUiPgkJPC9zcGFuPndvcmxkPC9zcGFuPiAKKzwvZGl2PgorPHNjcmlwdD4KKwor
aWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxl
ci5kdW1wQXNUZXh0KCk7CisKK01hcmt1cC5kZXNjcmlwdGlvbigiVGhpcyB0ZXN0IGVuc3VyZXMg
cGFzdGluZyBjb250ZW50IGJlZm9yZSBhIHRhYiBzcGFuIGlzbid0IHBhc3RlZCBpbnRvIHRoZSB0
YWIgc3Bhbi4iKTsKK3ZhciBzZWwgPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7Cit2YXIgdGVzdFNw
YW4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpOworc2VsLnNldEJhc2VBbmRFeHRl
bnQodGVzdFNwYW4uZmlyc3RDaGlsZCwgMCwgdGVzdFNwYW4uZmlyc3RDaGlsZCwgNSk7CisKK2Rv
Y3VtZW50LmV4ZWNDb21tYW5kKCJjb3B5Iik7CitzZWwuc2V0UG9zaXRpb24odGVzdFNwYW4uZmly
c3RDaGlsZCwgNSk7Citkb2N1bWVudC5leGVjQ29tbWFuZCgicGFzdGUiKTsKK2lmICh3aW5kb3cu
ZXZlbnRTZW5kZXIpCisgICAgZXZlbnRTZW5kZXIua2V5RG93bigiYSIpOworCitNYXJrdXAuZHVt
cCgicm9vdCIsICJSZXN1bHQiKQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>