From: <rb...@us...> - 2014-02-09 19:01:14
|
Revision: 9118 http://sourceforge.net/p/htmlunit/code/9118 Author: rbri Date: 2014-02-09 19:01:11 +0000 (Sun, 09 Feb 2014) Log Message: ----------- a first fix for Issue #1505 (wip) Modified Paths: -------------- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlPage.java trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLFrameElement2Test.java Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlPage.java =================================================================== --- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlPage.java 2014-02-08 18:27:10 UTC (rev 9117) +++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlPage.java 2014-02-09 19:01:11 UTC (rev 9118) @@ -70,6 +70,7 @@ import com.gargoylesoftware.htmlunit.Cache; import com.gargoylesoftware.htmlunit.ElementNotFoundException; import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException; +import com.gargoylesoftware.htmlunit.History; import com.gargoylesoftware.htmlunit.OnbeforeunloadHandler; import com.gargoylesoftware.htmlunit.Page; import com.gargoylesoftware.htmlunit.ScriptResult; @@ -257,7 +258,14 @@ boolean isFirstPageInFrameWindow = false; if (isFrameWindow) { isFrameWindow = ((FrameWindow) enclosingWindow).getFrameElement() instanceof HtmlFrame; - isFirstPageInFrameWindow = enclosingWindow.getHistory().getLength() <= 2; // first is always about:blank + + final History hist = enclosingWindow.getHistory(); + if (hist.getLength() > 0 && WebClient.URL_ABOUT_BLANK == hist.getUrl(0)) { + isFirstPageInFrameWindow = hist.getLength() <= 2; + } + else { + isFirstPageInFrameWindow = enclosingWindow.getHistory().getLength() < 2; + } } if (isFrameWindow && !isFirstPageInFrameWindow) { Modified: trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLFrameElement2Test.java =================================================================== --- trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLFrameElement2Test.java 2014-02-08 18:27:10 UTC (rev 9117) +++ trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/html/HTMLFrameElement2Test.java 2014-02-09 19:01:11 UTC (rev 9118) @@ -441,7 +441,6 @@ "content\nClick for new frame content with onload", "header -> content -> frameSet -> onloadFrame", "onloadFrame\nNew content loaded..." }) - @NotYetImplemented public void windowLocationReplaceOnload() throws Exception { final String html = "<html><head><title>OnloadTest</title></head>\n" + "<frameset rows='50,*' onLoad=\"top.header.addToFrameOrder('frameSet');\">\n" |