Add a workaround to allow some customer plugins to still build.
This commit is contained in:
parent
9eaafc8ee9
commit
0ba3f6ca39
@ -155,6 +155,10 @@ void PluginMetadata::parse(const QJsonObject &jsonObject)
|
|||||||
|
|
||||||
// Load deviceclasses of this vendor
|
// Load deviceclasses of this vendor
|
||||||
foreach (const QJsonValue &deviceClassJson, vendorJson.toObject().value("deviceClasses").toArray()) {
|
foreach (const QJsonValue &deviceClassJson, vendorJson.toObject().value("deviceClasses").toArray()) {
|
||||||
|
|
||||||
|
// FIXME: Drop this when possible, see .h for context
|
||||||
|
m_currentScopUuids.clear();
|
||||||
|
|
||||||
QJsonObject deviceClassObject = deviceClassJson.toObject();
|
QJsonObject deviceClassObject = deviceClassJson.toObject();
|
||||||
/*! Returns a list of all valid JSON properties a DeviceClass JSON definition can have. */
|
/*! Returns a list of all valid JSON properties a DeviceClass JSON definition can have. */
|
||||||
QStringList deviceClassProperties = QStringList() << "id" << "name" << "displayName" << "createMethods" << "setupMethod"
|
QStringList deviceClassProperties = QStringList() << "id" << "name" << "displayName" << "createMethods" << "setupMethod"
|
||||||
@ -720,6 +724,11 @@ QPair<bool, Types::InputType> PluginMetadata::loadAndVerifyInputType(const QStri
|
|||||||
bool PluginMetadata::verifyDuplicateUuid(const QUuid &uuid)
|
bool PluginMetadata::verifyDuplicateUuid(const QUuid &uuid)
|
||||||
{
|
{
|
||||||
if (m_allUuids.contains(uuid)) {
|
if (m_allUuids.contains(uuid)) {
|
||||||
|
// FIXME: Drop debug, activate return! (see .h for more context)
|
||||||
|
qCWarning(dcPluginMetadata()) << "THIS PLUGIN USES DUPLICATE UUID" << uuid.toString() << "! THIS WILL STOP WORKING SOON.";
|
||||||
|
// return false;
|
||||||
|
}
|
||||||
|
if (m_currentScopUuids.contains(uuid)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
m_allUuids.append(uuid);
|
m_allUuids.append(uuid);
|
||||||
|
|||||||
@ -65,6 +65,12 @@ private:
|
|||||||
DeviceClasses m_deviceClasses;
|
DeviceClasses m_deviceClasses;
|
||||||
|
|
||||||
QList<QUuid> m_allUuids;
|
QList<QUuid> m_allUuids;
|
||||||
|
|
||||||
|
// FIXME: Due to the fact that we have duplicate UUIDs in use in plugins out there in
|
||||||
|
// products, we can't just break those plugins now. For now, let's make the check
|
||||||
|
// As strict as possible without breaking them, but this should be removed ASAP
|
||||||
|
// and only m_allUuids should be used to check for dupes
|
||||||
|
QList<QUuid> m_currentScopUuids;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // PLUGINMETADATA_H
|
#endif // PLUGINMETADATA_H
|
||||||
|
|||||||
Reference in New Issue
Block a user