summaryrefslogtreecommitdiffstats
path: root/src/concurrent
diff options
context:
space:
mode:
authorJarek Kobus <jaroslaw.kobus@qt.io>2020-04-29 10:09:12 +0200
committerJarek Kobus <jaroslaw.kobus@qt.io>2020-04-29 22:58:11 +0200
commita4071c18de94e41a157642cd0dfa0f4748d531af (patch)
tree8a6a20d279e5f908a00f308a16e45ddfbcbaedf8 /src/concurrent
parent4a242963ec5715f5755eb707ccc845c890a77fa9 (diff)
Get rid of virtual inheritance from ThreadEngineBase
The virtual inheritance causes the issue, when adding new, non-default constructor to the base ThreadEngineBase class. It looks like classes derived from it can't use the non-default constructor, even when it's called explicilty from the subclass. Instead, the default constructor of the ThreadEngineBase class is always required during compilation and called on runtime. In addition, the only sensible use of the virtual inheritance is the multiple inheritance, but apparently it looks like there is no single class in Qt which would multi inherit from the ThreadEngineBase class, so this change shouldn't have any bad side effects. This justifies the current lack of info on why it was introduced originally ages ago. Change-Id: I08266e6f6865d938d1b1e4243ef94d2c02c3a886 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/concurrent')
-rw-r--r--src/concurrent/qtconcurrentthreadengine.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/concurrent/qtconcurrentthreadengine.h b/src/concurrent/qtconcurrentthreadengine.h
index b7be48d612..a04f69f8e4 100644
--- a/src/concurrent/qtconcurrentthreadengine.h
+++ b/src/concurrent/qtconcurrentthreadengine.h
@@ -126,7 +126,7 @@ protected:
template <typename T>
-class ThreadEngine : public virtual ThreadEngineBase
+class ThreadEngine : public ThreadEngineBase
{
public:
typedef T ResultType;