Hello,

here a patch that fix a filterurljob thread hang...

Calling KUriFilter::self () in thread seems to make function hang for some 
seconds... Calling it before running thread fix the bug...

One question for C++ noob, what is doing KuriFilter::self () ???

Regards,

-- 
Cédric Bellegarde
Ensat
diff --git a/src/filterurljob.cpp b/src/filterurljob.cpp
index bc6118d..c887ac6 100644
--- a/src/filterurljob.cpp
+++ b/src/filterurljob.cpp
@@ -28,15 +28,14 @@
 #include "filterurljob.h"
 
 // KDE Includes
-#include <KUriFilter>
 #include <KUriFilterData>
 
-
 FilterUrlJob::FilterUrlJob(WebView *view, const QString &urlString, QObject *parent)
         : Job(parent)
         , _view(view)
         , _urlString(urlString)
 {
+    uriFilter = KUriFilter::self();
 }
 
 
@@ -59,7 +58,7 @@ void FilterUrlJob::run()
     KUriFilterData data(_urlString);
     data.setCheckForExecutables(false); // if true, queries like "rekonq" or "dolphin" are considered as executables
 
-    if (KUriFilter::self()->filterUri(data) && data.uriType() != KUriFilterData::Error)
+    if (uriFilter->filterUri(data) && data.uriType() != KUriFilterData::Error)
     {
         QString tempUrlString = data.uri().url();
         _url = KUrl(tempUrlString);
diff --git a/src/filterurljob.h b/src/filterurljob.h
index 6ab1069..c10c5e3 100644
--- a/src/filterurljob.h
+++ b/src/filterurljob.h
@@ -35,6 +35,7 @@
 
 // KDE Includes
 #include <KUrl>
+#include <KUriFilter>
 #include <ThreadWeaver/Job>
 
 // Qt Includes
@@ -59,6 +60,8 @@ private:
     WebView *_view;
     QString _urlString;
     KUrl _url;
+    KUriFilter *uriFilter;
+
 };
 
 #endif // FILTER_URL_JOB_H
_______________________________________________
rekonq mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/rekonq

Reply via email to