summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix crash when queueing multiple (de)installations for the same package5.12Robert Griebl2021-04-263-19/+26
| | | | | | | | | | The Package pointer could be long gone, when the Deinstallation task is finally scheduled. Change-Id: I00186572f44ff43a8fcb2de60ef2b427c4b41690 Fixes: AUTOSUITE-1643 Reviewed-by: Dominik Holland <dominik.holland@qt.io> (cherry picked from commit ed9428330b6f43acd2817bcdb44c6f4ca7506d28)
* Correctly handle null values in system- and applicationProperties over DBusRobert Griebl2021-04-263-3/+4
| | | | | | | | Change-Id: Ifc53b751a94f0b13b8b9e34d76b3215ec336d93d Fixes: AUTOSUITE-1641 Reviewed-by: Dominik Holland <dominik.holland@qt.io> (cherry picked from commit ba7ba4cfa25eee93d4d7e76862e434b338b9d90a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Replace deprecated sys_siglist array usageBernd Weimer2020-09-221-0/+4
| | | | | | | | | | | The array has been deprecated and from glibc 2.32 it is not available any more. This patch replaces it with the sigdescr_np function for glibc >= 2.32. Cherry-picked from 5.15: 1726639c Change-Id: Id5d4cfc86555d5863d6e7428c4fdc382b09df406 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix potential crash when a window is releasedBernd Weimer2020-08-031-4/+8
| | | | | | | | | | | | | | | There can be a race condition when a window is released. A crash happens very rarely in the windowitem2 QML test case (~1%), but could be seen more often in more complex code. Because, both window->deleteLater() and isBeingDisplayedChanged are processed asynchronously, the former might run before the latter and hence the window might already be destructed when used in the isBeingDisplayedChanged handler. Cherry-picked from 5.15: 520d102 Change-Id: Iddb687f057666ef3d34feb6472d3ba2171093d91 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix use-after-free on xdg pongJohn Brooks2020-05-072-2/+3
| | | | | | | | | | | | With the xdg shell, ping is not related to a particular surface. WaylandCompositor associates the pong with its original WindowSurface with a map of the serial number to WindowSurface. If the WindowSurface is destroyed before pong arrives, the map will have an invalid pointer leading to a compositor crash. Change-Id: Ide32ac80d42bf8373e8180e12ab89b29e6d00341 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Version bump to 5.12.8v5.12.8_QtASJukka Jokiniva2020-04-151-1/+1
| | | | | | Fixes: AUTOSUITE-1563 Change-Id: I91ffaeab1b6e817203224edc4c1de92f1439c85a Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Improve crash handlerBernd Weimer2020-04-032-18/+28
| | | | | | | | | | | | - Terminate sub-processes with SIGTERM. - Setup alternate signal stack only once and hence allocate the memory only once (there can be only one alternate signal stack) This is an adjusted backport from 5.14: f02cbab and f43d30f Task-number: AUTOSUITE-1454 Change-Id: I1e294d6f81a735be6d77890f09f6d50a80e2b970 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Delay emitting applicationWasActivated signalBernd Weimer2020-03-103-20/+18
| | | | | | | | | | | | The runtime could be in an indistinct state when the signal was emitted. Now it is possible to shutdown the runtime in the signal handler. Also fixed object lifetime in the in-process runtime. Cherry-picked from 5.13: 03471c7 Fixes: AUTOSUITE-1431 Change-Id: I2782f4d91872c1037462bbce171fa432ed43fb6e Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Prevent QML backtrace when engine has been deletedBernd Weimer2020-03-021-1/+2
| | | | | | | Cherry-picked from 5.13: 377b597 Change-Id: I0926e68e411c4285d70144b2db4b6a848b39a784 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix crash in parallel YAML parsingRobert Griebl2020-01-315-16/+244
| | | | | | | | | | | | | QRegExp is not thread-safe, but we are using it in multiple threads when parsing config files on startup. Backported the 5.14 implementation and added docs on why it works now. Also backported and extended the 5.14 autotest. Cherry-picked from 5.13: df2bd93 Change-Id: I09d93b9783c8af4dffe0b3b37efc0754d293c955 Fixes: AUTOSUITE-1410 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Handle SIGTERM gracefullyRobert Griebl2020-01-291-4/+6
| | | | | | | Cherry-picked from 5.13: 3791a22 Change-Id: I5c08b3e266a57fe113d59ad0781a33250ab6f327 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Revise some error handlingBernd Weimer2020-01-212-2/+4
| | | | | | | | | Show critical message, if an application's QML cannot be loaded. Cherry-picked from 5.13: b05e557 Change-Id: Ie1a6f0632861cb17af91c5ead297f1b6512fd3c0 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Update demangle bufferBernd Weimer2020-01-143-8/+13
| | | | | | | | | | | Function __cxa_demangle will reallocate the output buffer, if it is too short. To avoid a potential dangling buffer (pointer), it is always updated. Increased the initial buffer size, as well. Cherry-picked from 5.13: 0c69e08 Change-Id: I11f331e51fa28f940d4843740c0b0137d8d47dc4 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Version bump to 5.12.6Robert Griebl2019-12-031-1/+1
| | | | | Change-Id: I0e15b8b110895a3f14238a4c3e54adf4a537c5c0 Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com>
* Change P2P dbus addressMostafa Emami2019-11-281-1/+2
| | | | | | | | | | | Privatization of /tmp through mount namespaces (tmpfs) and bind mount the P2P sockets per tools with static definition, like systemd, requires a statically known path deeper than simply /tmp Cherry-picked from 5.13: fda6ab9 Change-Id: I422a04753a84c27127ffd8d5e5c7ace5797d46c1 Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com>
* Fix issues in ProcessStatusBernd Weimer2019-11-144-37/+100
| | | | | | | | | | | | - Moved smaps parsing to dedicated thread - Made memory reporting optional - Support CPU loads greater than 1.0 Cherry-picked from 5.13: 7092e70 Task-number: AUTOSUITE-1310 Change-Id: Ib7940911fbeaa92964af26302164d4fa33821daf Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix file name logging outputBernd Weimer2019-10-111-9/+8
| | | | | | | | | Plain source file names (without path) were not printed. Cherry-picked from dev: 8136774 Change-Id: I6330ad851cb35c7bc83356e6d5757bf11f5eb450 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix logging outputBernd Weimer2019-09-191-5/+4
| | | | | | | | | | The messagePattern given in the am-config.yaml is set as env variable QT_MESSAGE_PATTERN. However this might be too late for the System UI (the env variable is evaluated by Qt before it is set by appman), so the pattern will be set explicitly with qSetMessagePattern. Change-Id: Ie8c9858feb600cd2b03ed5d6f77874235e0a05df Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix canceling installationsBernd Weimer2019-09-1219-42/+365
| | | | | | | | | | | | | Canceling an update left the app in an inconsistent state. There is still a known issues: canceling the update of an already updated built-in app will revert back to the original app. This will be fixed in 5.14 Also downgrading a built-in app didn't work as expected (the app would be blocked, the icon etc. wouldn't be updated). Change-Id: I6c72e7f87e993a6839e97ceb6cea443f07e1fd77 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Revert "Add a option to configure the behavior of very long log messages ↵v5.12.4_QtASDominik Holland2019-09-0311-67/+1
| | | | | | | | | | | | | | passed to DLT" This reverts commit 78beb6acca90fb2f2490e2b60d2103a25f1508fe. This change was breaking SC and can't be released with a patch release. The change will be put into the dev branch instead. Task-number: AUTOSUITE-1187 Change-Id: Iff07e290308c2464ab25c5ef17b1749ddfd85723 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Add a option to configure the behavior of very long log messages passed to DLTDominik Holland2019-08-3011-1/+67
| | | | | | | | This uses a new config option in QtGeniviExtras and makes it possible to set this in the am-config.yaml Change-Id: I7e13e9114dd0e281cdd8bf85e517bd5654f49c64 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Add more logging configuration optionsDominik Holland2019-08-3012-9/+83
| | | | | | | | | | | | * Introduce an option to configure the qtMessagePattern in the config.yaml * Add an option to configure whether the AM internal console logging function should be used. Cherry-picked from 5.13: 09f0e58 Change-Id: Ied5b08766072431384c0718529600b767d200bf7 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com> Reviewed-by: Kavindra Palaraja <kpalaraja@luxoft.com>
* Fix missing namespace qualifier in signal argumentRobert Griebl2019-08-302-2/+2
| | | | | Change-Id: I6a9e2004c4eedaf7c136679c7cbf44a7a94d57e5 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Cleanup application lifecycle in single-process modeBernd Weimer2019-08-0810-1/+245
| | | | | | | | | In singel-process mode the ApplicatonObject could still have an associated runtime object, although the runtime had been terminated. This sometimes caused a runtime object to be reused by mistake. Change-Id: Ib4184281a04b7da8f08a848177cf87bace1ce30a Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Bump version to 5.12.4Robert Griebl2019-08-011-1/+1
| | | | | Change-Id: Ib1dfa2b4d80d5bbda9848be9870e4a02c14d7bab Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix app start/stop in single-process modeBernd Weimer2019-08-012-1/+2
| | | | | | | | | | | | | | If an app has been started and immediately stopped again, the next time the app is started the assert would fail, that checks that the app's root object is null. The stop signal would be handled before the InProcessWindow could be created and hence the app's window surface would never be released. The assert is in QmlInProcessRuntime::start(). Cherry-picked from dev: cada823 Change-Id: I0711416a0fa4582bdaaa0a7f9b0c081eb6539c01 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Destroy QDBusServer instance when an application quitsRobert Griebl2019-08-011-1/+1
| | | | | | | | Cherry-picked from dev: 742f39b Change-Id: Id4e38169185e6a99a38294d7c5146efcf5db4716 Task-number: AUTOSUITE-951 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix applications reusing a runtime object that is about to be destructedRobert Griebl2019-08-011-1/+4
| | | | | | | | Cherry-picked from dev: d1ac8c9 Change-Id: I784772e66afe55434297b89669d2555318887dde Task-number: AUTOSUITE-925 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix broken Wayland socket name detectionRobert Griebl2019-08-011-4/+20
| | | | | | | | | | | | The algorithm for finding a free 'qtam-wayland-%d' Wayland socket was modelled after the code in libwayland-server, but due to a mixup between the socket filename and the lock filename it was not working correctly. Cherry-picked from dev: 4d01c85 Change-Id: Iac204c31fd0e6c239e44acefb5d65afe414461a8 Task-number: AUTOSUITE-857 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix crashes when trying to start blocked appsRobert Griebl2019-08-011-4/+14
| | | | | | | | Cherry-picked from dev: 6be19e2 Task-number: AUTOSUITE-1079 Change-Id: I11fb811af92d782815659ce41c50008f9b336a71 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Wait for apps to stop before actually uninstalling themRobert Griebl2019-08-013-2/+23
| | | | | | | | Cherry-picked from dev: f6a895c Change-Id: Iaf4b3da0c622079ccb79886875134af58175bd43 Task-number: AUTOSUITE-1075 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Make sure the app-db is flushed after writingRobert Griebl2019-08-012-0/+4
| | | | | | | | | | | Otherwise we might end up with a 0-byte app db, if the AM gets killed before the OS (notably Windows) has synced the data to disk. Cherry-picked from dev: 071799b Task-number: AUTOSUITE-1096 Change-Id: Ifacf4854ab3f2b454d098a7b503b3922f72f9742 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix possibly crashing qml/simple testsBernd Weimer2019-08-011-4/+4
| | | | | | | Cherry-picked from dev: 6482d3d Change-Id: If5f52f8fcf6f06bb0a4b9820c48b2ae9123f1e90 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Only calculate the hardwareId onceDominik Holland2019-08-011-19/+22
| | | | | | | | | | | | | | | | If no other configuration was chosen appman calculates its hardwareId using the available network interfaces. Instead of iterating and sorting them every time the hardwareId is now saved once calculated. This is also a workaround for QTBUG-76408 on macOS which reports a wrong intereface type on the second run and cause the appman to stop without hardwareId. Cherry-picked from dev: c82f080 Task-number: AUTOSUITE-1019 Change-Id: I521245987486b09fce5c410918d0a35be37b1e10 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* [intents] add intents list to read/write of ApplicationInfo to streamEgor Nemtsev2019-08-011-2/+5
| | | | | | | | | Fixes reading/writing intents into applications db Cherry-picked from dev: 8174e3b Change-Id: Ibfe4354d154aa429462718a565b3340e579f6fa3 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix headless compilationRobert Griebl2019-08-0114-14/+63
| | | | | | | (backported from 5.13) Change-Id: I4eb3fae767066dcfb64f3f6fc126680768a10ecc Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* [docs] Minor fixesKavindra Palaraja2019-03-042-2/+2
| | | | | | | | | * Fixed a broken link * Fixed an incorrect qdoc tag Task-number: AUTOSUITE-778 Change-Id: If40f814b3287671d6da1bb68687727920afd28fc Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* [docs] Review of Qt Application Manager documentationKavindra Palaraja2019-02-273-255/+280
| | | | | | | | | * Simplified the documentation to improve readability * Make sure the terminology is consistent across the component as well as Qt Automotive Suite Task-number: AUTOSUITE-778 Change-Id: I068ce1917741e4278c2fff985f6e61c106e6a8e2 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fix wording in migration guide (again)v5.12.1_QtASRobert Griebl2019-02-151-3/+3
| | | | | Change-Id: Ibc61434865acb657c556c14d75f0ac8189d01fed Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix wording in migration guideRobert Griebl2019-02-151-2/+3
| | | | | Change-Id: Icd918d0c190c0837b090995981994c3c60a0a0b1 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix application states being wrongly initializedRobert Griebl2019-02-144-11/+5
| | | | | Change-Id: Ifc59765697ba1bfe74b60c407986cb26dee421dd Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* The actual doc contents of the previous commitRobert Griebl2019-02-121-60/+55
| | | | | Change-Id: Ide8ca0d223baf73ef9f9f2b75469d9d48d6a471c Reviewed-by: Kavindra Palaraja <kpalaraja@luxoft.com>
* Add documentation for the intents exampleRobert Griebl2019-02-1212-12/+247
| | | | | Change-Id: I474f8bc8d8a3efa7b0f8405892d56a793a88e883 Reviewed-by: Kavindra Palaraja <kpalaraja@luxoft.com>
* Avoid conflicts on Linux desktops by using a non-standard Wayland socketRobert Griebl2019-02-122-4/+19
| | | | | | | | | | | | | | If not specified differently via command line option or $WAYLAND_DISPLAY, the AM would just rely on libwayland to pick a name for its Wayland socket. The problem here is that some desktop environments would see "wayland-0" (the first compositor registered) and think that they are running in Wayland mode and consequentially start client applications on this compositor. The default for the AM is now "qtam-wayland-0". Change-Id: I508ac8fb051735dc64de35ea8dfc44491786c7d7 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* [docs] Cleanups on Qt Application Manager overviewKavindra Palaraja2019-02-122-97/+111
| | | | | Change-Id: Iabddaf81a7e5846a87e73621e91db814b5b12dd8 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Add support for $VERBOSE_TEST in the qml testrunnerRobert Griebl2019-02-113-1/+10
| | | | | Change-Id: I44d5b29a6513aa1a638b9fff8e2acfea21b7ce7d Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix signal emission order on app installationRobert Griebl2019-02-111-4/+6
| | | | | | | | | The ApplicationManager::applicationAdded() signal was emitted before the state had been initialized, so any receiver of this signal was referencing a wrong icon() url. Change-Id: I6ee4a88072c8385af9f8b6ed4459a5da1c524cad Reviewed-by: Bramastyo Harimukti Santoso <bramastyo.harimukti.santoso@pelagicore.com>
* Automatically generate and install appman qmltypesDominik Holland2019-02-041-0/+15
| | | | | | Fixes: AUTOSUITE-713 Change-Id: I83ca69f12c6c8209b657196cd840aa295cb44a9b Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Add support for isSingleton and isCreatable in the qmltypes type informationRobert Griebl2019-02-0416-64/+95
| | | | | | | | | | | | | Extended the AM-QmlType class info to support trailing tags: at the moment SINGLETON and UNCREATABLE are supported. Also added rules to ignore functions and properties starting with '_', since these are considered to be private in the QML world. Improved the error handling/dealing with invalid class infos while at it. Change-Id: Ia68136fe30404e58d808be3a6a04d5f3b9c974c9 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fix implicit ASCII conversion warningRobert Griebl2019-01-311-1/+1
| | | | | Change-Id: Ia245f9996bb9a209fff5174ceebb362f4a5539c8 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>