QmlDesigner: Remove recursions

Change-Id: I1e4258721fa7f04d69854755810eb586cf2c8dec
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Marco Bubke
2025-05-16 00:54:57 +02:00
parent 24d0627482
commit 5e6f8ba66b

View File

@@ -526,14 +526,18 @@ struct ProjectStorage::Statements
mutable Sqlite::ReadStatement<1, 1> selectPrototypeAndExtensionIdsStatement{ mutable Sqlite::ReadStatement<1, 1> selectPrototypeAndExtensionIdsStatement{
"WITH RECURSIVE " "WITH RECURSIVE "
" prototypes(typeId) AS ( " " prototypes(typeId) AS ( "
" SELECT prototypeId FROM types WHERE typeId=?1 " " SELECT prototypeId FROM types WHERE typeId=?1 AND prototypeId IS NOT NULL "
" UNION ALL " " UNION ALL "
" SELECT extensionId FROM types WHERE typeId=?1 " " SELECT extensionId FROM types WHERE typeId=?1 AND extensionId IS NOT NULL "
" UNION ALL " " UNION ALL "
" SELECT prototypeId FROM types JOIN prototypes USING(typeId) " " SELECT prototypeId "
" FROM types JOIN prototypes USING(typeId) "
" WHERE prototypeId IS NOT NULL "
" UNION ALL " " UNION ALL "
" SELECT extensionId FROM types JOIN prototypes USING(typeId)) " " SELECT extensionId "
"SELECT typeId FROM prototypes WHERE typeId IS NOT NULL", " FROM types JOIN prototypes USING(typeId) "
" WHERE extensionId IS NOT NULL) "
"SELECT typeId FROM prototypes",
database}; database};
Sqlite::WriteStatement<3> updatePropertyDeclarationAliasIdAndTypeNameIdStatement{ Sqlite::WriteStatement<3> updatePropertyDeclarationAliasIdAndTypeNameIdStatement{
"UPDATE propertyDeclarations " "UPDATE propertyDeclarations "