<?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>35547</bug_id>
          
          <creation_ts>2010-03-01 14:45:58 -0800</creation_ts>
          <short_desc>Clicking the same named anchor twice in a row fails the second time</short_desc>
          <delta_ts>2010-03-04 17:31:50 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nate Chapin">japhet</reporter>
          <assigned_to name="Nate Chapin">japhet</assigned_to>
          <cc>beidson</cc>
    
    <cc>daniel</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>194831</commentid>
    <comment_count>0</comment_count>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2010-03-01 14:45:58 -0800</bug_when>
    <thetext>Originally reported at http://crbug.com/31851.

Repro steps:
1. Go to http://en.wikipedia.org/wiki/WebKit
2. Click on &quot;Usage&quot; link in the Contents at the top of the page
3. Scroll back to top of the page
4. Click &quot;Usage&quot; again

Step 4 should result in navigating back to the #Usage anchor, but nothing occurs.

I believe this is a regression due to http://trac.webkit.org/changeset/51644.  We don&apos;t scroll to the anchor if there isn&apos;t a hash change, which means we don&apos;t handle the case where we navigate, scroll, then navigate back to the same fragment.

I have a fix and layout test ready and will upload momentarily.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194835</commentid>
    <comment_count>1</comment_count>
      <attachid>49755</attachid>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2010-03-01 14:51:56 -0800</bug_when>
    <thetext>Created attachment 49755
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196110</commentid>
    <comment_count>2</comment_count>
      <attachid>49755</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2010-03-04 10:02:46 -0800</bug_when>
    <thetext>Comment on attachment 49755
patch


&gt; +    // We need to scrool to the fragment whether or not a hash change occurred, since

I guess that should be &quot;scroll&quot; :-) You should fix that before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196269</commentid>
    <comment_count>3</comment_count>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2010-03-04 16:47:39 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 49755 [details])
&gt; 
&gt; &gt; +    // We need to scrool to the fragment whether or not a hash change occurred, since
&gt; 
&gt; I guess that should be &quot;scroll&quot; :-) You should fix that before landing.

http://trac.webkit.org/changeset/55555</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196277</commentid>
    <comment_count>4</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-04 17:13:33 -0800</bug_when>
    <thetext>As far as I can tell, this change violates the HTML5 navigation spec:

The section &quot;Navigating to a fragment identifier&quot; invokes &quot;History traversal&quot;.  History traversal has the following steps:

6 - If the specified entry has a URL that differs from the current entry&apos;s only by its fragment identifier, and the two share the same Document object, then let hash changed be true, and let old URL be the URL of the current entry and new URL be the URL of the specified entry. Otherwise, let hash changed be false.
...
8 - If hash changed is true, then, if the new URL has a fragment identifier, scroll to the fragment identifier.

Since hashchange is false, there should be no scroll.

---

All of that said, I think the new behavior is sensible, and it matches previous WebKit, Firefox, and Opera.  But my original change wasn&apos;t an accidental change in behavior, it was willfully following the spec.  I didn&apos;t realize at the time that it was breaking this fundamental case.

I think the spec needs to be changed to reflect this, but until it is changed, WebKit (and other browser engines) are out of spec.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>196284</commentid>
    <comment_count>5</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2010-03-04 17:31:50 -0800</bug_when>
    <thetext>I brought this to Hixie&apos;s attention.  He filed http://www.w3.org/Bugs/Public/show_bug.cgi?id=9193 to fix the spec.

All is well.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>49755</attachid>
            <date>2010-03-01 14:51:56 -0800</date>
            <delta_ts>2010-03-04 10:02:45 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>3874</size>
            <attacher name="Nate Chapin">japhet</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1NTM4MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTAtMDMtMDEgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBG
