[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    =?utf-8?q?=5Bkdelibs/KDE/4=2E6=5D_kio/kio=3A_Ensure_HTTP_headers?=
From:       Dawit Alemayehu <adawit () kde ! org>
Date:       2011-05-07 19:39:35
Message-ID: 20110507193935.48811A60A4 () git ! kde ! org
[Download RAW message or body]

Git commit ebd556b0435d390f01383f159877834dc675409a by Dawit Alemayehu.
Committed on 07/05/2011 at 21:31.
Pushed by adawit into branch 'KDE/4.6'.

Ensure HTTP headers from kio_http are always set regardless of error condition.

M  +6    -3    kio/kio/accessmanagerreply_p.cpp     

http://commits.kde.org/kdelibs/ebd556b0435d390f01383f159877834dc675409a

diff --git a/kio/kio/accessmanagerreply_p.cpp b/kio/kio/accessmanagerreply_p.cpp
index a17d67c..ab526b9 100644
--- a/kio/kio/accessmanagerreply_p.cpp
+++ b/kio/kio/accessmanagerreply_p.cpp
@@ -308,14 +308,17 @@ void AccessManagerReply::slotResult(KJob *kJob)
     const int errcode = jobError(kJob);
 
     const QUrl redirectUrl = attribute(QNetworkRequest::RedirectionTargetAttribute).toUrl();
-    if (redirectUrl.isValid() || !hasRawHeader("content-type")) {
-        readHttpResponseHeaders(qobject_cast<KIO::Job*>(kJob));
-    } else {
+    if (!redirectUrl.isValid()) {
         setAttribute(static_cast<QNetworkRequest::Attribute>(KIO::AccessManager::KioError), errcode);
         if (errcode && errcode != KIO::ERR_NO_CONTENT)
             emit error(error());
     }
 
+    // Make sure HTTP response headers are always set.
+    if (!m_metaDataRead) {
+        readHttpResponseHeaders(qobject_cast<KIO::Job*>(kJob));
+    }
+
     emit finished();
 }
 

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic