Reviewed by Geoff.
authordarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 8 Nov 2006 09:48:44 +0000 (09:48 +0000)
committerdarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 8 Nov 2006 09:48:44 +0000 (09:48 +0000)
        - stray bits of my FrameLoader patch that I left out by accident

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::createWindow): Use m_outgoingReferrer instead of outgoingReferrer()
        inside the FrameLoader class.
        (WebCore::FrameLoader::requestFrame): Use less DeprecatedString.
        (WebCore::FrameLoader::clear): Stop the redirection timer.
        (WebCore::FrameLoader::receivedFirstData): Added an early return instead of nesting the
        entire function in an if statement. Use less DeprecatedString.
        (WebCore::FrameLoader::scheduleLocationChange): Fix backwards ? : operator.
        (WebCore::FrameLoader::scheduleRefresh): Ditto.
        (WebCore::FrameLoader::urlSelected): Use m_outgoingReferrer instead of outgoingReferrer()
        inside the FrameLoader class.
        * loader/mac/FrameLoaderMac.mm:
        (WebCore::FrameLoader::load): Ditto.
        (WebCore::FrameLoader::loadResourceSynchronously): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/loader/FrameLoader.cpp
WebCore/loader/mac/FrameLoaderMac.mm

index 992bbba38a172c9f6e8cd99ebdde896049b8f06b..26851349fe4b29f85e2c7908c51daa764862b87b 100644 (file)
@@ -1,3 +1,24 @@
+2006-11-08  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        - stray bits of my FrameLoader patch that I left out by accident
+
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::createWindow): Use m_outgoingReferrer instead of outgoingReferrer()
+        inside the FrameLoader class.
+        (WebCore::FrameLoader::requestFrame): Use less DeprecatedString.
+        (WebCore::FrameLoader::clear): Stop the redirection timer.
+        (WebCore::FrameLoader::receivedFirstData): Added an early return instead of nesting the
+        entire function in an if statement. Use less DeprecatedString.
+        (WebCore::FrameLoader::scheduleLocationChange): Fix backwards ? : operator.
+        (WebCore::FrameLoader::scheduleRefresh): Ditto.
+        (WebCore::FrameLoader::urlSelected): Use m_outgoingReferrer instead of outgoingReferrer()
+        inside the FrameLoader class.
+        * loader/mac/FrameLoaderMac.mm:
+        (WebCore::FrameLoader::load): Ditto.
+        (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
+
 2006-11-07  Beth Dakin  <bdakin@apple.com>
 
         Reviewed by Hyatt.
index 6fe7246cf2ac849ff32096934bef289f38fe9963..a0f4d9d2d2fd6f603228f0e27b0f2abe85ec2ea0 100644 (file)
@@ -272,7 +272,7 @@ Frame* FrameLoader::createWindow(const FrameLoadRequest& request, const WindowFe
 
     // FIXME: Setting the referrer should be the caller's responsibility.
     FrameLoadRequest requestWithReferrer = request;
-    requestWithReferrer.resourceRequest().setHTTPReferrer(outgoingReferrer());
+    requestWithReferrer.resourceRequest().setHTTPReferrer(m_outgoingReferrer);
     
     Page* page;
     if (features.dialog)
@@ -356,15 +356,13 @@ void FrameLoader::urlSelected(const ResourceRequest& request, const String& _tar
     urlSelected(frameRequest, triggeringEvent);
 }
 
-bool FrameLoader::requestFrame(Element* ownerElement, const String& urlParam, const AtomicString& frameName)
+bool FrameLoader::requestFrame(Element* ownerElement, const String& urlString, const AtomicString& frameName)
 {
-    DeprecatedString urlString = urlParam.deprecatedString();
-
     // Support for <frame src="javascript:string">
     KURL scriptURL;
     KURL url;
     if (urlString.startsWith("javascript:", false)) {
-        scriptURL = urlString;
+        scriptURL = urlString.deprecatedString();
         url = "about:blank";
     } else
         url = completeURL(urlString);
@@ -738,6 +736,7 @@ void FrameLoader::clear(bool clearWindowProperties)
     m_containsPlugIns = false;
     m_frame->cleanupPluginObjects();
   
+    m_redirectionTimer.stop();
     m_scheduledRedirection.clear();
 
     m_receivedData = false;
@@ -755,44 +754,45 @@ void FrameLoader::receivedFirstData()
     m_frame->document()->docLoader()->setCachePolicy(m_cachePolicy);
     m_workingURL = KURL();
 
-    DeprecatedString refresh = m_responseRefreshHeader.deprecatedString();
-    if (!refresh.isEmpty()) {
-        double delay;
-        String URL;
-
-        int pos = refresh.find(';');
-        if (pos == -1)
-            pos = refresh.find(',');
-        if (pos == -1) {
-            delay = refresh.stripWhiteSpace().toDouble();
-            URL = m_URL.url();
-        } else {
-            int end_pos = refresh.length();
-            delay = refresh.left(pos).stripWhiteSpace().toDouble();
-            while (refresh[++pos] == ' ')
-                ;
-            if (refresh.find("url", pos, false) == pos) {
-                pos += 3;
-                while (refresh[pos] == ' ' || refresh[pos] == '=')
-                    pos++;
-                if (refresh[pos] == '"') {
-                    pos++;
-                    int index = end_pos-1;
-                    while (index > pos) {
-                        if (refresh[index] == '"')
-                            break;
-                        index--;
-                    }
-                    if (index > pos)
-                        end_pos = index;
+    const String& refresh = m_responseRefreshHeader;
+    if (refresh.isEmpty())
+        return;
+
+    double delay;
+    String URL;
+
+    int pos = refresh.find(';');
+    if (pos == -1)
+        pos = refresh.find(',');
+    if (pos == -1) {
+        delay = refresh.stripWhiteSpace().toDouble();
+        URL = m_URL.url();
+    } else {
+        int endPos = refresh.length();
+        delay = refresh.left(pos).stripWhiteSpace().toDouble();
+        while (refresh[++pos] == ' ')
+            ;
+        if (refresh.find("url", pos, false) == pos) {
+            pos += 3;
+            while (refresh[pos] == ' ' || refresh[pos] == '=')
+                pos++;
+            if (refresh[pos] == '"') {
+                pos++;
+                int index = endPos - 1;
+                while (index > pos) {
+                    if (refresh[index] == '"')
+                        break;
+                    index--;
                 }
+                if (index > pos)
+                    endPos = index;
             }
-            URL = m_frame->document()->completeURL(refresh.mid(pos, end_pos));
         }
-
-        // We want a new history item if the refresh timeout > 1 second
-        scheduleRedirection(delay, URL, delay <= 1);
+        URL = m_frame->document()->completeURL(refresh.substring(pos, endPos - pos));
     }
+
+    // We want a new history item if the refresh timeout > 1 second
+    scheduleRedirection(delay, URL, delay <= 1);
 }
 
 const String& FrameLoader::responseMIMEType() const
@@ -1140,7 +1140,7 @@ void FrameLoader::scheduleLocationChange(const String& url, const String& referr
         stopLoading(true);   
 
     ScheduledRedirection::Type type = duringLoad
-        ? ScheduledRedirection::locationChange : ScheduledRedirection::locationChangeDuringLoad;
+        ? ScheduledRedirection::locationChangeDuringLoad : ScheduledRedirection::locationChange;
     scheduleRedirection(new ScheduledRedirection(type, url, referrer, lockHistory, wasUserGesture));
 }
 
@@ -1157,7 +1157,7 @@ void FrameLoader::scheduleRefresh(bool wasUserGesture)
         stopLoading(true);   
 
     ScheduledRedirection::Type type = duringLoad
-        ? ScheduledRedirection::locationChange : ScheduledRedirection::locationChangeDuringLoad;
+        ? ScheduledRedirection::locationChangeDuringLoad : ScheduledRedirection::locationChange;
     scheduleRedirection(new ScheduledRedirection(type, m_URL.url(), m_outgoingReferrer, true, wasUserGesture));
     m_cachePolicy = CachePolicyRefresh;
 }
@@ -2192,7 +2192,7 @@ void FrameLoader::urlSelected(const FrameLoadRequest& request, Event* event)
 {
     FrameLoadRequest copy = request;
     if (copy.resourceRequest().httpReferrer().isEmpty())
-        copy.resourceRequest().setHTTPReferrer(outgoingReferrer());
+        copy.resourceRequest().setHTTPReferrer(m_outgoingReferrer);
 
     // FIXME: Why do we always pass true for userGesture?
     load(copy, true, event, 0, HashMap<String, String>());
index 34665c38d20415814160efeb930a5ee89cc688b2..20123f4a4e4b697675c8fd7a4f68f0fce9196f33 100644 (file)
@@ -81,7 +81,7 @@ void FrameLoader::load(const FrameLoadRequest& request, bool userGesture, Event*
     if (!argsReferrer.isEmpty())
         referrer = argsReferrer;
     else
-        referrer = outgoingReferrer();
+        referrer = m_outgoingReferrer;
  
     bool hideReferrer;
     if (!canLoad(request.resourceRequest().url().getNSURL(), referrer, hideReferrer))
@@ -1199,7 +1199,7 @@ void FrameLoader::loadResourceSynchronously(const ResourceRequest& request, Vect
 
     // Since this is a subresource, we can load any URL (we ignore the return value).
     // But we still want to know whether we should hide the referrer or not, so we call the canLoadURL method.
-    String referrer = outgoingReferrer();
+    String referrer = m_outgoingReferrer;
     bool hideReferrer;
     canLoad(URL, referrer, hideReferrer);
     if (hideReferrer)