diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-01-27 11:21:53 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2016-01-27 20:35:11 +0000 |
commit | fd7f2367515bd243a171ae1234b3443d6f24955d (patch) | |
tree | b543d2e324c5cc2f7ea13cbd78eaa2b425ee3c15 /src/core/url_request_custom_job_delegate.h | |
parent | eeb18149fa6d796dd5202f080b828099a9187046 (diff) |
Fix multi-thread protection in custom url handler
The classes were not properly protected against race conditions. To
solve this there is now a class shared between the two thread that is
not deleted until the classes on both threads have been deleted.
Change-Id: I499bd98805ae7a195aca42f30610eb6c2b0fd0f7
Reviewed-by: Michael BrĂ¼ning <michael.bruning@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Diffstat (limited to 'src/core/url_request_custom_job_delegate.h')
-rw-r--r-- | src/core/url_request_custom_job_delegate.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/url_request_custom_job_delegate.h b/src/core/url_request_custom_job_delegate.h index 5b6137820..e066e85cc 100644 --- a/src/core/url_request_custom_job_delegate.h +++ b/src/core/url_request_custom_job_delegate.h @@ -46,7 +46,7 @@ QT_FORWARD_DECLARE_CLASS(QIODevice) namespace QtWebEngineCore { -class URLRequestCustomJob; +class URLRequestCustomJobShared; class QWEBENGINE_EXPORT URLRequestCustomJobDelegate : public QObject { Q_OBJECT @@ -72,10 +72,10 @@ public: void fail(Error); private: - URLRequestCustomJobDelegate(URLRequestCustomJob *job); + URLRequestCustomJobDelegate(URLRequestCustomJobShared *shared); - friend class URLRequestCustomJob; - URLRequestCustomJob *m_job; + friend class URLRequestCustomJobShared; + URLRequestCustomJobShared *m_shared; }; } // namespace |