Changeset 25563 in webkit


Ignore:
Timestamp:
Sep 14, 2007 10:06:52 AM (17 years ago)
Author:
ggaren
Message:

WebCore:

Reviewed by Adam Roben.

Fixed http://bugs.webkit.org/show_bug.cgi?id=15209
Sometimes removing an iframe from the DOM does not remove its frame
from the page

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::requestFrame): Use the contentFrame pointer directly instead of searching for a frame by the frame element's name, because the frame element's name may have changed. (Another reason to do this is that it's just plain more straight-forward and efficient.)

LayoutTests:

Reviewed by Adam Roben.


Layout test for http://bugs.webkit.org/show_bug.cgi?id=15209
Sometimes removing an iframe from the DOM does not remove its frame
from the page.

  • fast/frames/iframe-remove-after-id-change-expected.txt: Added.
  • fast/frames/iframe-remove-after-id-change.html: Added.

Updated results in this test. New results indicate that the frame's
contents are preserved between removal and reinsertion, which matches
Firefox.

  • fast/frames/iframe-option-crash-expected.checksum:
  • fast/frames/iframe-option-crash-expected.png:
  • fast/frames/iframe-option-crash-expected.txt:
  • fast/frames/iframe-option-crash.xhtml:
Location:
trunk
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r25562 r25563  
     12007-09-13  Geoffrey Garen  <ggaren@apple.com>
     2
     3        Reviewed by Adam Roben.
     4       
     5        Layout test for http://bugs.webkit.org/show_bug.cgi?id=15209
     6        Sometimes removing an iframe from the DOM does not remove its frame
     7        from the page.
     8
     9        * fast/frames/iframe-remove-after-id-change-expected.txt: Added.
     10        * fast/frames/iframe-remove-after-id-change.html: Added.
     11
     12        Updated results in this test. New results indicate that the frame's
     13        contents are preserved between removal and reinsertion, which matches
     14        Firefox.
     15
     16        * fast/frames/iframe-option-crash-expected.checksum:
     17        * fast/frames/iframe-option-crash-expected.png:
     18        * fast/frames/iframe-option-crash-expected.txt:
     19        * fast/frames/iframe-option-crash.xhtml:
     20
    1212007-09-14  Darin Adler  <darin@apple.com>
    222
  • trunk/LayoutTests/fast/frames/iframe-option-crash-expected.checksum

    r20271 r25563  
    1 69e9ae7e1d7b48d32ba3bb0d71f3b268
     1e5d649bc3a29f9007586ba6a967529c7
  • trunk/LayoutTests/fast/frames/iframe-option-crash-expected.txt

    r20271 r25563  
    1111        RenderText {#text} at (0,0) size 0x0
    1212        RenderPartObject {iframe} at (0,0) size 304x154 [border: (2px inset #000000)]
     13          layer at (0,0) size 300x150
     14            RenderView at (0,0) size 300x150
     15          layer at (0,0) size 300x8
     16            RenderBlock {HTML} at (0,0) size 300x8
     17              RenderBody {BODY} at (8,8) size 284x0
  • trunk/WebCore/ChangeLog

    r25562 r25563  
     12007-09-14  Geoffrey Garen  <ggaren@apple.com>
     2
     3        Reviewed by Adam Roben.
     4
     5        Fixed http://bugs.webkit.org/show_bug.cgi?id=15209
     6        Sometimes removing an iframe from the DOM does not remove its frame
     7        from the page
     8
     9        * loader/FrameLoader.cpp:
     10        (WebCore::FrameLoader::requestFrame): Use the contentFrame pointer
     11        directly instead of searching for a frame by the frame element's name,
     12        because the frame element's name may have changed. (Another reason to do
     13        this is that it's just plain more straight-forward and efficient.)
     14
    1152007-09-14  Darin Adler  <darin@apple.com>
    216
  • trunk/WebCore/loader/FrameLoader.cpp

    r25557 r25563  
    421421        url = completeURL(urlString);
    422422
    423     Frame* frame = m_frame->tree()->child(frameName);
     423    Frame* frame = ownerElement->contentFrame();
    424424    if (frame)
    425425        frame->loader()->scheduleLocationChange(url.url(), m_outgoingReferrer, true, userGestureHint());
Note: See TracChangeset for help on using the changeset viewer.