Hello community, here is the log from the commit of package bluez-qt for openSUSE:Factory checked in at 2015-10-19 22:21:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bluez-qt (Old) and /work/SRC/openSUSE:Factory/.bluez-qt.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bluez-qt" Changes: -------- --- /work/SRC/openSUSE:Factory/bluez-qt/bluez-qt.changes 2015-09-24 07:09:17.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.bluez-qt.new/bluez-qt.changes 2015-10-19 22:21:22.000000000 +0200 @@ -1,0 +2,12 @@ +Mon Oct 5 17:36:57 UTC 2015 - [email protected] + +- Update to 5.15.0 + * Fix fakebluez crash in obexmanagertest with ASAN + * Forward declare all exported classes in types.h + * ObexTransfer: Set error when transfer session is removed + * Utils: Hold pointers to managers instances + * ObexTransfer: Set error when org.bluez.obex crashes + * For more details please see: + https://www.kde.org/announcements/kde-frameworks-5.15.0.php + +------------------------------------------------------------------- Old: ---- bluez-qt-5.14.0.tar.xz New: ---- bluez-qt-5.15.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bluez-qt.spec ++++++ --- /var/tmp/diff_new_pack.m2wXCW/_old 2015-10-19 22:21:22.000000000 +0200 +++ /var/tmp/diff_new_pack.m2wXCW/_new 2015-10-19 22:21:22.000000000 +0200 @@ -18,9 +18,9 @@ %define sonum 6 %define _libname KF5BluezQt -%define _tar_path 5.14 +%define _tar_path 5.15 Name: bluez-qt -Version: 5.14.0 +Version: 5.15.0 Release: 0 Summary: Async Bluez wrapper library License: LGPL-2.1+ ++++++ bluez-qt-5.14.0.tar.xz -> bluez-qt-5.15.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/CMakeLists.txt new/bluez-qt-5.15.0/CMakeLists.txt --- old/bluez-qt-5.14.0/CMakeLists.txt 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/CMakeLists.txt 2015-10-03 12:10:31.000000000 +0200 @@ -3,7 +3,7 @@ project(BluezQt) include(FeatureSummary) -find_package(ECM 5.14.0 NO_MODULE) +find_package(ECM 5.15.0 NO_MODULE) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/kdesupport/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) @@ -18,7 +18,7 @@ include(KDEFrameworkCompilerSettings) include(KDECMakeSettings) -set(KF5_VERSION "5.14.0") # handled by release scripts +set(KF5_VERSION "5.15.0") # handled by release scripts ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX BLUEZQT diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/adaptertest.cpp new/bluez-qt-5.15.0/autotests/adaptertest.cpp --- old/bluez-qt-5.14.0/autotests/adaptertest.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/adaptertest.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -26,7 +26,6 @@ #include <QtTest/QTest> #include <QtTest/QSignalSpy> -#include <QDebug> namespace BluezQt { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/agentmanagertest.cpp new/bluez-qt-5.15.0/autotests/agentmanagertest.cpp --- old/bluez-qt-5.14.0/autotests/agentmanagertest.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/agentmanagertest.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -27,7 +27,6 @@ #include <QtTest/QTest> #include <QtTest/QSignalSpy> -#include <QLoggingCategory> #include <QDBusObjectPath> namespace BluezQt @@ -122,7 +121,6 @@ void AgentManagerTest::initTestCase() { bluezqt_initFakeBluezTestRun(); - QLoggingCategory::setFilterRules(QStringLiteral("BluezQt=false")); FakeBluez::start(); FakeBluez::runTest(QStringLiteral("bluez-standard")); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/autotests.cpp new/bluez-qt-5.15.0/autotests/autotests.cpp --- old/bluez-qt-5.14.0/autotests/autotests.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/autotests.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -74,7 +74,6 @@ connect(FakeBluez::s_process, SIGNAL(error(QProcess::ProcessError)), this, SLOT(processError(QProcess::ProcessError))); connect(FakeBluez::s_process, SIGNAL(finished(int,QProcess::ExitStatus)), this, SLOT(processFinished(int,QProcess::ExitStatus))); - FakeBluez::s_process->setStandardErrorFile(QStringLiteral("/tmp/fakebluez.out")); FakeBluez::s_process->start(m_fakebluezPath); m_eventLoop.exec(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/devicetest.cpp new/bluez-qt-5.15.0/autotests/devicetest.cpp --- old/bluez-qt-5.14.0/autotests/devicetest.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/devicetest.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -25,7 +25,6 @@ #include <QtTest/QTest> #include <QtTest/QSignalSpy> -#include <QDebug> namespace BluezQt { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/fakebluez/fakebluez.cpp new/bluez-qt-5.15.0/autotests/fakebluez/fakebluez.cpp --- old/bluez-qt-5.14.0/autotests/fakebluez/fakebluez.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/fakebluez/fakebluez.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -110,6 +110,7 @@ { // Everything is parented to ObjectManager delete m_objectManager; + m_objectManager = Q_NULLPTR; } void FakeBluez::createObjectManager() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/fakebluez/objectmanager.cpp new/bluez-qt-5.15.0/autotests/fakebluez/objectmanager.cpp --- old/bluez-qt-5.14.0/autotests/fakebluez/objectmanager.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/fakebluez/objectmanager.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -39,6 +39,7 @@ ObjectManager::~ObjectManager() { + s_instance = Q_NULLPTR; qDeleteAll(m_autoDeleteObjects); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/jobstest.cpp new/bluez-qt-5.15.0/autotests/jobstest.cpp --- old/bluez-qt-5.14.0/autotests/jobstest.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/jobstest.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -27,15 +27,9 @@ #include <QtTest/QTest> #include <QtTest/QSignalSpy> -#include <QLoggingCategory> using namespace BluezQt; -void JobsTest::initTestCase() -{ - QLoggingCategory::setFilterRules(QStringLiteral("BluezQt=false")); -} - void JobsTest::deleteManagerTest() { Manager *manager = new Manager(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/jobstest.h new/bluez-qt-5.15.0/autotests/jobstest.h --- old/bluez-qt-5.14.0/autotests/jobstest.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/jobstest.h 2015-10-03 12:10:31.000000000 +0200 @@ -28,8 +28,6 @@ Q_OBJECT private Q_SLOTS: - void initTestCase(); - void deleteManagerTest(); void deleteInitManagerJobTest(); void deleteObexManagerTest(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/managertest.cpp new/bluez-qt-5.15.0/autotests/managertest.cpp --- old/bluez-qt-5.14.0/autotests/managertest.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/managertest.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -27,7 +27,6 @@ #include <QtTest/QTest> #include <QtTest/QSignalSpy> -#include <QLoggingCategory> #include <QDBusObjectPath> namespace BluezQt @@ -40,7 +39,6 @@ void ManagerTest::initTestCase() { bluezqt_initFakeBluezTestRun(); - QLoggingCategory::setFilterRules(QStringLiteral("BluezQt=false")); Autotests::registerMetatypes(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/obexmanagertest.cpp new/bluez-qt-5.15.0/autotests/obexmanagertest.cpp --- old/bluez-qt-5.14.0/autotests/obexmanagertest.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/obexmanagertest.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -25,7 +25,6 @@ #include <QtTest/QTest> #include <QtTest/QSignalSpy> -#include <QLoggingCategory> namespace BluezQt { @@ -37,10 +36,9 @@ void ObexManagerTest::initTestCase() { bluezqt_initFakeBluezTestRun(); - QLoggingCategory::setFilterRules(QStringLiteral("BluezQt=false")); } -void ObexManagerTest::cleanupTestCase() +void ObexManagerTest::cleanup() { FakeBluez::stop(); } @@ -56,6 +54,8 @@ QVERIFY(!job->error()); QVERIFY(manager->isInitialized()); QVERIFY(!manager->isOperational()); + + delete manager; } void ObexManagerTest::obexNotExportingInterfacesTest() @@ -72,6 +72,8 @@ QVERIFY(job->error()); QVERIFY(!manager->isInitialized()); QVERIFY(!manager->isOperational()); + + delete manager; } void ObexManagerTest::obexEmptyManagedObjectsTest() @@ -88,6 +90,8 @@ QVERIFY(job->error()); QVERIFY(!manager->isInitialized()); QVERIFY(!manager->isOperational()); + + delete manager; } void ObexManagerTest::obexNoClientTest() @@ -104,6 +108,8 @@ QVERIFY(job->error()); QVERIFY(!manager->isInitialized()); QVERIFY(!manager->isOperational()); + + delete manager; } void ObexManagerTest::obexNoAgentManagerTest() @@ -120,6 +126,8 @@ QVERIFY(job->error()); QVERIFY(!manager->isInitialized()); QVERIFY(!manager->isOperational()); + + delete manager; } void ObexManagerTest::obexServiceOkTest() @@ -136,6 +144,8 @@ QVERIFY(!job->error()); QVERIFY(manager->isInitialized()); QVERIFY(manager->isOperational()); + + delete manager; } QTEST_MAIN(ObexManagerTest) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/obexmanagertest.h new/bluez-qt-5.15.0/autotests/obexmanagertest.h --- old/bluez-qt-5.14.0/autotests/obexmanagertest.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/obexmanagertest.h 2015-10-03 12:10:31.000000000 +0200 @@ -29,7 +29,7 @@ private Q_SLOTS: void initTestCase(); - void cleanupTestCase(); + void cleanup(); void obexNotRunningTest(); void obexNotExportingInterfacesTest(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/autotests/qmltests.cpp new/bluez-qt-5.15.0/autotests/qmltests.cpp --- old/bluez-qt-5.14.0/autotests/qmltests.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/autotests/qmltests.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -98,7 +98,6 @@ qmlRegisterSingletonType<QObject>("org.kde.bluezqt.fakebluez", 1, 0, "FakeBluez", fakebluez_singleton); BluezQt::bluezqt_initFakeBluezTestRun(); - QLoggingCategory::setFilterRules(QStringLiteral("BluezQt=false")); qputenv("QML2_IMPORT_PATH", QByteArrayLiteral(BLUEZQT_QML_IMPORT_PATH)); const QString &testsDir = QFileInfo(QFINDTESTDATA("qml/tst_device.qml")).absolutePath(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/bluezqt_dbustypes.h new/bluez-qt-5.15.0/src/bluezqt_dbustypes.h --- old/bluez-qt-5.14.0/src/bluezqt_dbustypes.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/bluezqt_dbustypes.h 2015-10-03 12:10:31.000000000 +0200 @@ -28,7 +28,7 @@ #include <QDBusObjectPath> typedef QList<QVariantMap> QVariantMapList; -Q_DECLARE_METATYPE(QVariantMapList); +Q_DECLARE_METATYPE(QVariantMapList) typedef QMap<QString, QVariantMap> QVariantMapMap; Q_DECLARE_METATYPE(QVariantMapMap) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/device.h new/bluez-qt-5.15.0/src/device.h --- old/bluez-qt-5.14.0/src/device.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/device.h 2015-10-03 12:10:31.000000000 +0200 @@ -88,11 +88,11 @@ Keyboard, /** The device is a mouse. */ Mouse, - /** The deivce is an uncategorized peripheral device. */ + /** The device is a joypad. */ Joypad, /** The device is a graphics tablet (input device). */ Tablet, - /** The device is a wearable device. */ + /** The deivce is an uncategorized peripheral device. */ Peripheral, /** The device is a camera. */ Camera, @@ -100,7 +100,7 @@ Printer, /** The device is an uncategorized imaging device. */ Imaging, - /** The device is a joypad. */ + /** The device is a wearable device. */ Wearable, /** The device is a toy. */ Toy, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/manager.cpp new/bluez-qt-5.15.0/src/manager.cpp --- old/bluez-qt-5.14.0/src/manager.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/manager.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -40,6 +40,7 @@ : QObject(parent) , d(new ManagerPrivate(this)) { + Instance::setManager(this); } Manager::~Manager() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/obexmanager.cpp new/bluez-qt-5.15.0/src/obexmanager.cpp --- old/bluez-qt-5.14.0/src/obexmanager.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/obexmanager.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -39,6 +39,7 @@ : QObject(parent) , d(new ObexManagerPrivate(this)) { + Instance::setObexManager(this); } ObexManager::~ObexManager() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/obextransfer.cpp new/bluez-qt-5.15.0/src/obextransfer.cpp --- old/bluez-qt-5.14.0/src/obextransfer.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/obextransfer.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -23,6 +23,8 @@ #include "obextransfer.h" #include "obextransfer_p.h" #include "pendingcall.h" +#include "obexmanager.h" +#include "obexsession.h" #include "utils.h" #include "macros.h" @@ -56,6 +58,10 @@ { m_bluezTransfer = new BluezTransfer(Strings::orgBluezObex(), path, DBusConnection::orgBluezObex(), this); + if (Instance::obexManager()) { + connect(Instance::obexManager(), &ObexManager::sessionRemoved, this, &ObexTransferPrivate::sessionRemoved); + } + init(properties); } @@ -100,6 +106,19 @@ } } +void ObexTransferPrivate::sessionRemoved(ObexSessionPtr session) +{ + if (!m_bluezTransfer->path().startsWith(session->objectPath().path())) { + return; + } + + // Change status to Error if org.bluez.obex crashes + if (m_status != ObexTransfer::Complete && m_status != ObexTransfer::Error) { + m_status = ObexTransfer::Error; + Q_EMIT q.data()->statusChanged(m_status); + } +} + ObexTransfer::ObexTransfer(const QString &path, const QVariantMap &properties) : QObject() , d(new ObexTransferPrivate(path, properties)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/obextransfer_p.h new/bluez-qt-5.15.0/src/obextransfer_p.h --- old/bluez-qt-5.14.0/src/obextransfer_p.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/obextransfer_p.h 2015-10-03 12:10:31.000000000 +0200 @@ -44,6 +44,7 @@ void init(const QVariantMap &properties); void propertiesChanged(const QString &interface, const QVariantMap &changed, const QStringList &invalidated); + void sessionRemoved(ObexSessionPtr session); QWeakPointer<ObexTransfer> q; BluezTransfer *m_bluezTransfer; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/types.h new/bluez-qt-5.15.0/src/types.h --- old/bluez-qt-5.14.0/src/types.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/types.h 2015-10-03 12:10:31.000000000 +0200 @@ -33,9 +33,20 @@ class Device; class Input; class MediaPlayer; +class MediaPlayerTrack; +class Agent; +class DevicesModel; +class InitManagerJob; +class Profile; +class PendingCall; class ObexManager; class ObexSession; class ObexTransfer; +class InitObexManagerJob; +class ObexAgent; +class ObexFileTransfer; +class ObexFileTransferEntry; +class ObexObjectPush; typedef QSharedPointer<BluezQt::Manager> ManagerPtr; typedef QSharedPointer<BluezQt::Adapter> AdapterPtr; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/utils.cpp new/bluez-qt-5.15.0/src/utils.cpp --- old/bluez-qt-5.14.0/src/utils.cpp 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/utils.cpp 2015-10-03 12:10:31.000000000 +0200 @@ -21,8 +21,11 @@ */ #include "utils.h" +#include "manager.h" +#include "obexmanager.h" #include "bluezqt_export.h" +#include <QPointer> #include <QStringList> #include <QDBusConnection> @@ -48,6 +51,8 @@ QString orgBluezObexAgentManager1; QString orgBluezObexSession1; QString orgBluezObexTransfer1; + QPointer<Manager> manager; + QPointer<ObexManager> obexManager; }; GlobalData::GlobalData() @@ -156,6 +161,26 @@ return QDBusConnection::sessionBus(); } +Manager *Instance::manager() +{ + return globalData->manager; +} + +void Instance::setManager(Manager *manager) +{ + globalData->manager = manager; +} + +ObexManager *Instance::obexManager() +{ + return globalData->obexManager; +} + +void Instance::setObexManager(ObexManager *obexManager) +{ + globalData->obexManager = obexManager; +} + QStringList stringListToUpper(const QStringList &list) { QStringList converted; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bluez-qt-5.14.0/src/utils.h new/bluez-qt-5.15.0/src/utils.h --- old/bluez-qt-5.14.0/src/utils.h 2015-09-04 22:04:48.000000000 +0200 +++ new/bluez-qt-5.15.0/src/utils.h 2015-10-03 12:10:31.000000000 +0200 @@ -59,6 +59,17 @@ } +namespace Instance +{ + +Manager *manager(); +void setManager(Manager *manager); + +ObexManager *obexManager(); +void setObexManager(ObexManager *obexManager); + +} + QStringList stringListToUpper(const QStringList &list); Device::Type classToType(quint32 classNum);
