From 147a38faa6afbe616a9e6a123c8dbb5b00e458ef Mon Sep 17 00:00:00 2001 From: Lincoln Ramsay Date: Fri, 17 Feb 2012 16:31:06 +1000 Subject: Static plugins don't break QFactoryLoader::keys() The = means that a single, static, compat plugin replaces the list of keys (eg. from previously checked static plugins or from dynamic plugins). Using += prevents this undesirable behaviour. Change-Id: I3a40752c08dddbfe81444ca9c782b633e9742ab9 Reviewed-by: Bradley T. Hughes Reviewed-by: Lars Knoll --- src/corelib/plugin/qfactoryloader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/corelib/plugin/qfactoryloader.cpp b/src/corelib/plugin/qfactoryloader.cpp index ce988fa2ff..2d31e1da7e 100644 --- a/src/corelib/plugin/qfactoryloader.cpp +++ b/src/corelib/plugin/qfactoryloader.cpp @@ -244,7 +244,7 @@ QStringList QFactoryLoader::keys() const QObject *instance = staticPlugins.at(i).instance(); QFactoryInterface *factory = qobject_cast(instance); if (instance && factory && instance->qt_metacast(d->iid)) - keys = factory->keys(); + keys += factory->keys(); } } return keys; -- cgit v1.2.3