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

List:       kde-commits
Subject:    =?utf-8?q?=5Bkde-baseapps=5D_nsplugins/viewer=3A_Implement_the_h?=
From:       Maks Orlovich <maksim () kde ! org>
Date:       2011-05-17 12:50:12
Message-ID: 20110517125012.D83EAA60AE () git ! kde ! org
[Download RAW message or body]

Git commit b7e487550a29b35072e24adaf4df6eb48264129d by Maks Orlovich.
Committed on 17/05/2011 at 14:49.
Pushed by orlovich into branch 'master'.

Implement the headers feature to make Flash 10.3 not crash.
(Whatever happens to checking ABI versions, anyway?)

BUG: 273323

M  +5    -3    nsplugins/viewer/nsplugin.cpp     
M  +1    -0    nsplugins/viewer/nsplugin.h     

http://commits.kde.org/kde-baseapps/b7e487550a29b35072e24adaf4df6eb48264129d

diff --git a/nsplugins/viewer/nsplugin.cpp b/nsplugins/viewer/nsplugin.cpp
index a1e331a..6b377fe 100644
--- a/nsplugins/viewer/nsplugin.cpp
+++ b/nsplugins/viewer/nsplugin.cpp
@@ -1677,6 +1677,7 @@ bool NSPluginStreamBase::create( const QString& url, const QString& mimeType, vo
     _stream->pdata = 0;
     _stream->lastmodified = 0;
     _stream->notifyData = _notifyData;
+    _stream->headers = 0;
 
     _mimeType = mimeType;
 
@@ -1910,6 +1911,7 @@ bool NSPluginStream::get( const QString& url, const QString& mimeType,
         _job = KIO::get(KUrl( url ), KIO::NoReload, KIO::HideProgressInfo);
         _job->addMetaData("errorPage", "false");
         _job->addMetaData("AllowCompressedPage", "false");
+        _job->addMetaData("PropagateHttpHeader", "true");
         if (reload) {
             _job->addMetaData("cache", "reload");
         }
@@ -1939,6 +1941,7 @@ bool NSPluginStream::post( const QString& url, const QByteArray& data,
         _job = KIO::http_post(KUrl( url ), data, KIO::HideProgressInfo);
         _job->addMetaData("content-type", browserArgs.contentType());
         _job->addMetaData("errorPage", "false");
+        _job->addMetaData("PropagateHttpHeader", "true");
         _job->addMetaData("AllowCompressedPage", "false");
         connect(_job, SIGNAL(data(KIO::Job *, const QByteArray &)),
                 SLOT(data(KIO::Job *, const QByteArray &)));
@@ -1981,11 +1984,10 @@ void NSPluginStream::mimetype(KIO::Job * job, const QString &mimeType)
 {
     kDebug(1431) << "NSPluginStream::QByteArray - job=" << (void*)job << " mimeType=" << mimeType;
     _mimeType = mimeType;
+    _headers = job->metaData()["HTTP-Headers"].toLatin1();
+    _stream->headers = _headers.data();
 }
 
-
-
-
 void NSPluginStream::resume()
 {
    if ( error() || tries()>8 ) {
diff --git a/nsplugins/viewer/nsplugin.h b/nsplugins/viewer/nsplugin.h
index b2cdec1..c796fec 100644
--- a/nsplugins/viewer/nsplugin.h
+++ b/nsplugins/viewer/nsplugin.h
@@ -102,6 +102,7 @@ protected:
   KUrl _url;
   QString _fileURL;
   QString _mimeType;
+  QByteArray _headers;
   QByteArray _data;
   class KTemporaryFile *_tempFile;
 

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

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