From 06593bd6425dcb9db016774e5238497b9a3d48bd Mon Sep 17 00:00:00 2001 From: jan Iversen Date: Mon, 9 Jul 2018 10:06:32 +0200 Subject: [PATCH] ssrf: mobile-helper, check return code from qmlRegisterType add check for return code in qmlRegisterType calls, and log a message if failed There are a lot of name restrictions (e.g. must start with a capital letter). Signed-off-by: Jan Iversen --- subsurface-mobile-helper.cpp | 37 +++++++++++++++++++++++++++--------- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/subsurface-mobile-helper.cpp b/subsurface-mobile-helper.cpp index b87eef027..5d7fe6c35 100644 --- a/subsurface-mobile-helper.cpp +++ b/subsurface-mobile-helper.cpp @@ -55,18 +55,37 @@ void init_ui() void run_ui() { + int rc; LOG_STP("run_ui starting"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "SsrfPrefs"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "QMLManager"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "QMLPrefs"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "QMLProfile"); + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "SsrfPrefs"); + if (rc < 0) + qDebug() << "ERROR: Cannot register Prefs (class qPref), QML will not work!!"; + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "QMLManager"); + if (rc < 0) + qDebug() << "ERROR: Cannot register QMLManager, QML will not work!!"; + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "QMLPrefs"); + if (rc < 0) + qDebug() << "ERROR: Cannot register QMLPrefs, QML will not work!!"; + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "QMLProfile"); + if (rc < 0) + qDebug() << "ERROR: Cannot register QMLProfile, QML will not work!!"; - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "DCDownloadThread"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "DCImportModel"); + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "DCDownloadThread"); + if (rc < 0) + qDebug() << "ERROR: Cannot register DCDownloadThread, QML will not work!!"; + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "DCImportModel"); + if (rc < 0) + qDebug() << "ERROR: Cannot register DCImportModel, QML will not work!!"; - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "MapWidgetHelper"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "MapLocationModel"); - qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "MapLocation"); + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "MapWidgetHelper"); + if (rc < 0) + qDebug() << "ERROR: Cannot register MapWidgetHelper, QML will not work!!"; + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "MapLocationModel"); + if (rc < 0) + qDebug() << "ERROR: Cannot register MapLocationModel, QML will not work!!"; + rc = qmlRegisterType("org.subsurfacedivelog.mobile", 1, 0, "MapLocation"); + if (rc < 0) + qDebug() << "ERROR: Cannot register MapLocation, QML will not work!!"; QQmlApplicationEngine engine; LOG_STP("run_ui qml engine started");