Control: tags -1 pending On Fri, Jul 29, 2022 at 06:21:52PM +0200, Lucas Nussbaum wrote: > Source: maliit-framework > Version: 2.2.1-2 > Severity: serious > Justification: FTBFS > Tags: bookworm sid ftbfs > User: lu...@debian.org > Usertags: ftbfs-20220728 ftbfs-bookworm > > Hi, > > During a rebuild of all packages in sid, your package failed to build > on amd64.
I have just uploaded an NMU which fixes this. Attached a debdiff. -- Dmitry Shachnev
diff -Nru maliit-framework-2.2.1/debian/changelog maliit-framework-2.2.1/debian/changelog --- maliit-framework-2.2.1/debian/changelog 2022-06-25 17:04:48.000000000 +0300 +++ maliit-framework-2.2.1/debian/changelog 2022-09-18 16:55:17.000000000 +0300 @@ -1,3 +1,15 @@ +maliit-framework (2.2.1-2.1) unstable; urgency=medium + + * Non-maintainer upload. + * Add two patches to fix FTBFS (closes: #1016264). + - debian/patches/0001_move-operator-definition.patch: Move the + operator== definition to global namespace. + - debian/patches/1001_fix-segfault.patch: Prevent QList returned + by subject->pluginDescriptions from being deleted. + * Update debian/libmaliit-plugins2.symbols from the current build logs. + + -- Dmitry Shachnev <mity...@debian.org> Sun, 18 Sep 2022 16:55:17 +0300 + maliit-framework (2.2.1-2) unstable; urgency=medium * debian/libmaliit-plugins2.symbols: diff -Nru maliit-framework-2.2.1/debian/libmaliit-plugins2.symbols maliit-framework-2.2.1/debian/libmaliit-plugins2.symbols --- maliit-framework-2.2.1/debian/libmaliit-plugins2.symbols 2022-06-25 17:04:08.000000000 +0300 +++ maliit-framework-2.2.1/debian/libmaliit-plugins2.symbols 2022-09-18 16:55:17.000000000 +0300 @@ -831,7 +831,6 @@ _ZN43MImSettingsQSettingsTemporaryBackendFactoryD0Ev@Base 2.0.0 _ZN43MImSettingsQSettingsTemporaryBackendFactoryD1Ev@Base 2.0.0 _ZN43MImSettingsQSettingsTemporaryBackendFactoryD2Ev@Base 2.0.0 - (optional=templinst|arch=!i386 !mipsel)_ZN4QMapI7QString14QSharedPointerI12MKeyOverrideEE6insertERKS0_RKS3_@Base 2.0.0 (optional=templinst)_ZN4QMapI7QString14QSharedPointerI12MKeyOverrideEED1Ev@Base 2.0.0 (optional=templinst)_ZN4QMapI7QString14QSharedPointerI12MKeyOverrideEED2Ev@Base 2.0.0 (optional=templinst)_ZN4QMapI7QString8QVariantE13detach_helperEv@Base 2.0.0 @@ -847,7 +846,7 @@ (optional=templinst)_ZN4QMapIN6Maliit12HandlerStateEPNS0_7Plugins17InputMethodPluginEE13detach_helperEv@Base 2.0.0 (optional=templinst)_ZN4QMapIPN6Maliit7Plugins17InputMethodPluginEN23MIMPluginManagerPrivate17PluginDescriptionEE13detach_helperEv@Base 2.0.0 (optional=templinst)_ZN4QMapIPN6Maliit7Plugins17InputMethodPluginEN23MIMPluginManagerPrivate17PluginDescriptionEE6insertERKS3_RKS5_@Base 2.0.0 - (optional=templinst|arch=!amd64 !arm64)_ZN4QMapIPN6Maliit7Plugins17InputMethodPluginEN23MIMPluginManagerPrivate17PluginDescriptionEEixERKS3_@Base 2.2.1 + (optional=templinst)_ZN4QMapIPN6Maliit7Plugins17InputMethodPluginEN23MIMPluginManagerPrivate17PluginDescriptionEEixERKS3_@Base 2.2.1 (optional=templinst)_ZN5QHashI21MAttributeExtensionId14QSharedPointerI19MAttributeExtensionEE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 (optional=templinst)_ZN5QHashI21MAttributeExtensionId14QSharedPointerI19MAttributeExtensionEE13detach_helperEv@Base 2.0.0 (optional=templinst)_ZN5QHashI21MAttributeExtensionId14QSharedPointerI19MAttributeExtensionEE13duplicateNodeEPN9QHashData4NodeEPv@Base 2.0.0 @@ -858,19 +857,17 @@ (optional=templinst)_ZN5QHashI7QString14QSharedPointerI45MSharedAttributeExtensionManagerPluginSettingEE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString14QSharedPointerI45MSharedAttributeExtensionManagerPluginSettingEE13detach_helperEv@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString14QSharedPointerI45MSharedAttributeExtensionManagerPluginSettingEE13duplicateNodeEPN9QHashData4NodeEPv@Base 2.0.0 - (optional=templinst)_ZN5QHashI7QString14QSharedPointerI45MSharedAttributeExtensionManagerPluginSettingEEixERKS0_@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString15QHashDummyValueE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEE13detach_helperEv@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEE13duplicateNodeEPN9QHashData4NodeEPv@Base 2.0.0 - (optional=templinst)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEE5eraseENS5_14const_iteratorE@Base 2.0.0 + (optional=templinst|arch=!i386)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEE5eraseENS5_14const_iteratorE@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEED1Ev@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString5QListIP27MImSettingsQSettingsBackendEED2Ev@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString8QVariantE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString8QVariantE13duplicateNodeEPN9QHashData4NodeEPv@Base 2.0.0 (optional=templinst)_ZN5QHashI7QString8QVariantEixERKS0_@Base 2.0.0 (optional=templinst)_ZN5QHashI7QStringjE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 - (optional=templinst)_ZN5QHashI7QStringjE13detach_helperEv@Base 2.0.0 (optional=templinst)_ZN5QHashI7QStringjE13duplicateNodeEPN9QHashData4NodeEPv@Base 2.0.0 (optional=templinst)_ZN5QHashIN6Maliit12HandlerStateE15QHashDummyValueE11deleteNode2EPN9QHashData4NodeE@Base 2.0.0 (optional=templinst)_ZN5QHashIN6Maliit12HandlerStateE15QHashDummyValueE13detach_helperEv@Base 2.0.0 @@ -1263,12 +1260,12 @@ _ZN7QStringD1Ev@Base 2.0.0 _ZN7QStringD2Ev@Base 2.0.0 (optional=templinst)_ZN7QVectorI15xcb_rectangle_tE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 2.0.0 -#MISSING: 2.2.0# (optional=templinst)_ZN7QVectorI5QRectED1Ev@Base 2.0.0 -#MISSING: 2.2.0# (optional=templinst)_ZN7QVectorI5QRectED2Ev@Base 2.0.0 (optional=templinst)_ZN7QVectorIN6Maliit10WindowDataEE7reallocEi6QFlagsIN10QArrayData16AllocationOptionEE@Base 2.0.0 + (optional=templinst)_ZN7QVectorIN6Maliit10WindowDataEEC1ERKS2_@Base 2.2.1 + (optional=templinst)_ZN7QVectorIN6Maliit10WindowDataEEC2ERKS2_@Base 2.2.1 (optional=templinst)_ZN7QVectorIN6Maliit10WindowDataEED1Ev@Base 2.0.0 (optional=templinst)_ZN7QVectorIN6Maliit10WindowDataEED2Ev@Base 2.0.0 - (optional=templinst|arch=i386 mipsel)_ZN8QMapDataI7QString14QSharedPointerI12MKeyOverrideEE7destroyEv@Base 2.2.1 + (optional=templinst)_ZN8QMapDataI7QString14QSharedPointerI12MKeyOverrideEE7destroyEv@Base 2.2.1 (optional=templinst)_ZN8QMapDataI7QString8QVariantE10createNodeERKS0_RKS1_P8QMapNodeIS0_S1_Eb@Base 2.0.0 (optional=templinst)_ZN8QMapDataIN6Maliit12HandlerStateE7QStringE7destroyEv@Base 2.0.0 (optional=templinst)_ZN8QMapDataIPN6Maliit7Plugins17InputMethodPluginEN23MIMPluginManagerPrivate17PluginDescriptionEE7destroyEv@Base 2.0.0 @@ -1307,8 +1304,6 @@ (optional=templinst)_ZN9QtPrivate16ConverterFunctorI5QListIiEN17QtMetaTypePrivate23QSequentialIterableImplENS3_33QSequentialIterableConvertFunctorIS2_EEE7convertEPKNS_25AbstractConverterFunctionEPKvPv@Base 2.0.0 (optional=templinst)_ZN9QtPrivate16ConverterFunctorI5QListIiEN17QtMetaTypePrivate23QSequentialIterableImplENS3_33QSequentialIterableConvertFunctorIS2_EEED1Ev@Base 2.0.0 (optional=templinst)_ZN9QtPrivate16ConverterFunctorI5QListIiEN17QtMetaTypePrivate23QSequentialIterableImplENS3_33QSequentialIterableConvertFunctorIS2_EEED2Ev@Base 2.0.0 - (optional=templinst)_ZN9QtPrivate17QForeachContainerI7QVectorIN6Maliit10WindowDataEEEC1ERKS4_@Base 2.0.0 - (optional=templinst)_ZN9QtPrivate17QForeachContainerI7QVectorIN6Maliit10WindowDataEEEC2ERKS4_@Base 2.0.0 (optional=templinst)_ZN9QtPrivate19QVariantValueHelperI13QDBusArgumentE8metaTypeERK8QVariant@Base 2.0.0 (optional=templinst)_ZN9QtPrivate29SharedPointerMetaTypeIdHelperI14QSharedPointerI12MKeyOverrideELb1EE14qt_metatype_idEv@Base 2.0.0 _ZN9QtPrivate8RefCount3refEv@Base 2.0.0 diff -Nru maliit-framework-2.2.1/debian/patches/0001_move-operator-definition.patch maliit-framework-2.2.1/debian/patches/0001_move-operator-definition.patch --- maliit-framework-2.2.1/debian/patches/0001_move-operator-definition.patch 1970-01-01 03:00:00.000000000 +0300 +++ maliit-framework-2.2.1/debian/patches/0001_move-operator-definition.patch 2022-09-18 16:55:17.000000000 +0300 @@ -0,0 +1,27 @@ +Description: ut_mimserveroptions: Move the operator== definition to global namespace + With gcc-12 having the operator== in anonymous namespace for a struct which + is in the global namespace results in a lengthy compilation error. Moving + this non-member function into the global namespace fixes the issue. +Origin: upstream, https://github.com/maliit/framework/commit/86e55980e3025678 +Last-Update: 2022-09-18 + +--- a/tests/ut_mimserveroptions/ut_mimserveroptions.cpp ++++ b/tests/ut_mimserveroptions/ut_mimserveroptions.cpp +@@ -42,12 +42,12 @@ namespace { + "-testability", "TESTABILITY", "-qdevel", "-reverse", + "-stylesheet", "-widgetcount", "-qdebug", + "-software" } }; ++} + +- bool operator==(const MImServerCommonOptions &x, +- const MImServerCommonOptions &y) +- { +- return (x.showHelp == y.showHelp); +- } ++bool operator==(const MImServerCommonOptions &x, ++ const MImServerCommonOptions &y) ++{ ++ return (x.showHelp == y.showHelp); + } + + diff -Nru maliit-framework-2.2.1/debian/patches/1001_fix-segfault.patch maliit-framework-2.2.1/debian/patches/1001_fix-segfault.patch --- maliit-framework-2.2.1/debian/patches/1001_fix-segfault.patch 1970-01-01 03:00:00.000000000 +0300 +++ maliit-framework-2.2.1/debian/patches/1001_fix-segfault.patch 2022-09-18 16:55:17.000000000 +0300 @@ -0,0 +1,60 @@ +Description: prevent QList returned by subject->pluginDescriptions from being deleted + If we don't save QList to a variable, it becomes deleted, and pointer + returned by findPluginDescriptions becomes invalid. Then trying to call + description->enabled() results in a segmentation fault. +Author: Dmitry Shachnev <mity...@debian.org> +Forwarded: https://github.com/maliit/framework/pull/116 +Last-Update: 2022-09-18 + +--- a/tests/ft_mimpluginmanager/ft_mimpluginmanager.cpp ++++ b/tests/ft_mimpluginmanager/ft_mimpluginmanager.cpp +@@ -202,16 +202,19 @@ void Ft_MIMPluginManager::testPluginDesc + + MImSettings enabledPluginsSettings(EnabledPluginsKey); + QStringList enabledPlugins; ++ ++ QList<MImPluginDescription> pluginDescriptions; + const MImPluginDescription *description = 0; + + enabledPlugins << pluginId + ":" + "dummyimsv1"; + enabledPluginsSettings.set(enabledPlugins); + QCOMPARE(spy.count(), 1); + +- description = findPluginDescriptions(subject->pluginDescriptions(Maliit::OnScreen), pluginName); ++ pluginDescriptions = subject->pluginDescriptions(Maliit::OnScreen); ++ description = findPluginDescriptions(pluginDescriptions, pluginName); + QVERIFY(description); + QVERIFY(description->enabled()); +- description = findPluginDescriptions(subject->pluginDescriptions(Maliit::OnScreen), pluginName3); ++ description = findPluginDescriptions(pluginDescriptions, pluginName3); + QVERIFY(description); + QVERIFY(!description->enabled()); + description = 0; +@@ -220,10 +223,11 @@ void Ft_MIMPluginManager::testPluginDesc + enabledPluginsSettings.set(enabledPlugins); + QCOMPARE(spy.count(), 2); + +- description = findPluginDescriptions(subject->pluginDescriptions(Maliit::OnScreen), pluginName); ++ pluginDescriptions = subject->pluginDescriptions(Maliit::OnScreen); ++ description = findPluginDescriptions(pluginDescriptions, pluginName); + QVERIFY(description); + QVERIFY(description->enabled()); +- description = findPluginDescriptions(subject->pluginDescriptions(Maliit::OnScreen), pluginName3); ++ description = findPluginDescriptions(pluginDescriptions, pluginName3); + QVERIFY(description); + QVERIFY(!description->enabled()); + description = 0; +@@ -232,10 +236,11 @@ void Ft_MIMPluginManager::testPluginDesc + enabledPluginsSettings.set(enabledPlugins); + QCOMPARE(spy.count(), 3); + +- description = findPluginDescriptions(subject->pluginDescriptions(Maliit::OnScreen), pluginName); ++ pluginDescriptions = subject->pluginDescriptions(Maliit::OnScreen); ++ description = findPluginDescriptions(pluginDescriptions, pluginName); + QVERIFY(description); + QVERIFY(description->enabled()); +- description = findPluginDescriptions(subject->pluginDescriptions(Maliit::OnScreen), pluginName3); ++ description = findPluginDescriptions(pluginDescriptions, pluginName3); + QVERIFY(description); + QVERIFY(description->enabled()); + description = 0; diff -Nru maliit-framework-2.2.1/debian/patches/series maliit-framework-2.2.1/debian/patches/series --- maliit-framework-2.2.1/debian/patches/series 1970-01-01 03:00:00.000000000 +0300 +++ maliit-framework-2.2.1/debian/patches/series 2022-09-18 16:55:17.000000000 +0300 @@ -0,0 +1,2 @@ +0001_move-operator-definition.patch +1001_fix-segfault.patch
signature.asc
Description: PGP signature