aXggdGhlIGNhc2Ugd2hlcmUgd2UgZG8gYSBzYW1lIGRvY3VtZW50IG5hdmlnYXRpb24sIHNjcm9s
bCwKKyAgICAgICAgdGhlbiByZXBlYXQgdGhlIHNhbWUgZG9jdW1lbnQgbmF2aWdhdGlvbi4gIEN1
cnJlbnRseSwgdGhlIHNlY29uZAorICAgICAgICBuYXZpZ2F0aW9uIGRvZXMgbm90aGluZy4KKwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU1NDcKKwor
ICAgICAgICBUZXN0OiBmYXN0L2xvYWRlci9yZXBlYXQtc2FtZS1kb2N1bWVudC1uYXZpZ2F0aW9u
Lmh0bWwKKworICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpGcmFtZUxvYWRlcjo6bG9hZEluU2FtZURvY3VtZW50KTogQ2FsbCBzY3JvbGxUb0ZyYWdt
ZW50KCkgd2hldGhlciBvciBub3QgdGhlIGhhc2ggY2hhbmdlZC4KKwogMjAxMC0wMy0wMSAgRnJp
ZHJpY2ggU3RyYmEgIDxmcmlkcmljaC5zdHJiYUBibHVld2luLmNoPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEhvbGdlciBGcmV5dGhlci4KSW5kZXg6IFdlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVy
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAJKHJldmlz
aW9uIDU1MzcyKQorKysgV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNzU3LDEyICsxNzU3LDEyIEBACiAgICAgLy8gSXQncyBpbXBvcnRhbnQgdG8gbW9k
ZWwgdGhpcyBhcyBhIGxvYWQgdGhhdCBzdGFydHMgYW5kIGltbWVkaWF0ZWx5IGZpbmlzaGVzLgog
ICAgIC8vIE90aGVyd2lzZSwgdGhlIHBhcmVudCBmcmFtZSBtYXkgdGhpbmsgd2UgbmV2ZXIgZmlu
aXNoZWQgbG9hZGluZy4KICAgICBzdGFydGVkKCk7CisKKyAgICAvLyBXZSBuZWVkIHRvIHNjcm9v
bCB0byB0aGUgZnJhZ21lbnQgd2hldGhlciBvciBub3QgYSBoYXNoIGNoYW5nZSBvY2N1cnJlZCwg
c2luY2UKKyAgICAvLyB0aGUgdXNlciBtaWdodCBoYXZlIHNjcm9sbGVkIHNpbmNlIHRoZSBwcmV2
aW91cyBuYXZpZ2F0aW9uLgorICAgIGlmIChGcmFtZVZpZXcqIHZpZXcgPSBtX2ZyYW1lLT52aWV3
KCkpCisgICAgICAgIHZpZXctPnNjcm9sbFRvRnJhZ21lbnQobV9VUkwpOwogICAgIAotICAgIGlm
IChoYXNoQ2hhbmdlKSB7Ci0gICAgICAgIGlmIChGcmFtZVZpZXcqIHZpZXcgPSBtX2ZyYW1lLT52
aWV3KCkpCi0gICAgICAgICAgICB2aWV3LT5zY3JvbGxUb0ZyYWdtZW50KG1fVVJMKTsKLSAgICB9
Ci0gICAgCiAgICAgbV9pc0NvbXBsZXRlID0gZmFsc2U7CiAgICAgY2hlY2tDb21wbGV0ZWQoKTsK
IApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvcmVwZWF0LXNhbWUtZG9jdW1lbnQtbmF2
aWdhdGlvbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9sb2Fk
ZXIvcmVwZWF0LXNhbWUtZG9jdW1lbnQtbmF2aWdhdGlvbi1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2xvYWRlci9yZXBlYXQtc2FtZS1kb2N1bWVudC1uYXZp
Z2F0aW9uLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyIEBACitBbmNob3Ig
bGluaworU2Nyb2xsIHBvc2l0aW9uIGlzIDYwOHB4CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2xv
YWRlci9yZXBlYXQtc2FtZS1kb2N1bWVudC1uYXZpZ2F0aW9uLmh0bWwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvcmVwZWF0LXNhbWUtZG9jdW1lbnQtbmF2aWdhdGlvbi5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9sb2FkZXIvcmVwZWF0LXNhbWUt
ZG9jdW1lbnQtbmF2aWdhdGlvbi5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM1IEBACis8
aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIp
IHsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworfQorCitmdW5jdGlvbiBjbGlja0xpbmsoKSB7
CisgICAgdmFyIGxpbmsgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5jaG9yTGluayIpOwor
ICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKGxpbmsub2Zmc2V0TGVmdCArIDIsIGxpbmsub2Zm
c2V0VG9wICsgMik7CisgICAgZXZlbnRTZW5kZXIubW91c2VEb3duKCk7IAorICAgIGV2ZW50U2Vu
ZGVyLm1vdXNlVXAoKTsgCit9CisKK2Z1bmN0aW9uIHJ1bigpIHsKKyAgICBjbGlja0xpbmsoKTsK
KyAgICB3aW5kb3cuc2Nyb2xsKDAsIDApOworICAgIGNsaWNrTGluaygpOworICAgIHZhciBzY3Jv
bGxZID0gd2luZG93LnNjcm9sbFk7CisgICAgdmFyIGxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdkaXYnKTsKKyAgICBsaW5lLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2Rl
KCJTY3JvbGwgcG9zaXRpb24gaXMgIiArIHNjcm9sbFkgKyAicHgiKSk7CisgICAgZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoJ2FuY2hvcicpLmFwcGVuZENoaWxkKGxpbmUpOworICAgIGxheW91dFRl
c3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsgICAgCit9CisKKzwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHkgb25sb2FkPSJydW4oKTsiPgorPGRpdiBzdHlsZT0iaGVpZ2h0OiA2MDBweCI+Cis8YSBp
ZD0iYW5jaG9yTGluayIgaHJlZj0iI2FuY2hvciI+QW5jaG9yIGxpbms8L2E+Cis8L2Rpdj4KKzxk
aXYgaWQ9ImFuY2hvciIgc3R5bGU9ImhlaWdodDogNjAwcHgiPjwvZGl2PgorPC9ib2R5PgorPC9o
dG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDU1Mzgw
KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIg
QEAKKzIwMTAtMDMtMDEgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0IGZvciBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzU1NDcuCisKKyAgICAgICAgKiBm
YXN0L2xvYWRlci9yZXBlYXQtc2FtZS1kb2N1bWVudC1uYXZpZ2F0aW9uLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZmFzdC9sb2FkZXIvcmVwZWF0LXNhbWUtZG9jdW1lbnQtbmF2aWdh
dGlvbi5odG1sOiBBZGRlZC4KKwogMjAxMC0wMy0wMSAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJy
YWNsb3VnaEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1bnQuCg==
</data>
<flag name="review"
          id="32716"
          type_id="1"
          status="+"
          setter="kenneth"
    />
          </attachment>
      

    </bug>

</bugzilla>