Control: tags -1 + moreinfo On 2021-03-19 12:17:46 -0400, Boyuan Yang wrote: > Package: release.debian.org > Severity: normal > User: release.debian.org@packages.debian.org > Usertags: unblock > X-Debbugs-CC: pkg-deepin-devel@lists.alioth.debian.org > > Please unblock package dtkcore > > [ Reason ] > Current version of dtkcore would cause all Deepin applications to crash > when clicking the "About" menu. The new dtkcore/5.2.2.5-3 provides a > targeted patch coming from Deepin upstream to solve this bug. > > The bug is documented as https://bugs.debian.org/985480 . > > [ Impact ] > If the bug is not fixed, all deepin applications (deepin-*) will crash > when the user clicks the "About" menu. > > [ Tests ] > Click the "About" menu with different versions of libdtkcore5 > installed. The new version will not crash. > > All buildd build in Debian sid on release architectures have succeeded. > > [ Risks ] > The risk of introducing regression should be minimal according to my > understanding to the patch. > > [ Checklist ] > [X] all changes are documented in the d/changelog > [X] I reviewed all changes and I approve them > [X] attach debdiff against the package in testing > > unblock dtkcore/5.2.2.5-3 > diff -Nru dtkcore-5.2.2.5/debian/changelog dtkcore-5.2.2.5/debian/changelog > --- dtkcore-5.2.2.5/debian/changelog 2020-12-21 04:20:28.000000000 -0500 > +++ dtkcore-5.2.2.5/debian/changelog 2021-03-18 22:57:38.000000000 -0400 > @@ -1,3 +1,11 @@ > +dtkcore (5.2.2.5-3) unstable; urgency=high > + > + * debian/patches/0001-fix-access-null-pointer.patch: Apply upstream > + patch to avoid program crash when clicking "About" menu in Deepin > + Applications. (Closes: #985480) > + > + -- Boyuan Yang <byang@debian.org> Thu, 18 Mar 2021 22:57:38 -0400 > + > dtkcore (5.2.2.5-2) unstable; urgency=medium > > * debian/libdtkcore5.symbols: > diff -Nru dtkcore-5.2.2.5/debian/libdtkcore5.symbols dtkcore-5.2.2.5/debian/libdtkcore5.symbols > --- dtkcore-5.2.2.5/debian/libdtkcore5.symbols 2020-12-21 04:20:28.000000000 -0500 > +++ dtkcore-5.2.2.5/debian/libdtkcore5.symbols 2021-03-18 22:44:46.000000000 -0400 > @@ -199,6 +199,7 @@ > _ZN3Dtk4Core15DSysInfoPrivate16ensureDeepinInfoEv@Base 5.2.2 > _ZN3Dtk4Core15DSysInfoPrivate17ensureReleaseInfoEv@Base 5.2.2 > _ZN3Dtk4Core15DSysInfoPrivate18ensureComputerInfoEv@Base 5.2.2 > + _ZN3Dtk4Core15DSysInfoPrivate22ensureDistributionInfoEv@Base 5.2.2 Should these symbols really be part of the public ABI? Cheers > _ZN3Dtk4Core15DSysInfoPrivateC1Ev@Base 5.2.2 > _ZN3Dtk4Core15DSysInfoPrivateC2Ev@Base 5.2.2 > _ZN3Dtk4Core15QSettingBackend11doSetOptionERK7QStringRK8QVariant@Base 5.2.2 > diff -Nru dtkcore-5.2.2.5/debian/patches/0001-fix-access-null-pointer.patch dtkcore-5.2.2.5/debian/patches/0001-fix-access-null-pointer.patch > --- dtkcore-5.2.2.5/debian/patches/0001-fix-access-null-pointer.patch 1969-12-31 19:00:00.000000000 -0500 > +++ dtkcore-5.2.2.5/debian/patches/0001-fix-access-null-pointer.patch 2021-03-18 22:57:38.000000000 -0400 > @@ -0,0 +1,65 @@ > +Description: fix access null pointer > + TODO: fix access null pointer > +Author: Hu Feng <hufeng@uniontech.com> > + > +Forwarded: not-needed > +Reviewed-By: Boyuan Yang <byang@debian.org> > +Last-Update: 2021-03-02 > + > +--- dtkcore-5.4.0.orig/src/dsysinfo.cpp > ++++ dtkcore-5.4.0/src/dsysinfo.cpp > +@@ -48,6 +48,7 @@ public: > + #ifdef Q_OS_LINUX > + void ensureDeepinInfo(); > + bool ensureOsVersion(); > ++ void ensureDistributionInfo(); > + #endif > + void ensureReleaseInfo(); > + void ensureComputerInfo(); > +@@ -97,6 +98,16 @@ DSysInfoPrivate::DSysInfoPrivate() > + } > + > + #ifdef Q_OS_LINUX > ++void DSysInfoPrivate::ensureDistributionInfo() > ++{ > ++ if (distributionInfo) > ++ return; > ++ > ++ const QString distributionInfoFile(DSysInfo::distributionInfoPath()); > ++ // Generic DDE distribution info > ++ distributionInfo.reset(new DDesktopEntry(distributionInfoFile)); > ++} > ++ > + void DSysInfoPrivate::ensureDeepinInfo() > + { > + if (static_cast<int>(deepinType) >= 0) > +@@ -168,11 +179,6 @@ void DSysInfoPrivate::ensureDeepinInfo() > + } else { > + deepinType = DSysInfo::UnknownDeepin; > + } > +- > +- const QString distributionInfoFile(DSysInfo::distributionInfoPath()); > +- // Generic DDE distribution info > +- distributionInfo.reset(new DDesktopEntry(distributionInfoFile)); > +- QSettings distributionInfo(distributionInfoFile, QSettings::IniFormat); // TODO: treat as `.desktop` format instead of `.ini` > + } > + > + bool DSysInfoPrivate::ensureOsVersion() > +@@ -734,7 +740,7 @@ QString DSysInfo::distributionInfoSectio > + QString DSysInfo::distributionOrgName(DSysInfo::OrgType type, const QLocale &locale) > + { > + #ifdef Q_OS_LINUX > +- siGlobal->ensureDeepinInfo(); > ++ siGlobal->ensureDistributionInfo(); > + #endif > + > + QString fallback = type == Distribution ? QStringLiteral("Deepin") : QString(); > +@@ -757,7 +763,7 @@ QString DSysInfo::deepinDistributorName( > + QPair<QString, QString> DSysInfo::distributionOrgWebsite(DSysInfo::OrgType type) > + { > + #ifdef Q_OS_LINUX > +- siGlobal->ensureDeepinInfo(); > ++ siGlobal->ensureDistributionInfo(); > + #endif > + > + QString fallbackSiteName = type == Distribution ? QStringLiteral("www.deepin.org") : QString(); > diff -Nru dtkcore-5.2.2.5/debian/patches/series dtkcore-5.2.2.5/debian/patches/series > --- dtkcore-5.2.2.5/debian/patches/series 1969-12-31 19:00:00.000000000 -0500 > +++ dtkcore-5.2.2.5/debian/patches/series 2021-03-18 22:44:25.000000000 -0400 > @@ -0,0 +1 @@ > +0001-fix-access-null-pointer.patch -- Sebastian Ramacher
Attachment:
signature.asc
Description: PGP signature