[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

kocienda kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 05:59:57 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 278bca4241c8f554bb7c13c3bdc08e4ce273d7db
Author: kocienda <kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Apr 1 21:59:21 2002 +0000

    2002-04-01  Kenneth Kocienda  <kocienda at apple.com>
    
            The guts of the fix for this bug:
    
            Radar 2879234 (Redirected URLs not used for subsequent GETs)
    
            This change, though small, will fix most of the outstanding problems
            with URL redirects. Some little bits of work need to be done, but much
            of that is on the UI level.
    
            * src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::setBaseURL):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@924 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index 400bae3..e18934b 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,3 +1,15 @@
+2002-04-01  Kenneth Kocienda  <kocienda at apple.com>
+
+        The guts of the fix for this bug:
+
+        Radar 2879234 (Redirected URLs not used for subsequent GETs)
+
+        This change, though small, will fix most of the outstanding problems
+        with URL redirects. Some little bits of work need to be done, but much
+        of that is on the UI level.
+
+	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::setBaseURL):
+
 2002-04-01  Darin Adler  <darin at apple.com>
 
 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::jScriptEnabled): Hook this up to the
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 400bae3..e18934b 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,15 @@
+2002-04-01  Kenneth Kocienda  <kocienda at apple.com>
+
+        The guts of the fix for this bug:
+
+        Radar 2879234 (Redirected URLs not used for subsequent GETs)
+
+        This change, though small, will fix most of the outstanding problems
+        with URL redirects. Some little bits of work need to be done, but much
+        of that is on the UI level.
+
+	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::setBaseURL):
+
 2002-04-01  Darin Adler  <darin at apple.com>
 
 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::jScriptEnabled): Hook this up to the
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 400bae3..e18934b 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,15 @@
+2002-04-01  Kenneth Kocienda  <kocienda at apple.com>
+
+        The guts of the fix for this bug:
+
+        Radar 2879234 (Redirected URLs not used for subsequent GETs)
+
+        This change, though small, will fix most of the outstanding problems
+        with URL redirects. Some little bits of work need to be done, but much
+        of that is on the UI level.
+
+	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::begin), (KHTMLPart::setBaseURL):
+
 2002-04-01  Darin Adler  <darin at apple.com>
 
 	* src/kwq/KWQKHTMLPart.mm: (KHTMLPart::jScriptEnabled): Hook this up to the
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index 41a914b..58bb91c 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -462,7 +462,14 @@ void KHTMLPart::begin( const KURL &url, int xOffset, int yOffset )
     //DomShared::instanceToCheck = (void *)((DomShared *)d->m_doc);
     d->m_doc->ref();
 
-    d->m_baseURL = KURL();
+    if (d->m_baseURL.isEmpty()) {
+        d->m_baseURL = KURL();
+    }
+    else {
+        // If we get here, this means the part has received a redirect before
+        // m_doc was created. Update the document with the base URL.
+        d->m_doc->setBaseURL(d->m_baseURL.url());
+    }
     d->m_workingURL = url;
 
     /* FIXME: this is a pretty gross way to make sure the decoder gets reinitialized for each page. */
@@ -475,8 +482,9 @@ void KHTMLPart::begin( const KURL &url, int xOffset, int yOffset )
     if (!d->m_doc->attached())
 	d->m_doc->attach();
     d->m_doc->setURL( url.url() );
-
-    if (!d->m_workingURL.isEmpty())
+    
+    // do not set base URL if it has already been set
+    if (!d->m_workingURL.isEmpty() && d->m_baseURL.isEmpty())
     {
 	// We're not planning to support the KDE chained URL feature, AFAIK
 #define KDE_CHAINED_URIS 0
@@ -1534,6 +1542,10 @@ void KHTMLPart::setBaseURL(const KURL &url)
     d->m_baseURL = url;
     if (d->m_baseURL.protocol().startsWith( "http" ) && !d->m_baseURL.host().isEmpty() && d->m_baseURL.path().isEmpty()) {
         d->m_baseURL.setPath( "/" );
+        // communicate the change in base URL to the document so that links and subloads work
+        if (d->m_doc) {
+            d->m_doc->setBaseURL(url.url());
+        }
     }
 }
 
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.mm b/WebCore/kwq/KWQKHTMLPartImpl.mm
index 41a914b..58bb91c 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.mm
+++ b/WebCore/kwq/KWQKHTMLPartImpl.mm
@@ -462,7 +462,14 @@ void KHTMLPart::begin( const KURL &url, int xOffset, int yOffset )
     //DomShared::instanceToCheck = (void *)((DomShared *)d->m_doc);
     d->m_doc->ref();
 
