summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Mark QtRemoteObjects as security criticalØystein Heskestad2025-07-0456-0/+56
| | | | | | | | | | | | | | | | | | | | | | The QtRemoteObjects serialization is built on top of QDataStream, but QDataStream is not secure. Mark all files parsing data as security critical. The security is dependent on the backend used. The local and QNX backends communicate only locally but are insecure on a compromised host. The TCP backend is by default insecure, but it supports TLS, and can be secure if that is used. The two files in the repparser directory are used for parsing, but only at build time, and are therefore kept at security significant. The remaining files are marked as security signifcant. QUIP: 23 Task-number: QTBUG-135570 Pick-to: 6.10 6.9 6.8 Change-Id: I11176c036d95f8c706bd05e1cab1ba499003f683 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Use `_qt_internal_set_source_file_generated`Cristian Le2025-06-241-3/+4
| | | | | | | | | Migrate implementations that set `GENERATED` source property Task-number: QTBUG-125077 Pick-to: 6.9 6.10 Change-Id: Ib08053902fb2158eedd97b69e1e7a830b77d2a0e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Doc: Fix broken linkDavid Boddie2025-06-131-1/+1
| | | | | | Pick-to: 6.9 6.10 Change-Id: I7f5b92d4822b895da26ead6c83edc2b99cff761d Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Doc: Fix incorrect class name from SwitchState to SimpleSwitchDheerendra Purohit2025-06-071-1/+1
| | | | | | | | | | | | | Fixes a typo in the Remote Objects static source example where SwitchState was incorrectly used instead of SimpleSwitch. Improves clarity by matching the class name in the documentation with the actual example code. Fixes: QTBUG-113433 Change-Id: Ia638ea40f937162dc25d5ac4d2a6b3b1fe687153 Reviewed-by: Brett Stottlemyer <brett.stottlemyer@gmail.com>
* Doc: Enable automatic linking to sources on code.qt.ioTopi Reinio2025-05-271-0/+3
| | | | | | | | | | | | Since 6.10, QDoc is capable of generating links to the declaration in the source code for each documented C++ API entity in their `Detailed description`. Add the required configuration to enable this feature in Qt Remote Objects. Change-Id: I5169d888445ee7b96fd1e5ec9a05ee774bd8fb60 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Build remoteobjects QML plugin only if remoteobject itself is builtJuha Vuolle2025-05-091-3/+3
| | | | | | | | | | Qt lite configurations may disable 'localserver' feature, in which case the remoteobject library isn't built. In this case the remoteobjectsqml shouldn't be built either. Fixes: QTBUG-136671 Change-Id: If0636df13be2486cf8c842135aa92c6069b77504 Reviewed-by: Brett Stottlemyer <brett.stottlemyer@gmail.com>
* CMake: Prevent creation of private modules without private headersJoerg Bornemann2025-03-121-0/+1
| | | | | | | | | | Add NO_PRIVATE_MODULE to the creation flags of module that don't have any private headers. There's no point in creating private modules for them. Task-number: QTBUG-132526 Change-Id: I38945c6001cfd5460e5bdd531334b8c4b974c2a5 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Expose (private) API for creating QtRO typesBrett Stottlemyer2025-01-076-76/+497
| | | | | | | | | | | | | | | | | | | | | | | | The intent is to better support Python bindings. This adds RepParser to the main source of RemoteObjects, where before the parsing of .rep files into code had been independent of the RemoteObjects source. We need to know about the AST output from the parser to generate the dynamic classes. We add qremoteobjectrepparser_p.h (and a corresponding c++ file) with the APIs to generate QMetaObjects dynamically and register the types we can dynamically. The structs used for dynamic enum/gadget/class types were moved to a new header file so they could be shared with Node's dynamic parsing as well as the newly added API. [ChangeLog] Add external/private interface to support bindings (specifically Python) to generate dynamic classes from .rep files. Pick-to: 6.9 Change-Id: Id5bef60ae7c6e178ed9b2f8391224d05eda54662 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* [minor] Remove dead codeBrett Stottlemyer2024-12-022-3/+0
| | | | | | | | | | | | The enumsToBeAssignedMetaObject parameter in QRemoteObjectMetaObjectManager was originally intended to help with tracking created enums, but the functionality is now handled inside the relevant methods without needing a class member. The asString method in ASTEnumParam is declared, but isn't defined or used. Change-Id: Ica6a95d8c0f3754901f2258cb13359d9bf2bf3b9 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Refactor dynamic (Replica) class creationBrett Stottlemyer2024-12-021-83/+145
| | | | | | | | | | | This does not change behavior, just cleans up the logic. Similar to gadget handling, the construction is broken into creating a structure defining the class metaobject, then passing that to a method to create the QMetaObject dynamically. Change-Id: I6dff892ebd5cb4b10d93218ee21172106476ceb7 Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Refactor dynamic Gadget creationBrett Stottlemyer2024-12-021-31/+71
| | | | | | | | | | | | | | This does not change behavior, just cleans up the logic. There are now two methods for registering gadgets, the first one handles out-of-order types and early return for existing objects. The second method, registerGadget, handles the creation of dynamic enum and gadget types. This adds a handleEnums() method to put enum processing in a single method. This will be used for dynamic QRemoteObjectReplica objects in a future change. Change-Id: Id4ecc97bd1614d7bce55a96521b667bc1c51089c Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Refactor: trackConnection -> trackReferenceBrett Stottlemyer2024-12-021-20/+24
| | | | | | | | | | | | In preperation for allowing the static gadget/enum tracking mechanism to work in more conditions, change naming from Connection to Reference. The reference counting code relies on connecting to the QObject destroyed signal, which is not specific to QtROIoDeviceBase. We can use any QObject derived type with this mechanism. Change-Id: Ia2460547f998b52124cf2f59a029c1b127a246b9 Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Fix external use of RepParserBrett Stottlemyer2024-12-021-1/+7
| | | | | | | | Installation didn't copy a required header file, making it impossible to use the parser without cloning the source. Change-Id: I4103265ddd556442afce49368bcd219e99166a33 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Assert fail in tst_usertypes::complexInQmlTatiana Borisova2024-11-041-2/+6
| | | | | | | | | | | | | | | | | | | | Recently, -force-asserts option was added to CI developer builds with -release, see c5ab2fe4fa189f892b6616b743a77b749b6e2511 In result, following assertion problem becomes noticeable: QFATAL : tst_usertypes::complexInQml(templated nullptr) ASSERT: "connectionToSource" in file ../qt/qtremoteobjects/src/remoteobjects/qremoteobjectreplica.cpp, line 480. It triggered, because we tried to acceess child's replica connection, when it isn't initialized yet. In the code update I check if child's connection is not null, before trying to disconnect it. Pick-to: 6.8 Task-number: QTBUG-130628 Change-Id: I4bc4ec79bcc666126ac3bf22de02106237832f2d Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Doc: Put qt6_ CMake commands in help indexKai Köhne2024-08-271-4/+4
| | | | | | | | | | Using \keyword instead of \target means that IDE's can properly look up these commands in the qch index. Pick-to: 6.7 6.8 Task-number: QTBUG-128368 Change-Id: I41b46d85e4a45ee371b07ab67ea20e4802b61381 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Replace \instantiates with \nativetypePaul Wicking2024-08-201-2/+2
| | | | | | | | | | | Since the implementation of the `\nativetype`-command in QDoc, the `\instantiates`-command is deprecated. Replace the use of the deprecated command in favor of its replacement. Pick-to: 6.8 Task-number: QTBUG-128216 Change-Id: I7fa1dbac4fe8df8db33020dd8d5061352a54908f Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* Docs: Organize topics in the Qt Remote Objects projectAlexei Cazacov2024-08-073-8/+45
| | | | | | | | | | This commit organizes the articles, so they: - have a reasonable tree structure - can be navigated through the topic tree in the Qt Creator help viewer Task-number: QTBUG-127350 Change-Id: I1650d59c26dd9403f4d118c9435c7a3f5fc9e05b Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Remove the use of GENERATE_CPP_EXPORTS argumentAlexey Edelev2024-06-101-1/+0
| | | | | | | | | The behavior that argument was enabling is the default one now. Pick-to: 6.8 Task-number: QTBUG-90492 Change-Id: I5bb9970f8a70e167a8e60b7cebed7e342a014fe8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Correct license for snippet filesLucie Gérard2024-04-042-2/+2
| | | | | | | | | | | | According to QUIP-18 [1], all example and snippet files should be LicenseRef-Qt-Commercial OR BSD-3-Clause [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: I1443b89a271a9ca557276a7c22eaf9e7aa6b40a8 Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Correct license for example and snippet filesLucie Gérard2024-04-041-1/+1
| | | | | | | | | | | | According to QUIP-18 [1], all example and snippet files should be LicenseRef-Qt-Commercial OR BSD-3-Clause [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: I71c88d1ba956d8e2c03ae2a958eece693ded7bf1 Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Use NO_GENERATE_CPP_EXPORTS explicitlyAlexey Edelev2024-03-252-0/+2
| | | | | | | | | | Use NO_GENERATE_CPP_EXPORTS explicitly for modules that don't need the autogenerated exports header file. Task-number: QTBUG-90492 Change-Id: I953ae931c5e8e4a9d4ad30f691b9a73baa9b4875 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix slot return values of container<pod>Marc Hüskens2024-03-131-0/+1
| | | | | | | | Added missing call to decodeVariant before informing replicas Pick-to: 6.7 6.6 6.5 6.2 Change-Id: Ibb83f02fc901390c4ec92de836d9663315ab112c Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Replace #pragma once with traditional header guardsMarc Mutz2024-02-281-1/+4
| | | | | | | | | | | | | | #pragma once was never allowed for installed headers¹ and syncqt.cpp will now start to enforce this, so port the existing users in this module to traditional header guards. ¹ https://lists.qt-project.org/pipermail/development/2022-October/043121.html Amends 0fbfa7affa2aa22d338135d6f52ef3d3d4145766. Pick-to: 6.7 6.6 6.5 6.2 Change-Id: Id38cd34f97946e7f7d5033f431876ea8e8b06978 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix link error creating Python bindings for namespace QtRemoteObjectsFriedemann Kleint2024-01-081-1/+1
| | | | | | | | | | Replace Q_NAMESPACE by Q_NAMESPACE_EXPORT() Pick-to: 6.7 Change-Id: I626b744ece5ba4f492b6d1c4caaf149c9981bfa8 Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QConnectedReplicaImplementation: don't call deleteLater() on a nullptrMarc Mutz2023-12-201-2/+4
| | | | | | | | | | | | | | | | It's undefined behavior according to C++, even if you don't touch members, and only happened to work until qtbase/13074a967f18ed348ab744f7ff831965607a6421 which made it stop "working". Add an explicit nullptr check before calling deleteLater(). Amends 35dd08098f8a4b422d523792261aefe039358f6a(!). Fixes: QTBUG-120242 Pick-to: 6.7 6.6 6.5 6.2 5.15 Change-Id: I9ce95f8c8f917549ccfd0040f0cd4f483c3a28d0 Reviewed-by: Juha Vuolle <juha.vuolle@qt.io>
* QNX QIODevice subclasses: remove Q_DECLARE_TYPEINFOsMarc Mutz2023-12-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QIODevice subclasses are neither copy- nor movable, so they shouldn't be marked as trivially relocatable, either. I have a QtCore change lined up that statically asserts that relocatable types are actually copyable or movable, and this is holding it up. It's a public class, though, so we need to be mindful of SC and BC: For SC, Q_DECLARE_TYPEINFO never really applied. Yes, you can construct situations where a user statically asserted that this type was trivially relocatable, but that's SiC Type A: they just need to remove the assertion. For BC, Qt no longer has types that change layout based on QTypeInfo (hello, Q5List), but user code might, but that's their problem. If existing code used trivial relocatability (memmove instead of move + destroy), it can continue to do so, no change there. New code will not have that optimization, but they're equivalent, as long as relocations happen atomically in one or the other way. Qt doesn't leak which type of relocation is chosen between functions (by passing a bool parameter to a function, e.g.); any use of QTypeInfo is contained within the function that uses it. If users leak it, that's again their problem. But we should document it, so: [ChangeLog][QtRemoteObjects][Potentially Source-Incompatible Changes][QQnxNativeIo/QIOQnxSource] These classes are no longer marked as Q_RELOCATABLE_TYPE. Fixes: QTBUG-119870 Change-Id: I08c082a403433dc571b8c6ab337bdc717919c8b9 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Re-allow names containing ENUM in rep filesMårten Nordheim2023-11-271-3/+7
| | | | | | | | | | | | Expand the test from just looking for the existence of ENUM and instead check that a sequence starts with ENUM and is not followed by a letter. Pick-to: 6.6 6.5 Fixes: QTBUG-117379 Change-Id: Ibf979eff0efee2fd82eac1c5c20a1a8bbc2ef2e6 Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Doc: Fix template information for qRegisterRemoteObjectsServer/ClientLuca Di Sera2023-11-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When QDoc parses a project, it parses the source code to extract the user-provided documentation and perform sanity checkings based on the code itself on it. When QDoc parses an "\fn" command as part of this process, it tries to understand, based on its intermediate representation built on the information extracted from the code-base, which "documentable element" the "\fn" refers to. When QDoc performs this "matching" process, it takes into consideration only a certain amount of information. For example, no checking is performed over the template declaration of a callable. Due to some upcoming documentation, where two callables are indistinguishable to the current process, as they differ only in their template declaration, QDoc will start to take into consideration the template declaration of a callable when matching. This implies that an "\fn" command should now provide information parity, with regards to template declaration for callables, with the code-base so that QDoc can perform the match correctly. The documentation for `qRegisterRemoteObjectsServer` / `qRegisterRemoteObjectssClient` are not in sync with the intended target template declaration. Hence, add the missing information to the relevant "\fn" commands. Task-number: QTBUG-118080 Change-Id: Ia70ad3a0ded11818b298b31d8fab64b62efdd0ce Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Doc: Fix template information for QRemoteObjectNode membersLuca Di Sera2023-11-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When QDoc parses a project, it parses the source code to extract the user-provided documentation and perform sanity checkings based on the code itself on it. When QDoc parses an "\fn" command as part of this process, it tries to understand, based on its intermediate representation built on the information extracted from the code-base, which "documentable element" the "\fn" refers to. When QDoc performs this "matching" process, it takes into consideration only a certain amount of information. For example, no checking is performed over the template declaration of a callable. Due to some upcoming documentation, where two callables are indistinguishable to the current process, as they differ only in their template declaration, QDoc will start to take into consideration the template declaration of a callable when matching. This implies that an "\fn" command should now provide information parity, with regards to template declaration for callables, with the code-base so that QDoc can perform the match correctly. The documentation for some of the members of `QRemoteObjectNode` is not in sync with the intended target template declaration. Hence, add the missing information to the relevant "\fn" commands. Task-number: QTBUG-118080 Change-Id: Ie7420f65980b6a83db107812361b88eebb4212a1 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Highlight Time Server / Client Application examplesKai Köhne2023-11-161-0/+3
| | | | | | | Task-number: QTBUG-117221 Pick-to: 6.5 6.6 Change-Id: I77f96e9753dfacf1f7308da7537807a8a0bc38a6 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Fix a crash due to null QHostAddress in the TCP/IP backendFriedemann Kleint2023-11-101-8/+9
| | | | | | | | | | | When called in boot phases of embedded devices, host name resolution can fail, resulting in an assert/crash. Bail out with a warning instead. Pick-to: 6.6 6.5 6.2 5.15 Fixes: QTBUG-116151 Change-Id: I1d8465bd35ff250d3a4b9dbde53bd6634ae70fc6 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* repc: Add support for #HEADER and #FOOTER linesDominik Holland2023-10-302-1/+28
| | | | | | | | | Those are useful when the generated classes should live inside a namespace. The lines are copied as is and no additional check is done in repc. Change-Id: I95413b953e695a7bc8e95b6653a4ef22ca7c1795 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Add support for class attributes in rep filesDominik Holland2023-10-172-3/+35
| | | | | | | | | This can be used for visibility attributes to export or hide symbols, which is useful when the autogenerated code lives inside a lib. Change-Id: I734f805947dc029929e9e21d79318f4a31be7645 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Document simpleswitch examplesØystein Heskestad2023-10-111-0/+0
| | | | | | | Task-number: QTBUG-112850 Pick-to: 6.6 6.5 Change-Id: I43cc08101153f10c30cd8ffa38649fd8e84ddbd2 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Doc: Fix issues and enable documentation testing in CITopi Reinio2023-10-102-1/+4
| | | | | | | | | | | | | | | examples/remoteobjects/clientapp/doc/src/clientapp.qdoc: Cannot find file to quote from: clientapp/qml/plugins1.qml src/remoteobjects/qremoteobjectnode.cpp: Can't link to 'address' Mark the module free of documentation warnings and enable doc testing in the CI. Change-Id: Ia33991e615e74df54a7cebdfbe0aafe65b0c8cdb Reviewed-by: Safiyyah Moosa <safiyyah.moosa@qt.io> Reviewed-by: Andreas Eliasson <andreas.eliasson@qt.io>
* QtROIoDeviceBasePrivate: fix memleak of the codec objectIvan Solovev2023-09-182-2/+4
| | | | | | | | | | | | As reported by ASAN, there is a memory leak for the QtROIoDeviceBasePrivate::m_codec object. It seems that the codec was created in QRemoteObjectNodePrivate::onClientRead(), but never deleted. Fix it by wrapping the codec into std::unique_ptr. Pick-to: 6.6 6.5 6.2 Change-Id: I49bc9a8031e657cac064551b51bb0b8082865887 Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Øystein Heskestad <oystein.heskestad@qt.io>
* Add a static method setLocalServerOptions to QRemoteObjectHostØystein Heskestad2023-09-117-2/+62
| | | | | | | | | | | | | | | This method must be called before a QRemoteObjectHost object using the QLocalServer backend starts listening for it to have an effect. It starts listening during construction when the address argument is non-empty, otherwise when the address is set via setHostUrl(). Also added another error code QRemoteObjectNode::SocketAccessError for when the QRemoteobjectNode is not allowed to connect to the QRemoteObjectHost. Fixes: QTBUG-72921 Change-Id: I4303b25dbc37d9f4d4eb2bdaeff1ef02089e6b5d Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Mark the whole repo with QT_NO_CONTEXTLESS_CONNECTAhmad Samir2023-08-312-3/+3
| | | | | | | | | | | | | | By adding it to the default build flags via .cmake.conf. This disables the 3-arg QObject::connect() overload: QObject::connect(sender, signal, functor) For details see: https://lists.qt-project.org/pipermail/development/2023-July/044141.html Task-number: QTBUG-116296 Change-Id: I34bd090549ec786734d917c466e1345207c29295 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Doc: Fix typedef description of QRemoteObjectSourceLocation(s)Andreas Eliasson2023-08-281-4/+7
| | | | | | | | | | | | The docs indicate that its properties and members are typedefs for QPair/QHash<QString, QUrl>, when in fact they should be <QString, QRemoteObjectSourceLocationInfo> Fixes: QTBUG-115458 Pick-to: 6.6 6.5 6.4 6.2 5.15 Change-Id: Ic79f7f56be2a12a2c3a89ed1a9e1f9c9f23f6eac Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Doc: Fix description for QRemoteObjectReplica::state()Andreas Eliasson2023-08-231-3/+2
| | | | | | | | | | The current description is a copy of the isInitialized() description. This can't be right. Re-write to something more appropriate. Fixes: QTBUG-114664 Change-Id: Ib736fc52085142aefd56fa8198e67d5265562fa0 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Update snippets to match the simpleswitch examples they are taken fromØystein Heskestad2023-08-161-41/+42
| | | | | | | | | | | This is a clean up of the snippets before the simpleswitch examples are removed. Task-number: QTBUG-112850 Pick-to: 6.5 6.6 Change-Id: Ib58676fe8ad95ce52a108cd3a4d986534e2eb1b5 Reviewed-by: Dennis Oberst <dennis.oberst@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Doc: Remove \ingroup all-examples command from the docsJaishree Vyas2023-07-121-1/+0
| | | | | | | Task-number: QTBUG-115044 Pick-to: 6.5 6.6 Change-Id: I9da3c45fce9da5100b17c5079dc07128c523b7ef Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Revamp WebSockets exampleØystein Heskestad2023-06-061-0/+0
| | | | | | | | | Fix a warning, expand the documentation, and add a picture to it. Task-number: QTBUG-112850 Pick-to: 6.5 6.6 Change-Id: I203392a95bef206fecc2777d060e215d95235296 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Revamp SSL exampleØystein Heskestad2023-06-061-0/+0
| | | | | | | | | | | | The example did not work because the two applications used different rep-files to generate the remote objects. Use the same file in both applications, fix usage of case in naming, expand the documentation, and add a picture. Remove unused PresetData from rep-file. Task-number: QTBUG-112850 Pick-to: 6.5 6.6 Change-Id: Ia7aafc52d647bca9ffec12b8dd548377f20b6ce4 Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* Remove remains of qmake conversion from CMakeLists.txt filesFriedemann Kleint2023-02-221-5/+0
| | | | | | Pick-to: 6.5 Change-Id: I86fb2afcd299e1156846a203161bfb55b936c27a Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Fix connect example in doc sampleCarl Schwan2023-02-213-2/+4
| | | | | | | The timeout signal is from the QTimer class and not SimpleSwitch Change-Id: Idc8034727bc0ab1310f0d62420b7ecb7fc230c48 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* QRemoteObjectMetaObjectManager: fix -Wunused-but-set-variableMarc Mutz2023-01-201-4/+0
| | | | | | | | | | | | | | | | Found by Clang 15: qremoteobjectnode.cpp:1050:9: warning: variable 'curIndex' set but not used [-Wunused-but-set-variable] int curIndex = 0; ^ Remove the variable. Amends 67ac9631dbb26394e6b9981494a0aaf6124284a9. Pick-to: 6.5 6.4 6.2 5.15 Change-Id: I89b31ed525ebd34ba76853b6b634d77022d4635a Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* Remove qlalr warnings when building the moduleBrett Stottlemyer2022-12-311-27/+32
| | | | | | | | | | Building the module's rep parser yields shift/reduce and reduce/reduce conflicts. This commit removes these warnings (altogether 52). Pick-to: 6.2 6.4 6.5 Fixes: QTBUG-104068 Change-Id: I2c988f5e250b73dc4a1f791534f1dc155bbcd20a Reviewed-by: Juha Vuolle <juha.vuolle@insta.fi>
* Fix missing QIODevice disconnect() signal connectionLionel Fafchamps2022-12-121-1/+1
| | | | | | | | | | | | | | | | | The QtROExternalIoDevice fails to register a disconnect() signal from the underlying QIODevice. If the server tries to initiate communication after the client disconnects, it will segfault trying to access the QIODevice. There is a metaObject check for the disconnect() signal before connecting, as disconnect() isn't part of the QIODevice interface. However, metaObject::indexOfSignal is being passed a SIGNAL(disconnect()), which is not the correct format. It should be passed the normalized signature "disconnect()" Pick-to: 5.15 6.2 6.4 Change-Id: I6cc6d51faff49d4106f4126352e1e9e6cf6165a2 Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
* CMake: Use new _qt_internal_get_tool_wrapper_script_pathAlexandru Croitor2022-10-281-5/+12
| | | | | | | | | As a drive-by, remove old usage of QT_TOOL_PATH_SETUP_COMMAND Pick-to: 6.4 Change-Id: I796792a907684db6df77849d2bd4b61ef03b3a15 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>