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

List:       kde-commits
Subject:    playground/libs/webkitkde
From:       Sebastian Sauer <mail () dipe ! org>
Date:       2008-11-12 15:46:33
Message-ID: 1226504793.713477.32211.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 883293 by sebsauer:

* made AdBlock black-/whitelist filter working again
* fix mem-leak



 M  +5 -5      kdenetwork/knetworkaccessmanager.cpp  
 M  +2 -1      kdenetwork/knetworkaccessmanager.h  
 M  +16 -1     kdewebkit/kwebpage.cpp  


--- trunk/playground/libs/webkitkde/kdenetwork/knetworkaccessmanager.cpp \
#883292:883293 @@ -24,7 +24,6 @@
 #include "knetworkaccessmanager.h"
 
 #include "knetworkreply.h"
-//#include "settings/webkitsettings.h"
 
 #include <QNetworkRequest>
 #include <QNetworkReply>
@@ -43,12 +42,13 @@
 {
 }
 
+KNetworkAccessManager::~KNetworkAccessManager()
+{
+    delete d;
+}
+
 QNetworkReply *KNetworkAccessManager::createRequest(Operation op, const \
QNetworkRequest &req, QIODevice *outgoingData)  {
-//    if (WebKitSettings::self()->isAdFilterEnabled() && \
                WebKitSettings::self()->isAdFiltered(req.url().toString())) {
-//        return new KNetworkReply(req, 0, this);
-//    }
-
     KIO::Job *kioJob = 0;
 
     switch (op) {
--- trunk/playground/libs/webkitkde/kdenetwork/knetworkaccessmanager.h #883292:883293
@@ -34,11 +34,12 @@
     Q_OBJECT
 public:
     KNetworkAccessManager(QObject *parent);
+    virtual ~KNetworkAccessManager();
 
     static KIO::MetaData metaDataForRequest(QNetworkRequest request);
 
 protected:
-    QNetworkReply *createRequest(Operation op, const QNetworkRequest &req, QIODevice \
*outgoingData = 0); +    virtual QNetworkReply *createRequest(Operation op, const \
QNetworkRequest &req, QIODevice *outgoingData = 0);  
 private:
     class KNetworkAccessManagerPrivate;
--- trunk/playground/libs/webkitkde/kdewebkit/kwebpage.cpp #883292:883293
@@ -24,6 +24,7 @@
 
 #include "kwebpage.h"
 #include <kdenetwork/knetworkaccessmanager.h>
+#include <kdenetwork/knetworkreply.h>
 #include "settings/webkitsettings.h"
 
 #include <KDE/KParts/GenericFactory>
@@ -45,6 +46,20 @@
 #include <QtNetwork/QNetworkReply>
 #include "kwebpluginfactory.h"
 
+class NetworkAccessManager : public KNetworkAccessManager
+{
+public:
+    NetworkAccessManager(QObject *parent) : KNetworkAccessManager(parent) {}
+protected:
+    virtual QNetworkReply *createRequest(Operation op, const QNetworkRequest &req, \
QIODevice *outgoingData = 0) +    {
+        if (WebKitSettings::self()->isAdFilterEnabled() && \
WebKitSettings::self()->isAdFiltered(req.url().toString())) { +            return new \
KNetworkReply(req, 0, this); +        }
+        return KNetworkAccessManager::createRequest(op, req, outgoingData);
+    }
+};
+
 class KWebPage::KWebPagePrivate
 {
 public:
@@ -54,7 +69,7 @@
 KWebPage::KWebPage(QObject *parent)
     : QWebPage(parent), d(new KWebPage::KWebPagePrivate())
 {
-    setNetworkAccessManager(new KNetworkAccessManager(this));
+    setNetworkAccessManager(new NetworkAccessManager(this));
     setPluginFactory(new KWebPluginFactory(this));
     
     action(Back)->setIcon(KIcon("go-previous"));


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

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