-    d->m_baseURL = KURL();
+    if (d->m_baseURL.isEmpty()) {
+        d->m_baseURL = KURL();
+    }
+    else {
+        // If we get here, this means the part has received a redirect before
+        // m_doc was created. Update the document with the base URL.
+        d->m_doc->setBaseURL(d->m_baseURL.url());
+    }
     d->m_workingURL = url;
 
     /* FIXME: this is a pretty gross way to make sure the decoder gets reinitialized for each page. */
@@ -475,8 +482,9 @@ void KHTMLPart::begin( const KURL &url, int xOffset, int yOffset )
     if (!d->m_doc->attached())
 	d->m_doc->attach();
     d->m_doc->setURL( url.url() );
-
-    if (!d->m_workingURL.isEmpty())
+    
+    // do not set base URL if it has already been set
+    if (!d->m_workingURL.isEmpty() && d->m_baseURL.isEmpty())
     {
 	// We're not planning to support the KDE chained URL feature, AFAIK
 #define KDE_CHAINED_URIS 0
@@ -1534,6 +1542,10 @@ void KHTMLPart::setBaseURL(const KURL &url)
     d->m_baseURL = url;
     if (d->m_baseURL.protocol().startsWith( "http" ) && !d->m_baseURL.host().isEmpty() && d->m_baseURL.path().isEmpty()) {
         d->m_baseURL.setPath( "/" );
+        // communicate the change in base URL to the document so that links and subloads work
+        if (d->m_doc) {
+            d->m_doc->setBaseURL(url.url());
+        }
     }
 }
 
diff --git a/WebCore/src/kwq/KWQKHTMLPart.mm b/WebCore/src/kwq/KWQKHTMLPart.mm
index 41a914b..58bb91c 100644
--- a/WebCore/src/kwq/KWQKHTMLPart.mm
+++ b/WebCore/src/kwq/KWQKHTMLPart.mm
@@ -462,7 +462,14 @@ void KHTMLPart::begin( const KURL &url, int xOffset, int yOffset )
     //DomShared::instanceToCheck = (void *)((DomShared *)d->m_doc);
     d->m_doc->ref();
 
-    d->m_baseURL = KURL();
+    if (d->m_baseURL.isEmpty()) {
+        d->m_baseURL = KURL();
+    }
+    else {
+        // If we get here, this means the part has received a redirect before
+        // m_doc was created. Update the document with the base URL.
+        d->m_doc->setBaseURL(d->m_baseURL.url());
+    }
     d->m_workingURL = url;
 
     /* FIXME: this is a pretty gross way to make sure the decoder gets reinitialized for each page. */
@@ -475,8 +482,9 @@ void KHTMLPart::begin( const KURL &url, int xOffset, int yOffset )
     if (!d->m_doc->attached())
 	d->m_doc->attach();
     d->m_doc->setURL( url.url() );
-
-    if (!d->m_workingURL.isEmpty())
+    
+    // do not set base URL if it has already been set
+    if (!d->m_workingURL.isEmpty() && d->m_baseURL.isEmpty())
     {
 	// We're not planning to support the KDE chained URL feature, AFAIK
 #define KDE_CHAINED_URIS 0
@@ -1534,6 +1542,10 @@ void KHTMLPart::setBaseURL(const KURL &url)
     d->m_baseURL = url;
     if (d->m_baseURL.protocol().startsWith( "http" ) && !d->m_baseURL.host().isEmpty() && d->m_baseURL.path().isEmpty()) {
         d->m_baseURL.setPath( "/" );
+        // communicate the change in base URL to the document so that links and subloads work
+        if (d->m_doc) {
+            d->m_doc->setBaseURL(url.url());
+        }
     }
 }
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list