summaryrefslogtreecommitdiffstats
path: root/src/dbus
Commit message (Collapse)AuthorAgeFilesLines
* QtDBus: Warn if blocking calls take too long.Robin Burchell2014-07-251-0/+87
| | | | | | | | | | | | | | | | | | | | | | | | | Blocking DBus calls have the potential to totally wreck user interactivity at best (actions taking too long) and make things appear completely broken at worst (the default timeout is 30 seconds, which is a huge amount of time, especially if you get unfortunate and have a repeated blocking call). Provide a warning when a call is found that takes too long, based on some preset durations (200ms for the main thread, 500ms for other threads on the basis that the main thread is generally more important). Also provide configuration knobs for these environment variables, in miliseconds: setting them to 0 will warn on all blocking DBus calls. Setting them to -1 (the default, on release builds) will disable the warning. [ChangeLog][QtDBus] Blocking calls that take a long time will now generate a warning. The time taken may be tuned using the environment variables Q_DBUS_BLOCKING_CALL_MAIN_THREAD_WARNING_MS and Q_DBUS_BLOCKING_CALL_OTHER_THREAD_WARNING_MS. The value represents (in milliseconds) how long before a blocking call is warned on. A value below zero disables the warning, a value of zero will warn on all blocking calls. Change-Id: I0ab4c34aa01670a154d794d9f2694b3235e789db Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-07-012-10/+12
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/qnx-x86-qcc/qplatformdefs.h src/corelib/global/qglobal.h src/network/socket/qnativesocketengine_winrt.cpp src/plugins/platforms/android/androidjniaccessibility.cpp src/plugins/platforms/windows/qwindowswindow.cpp Manually adjusted: mkspecs/qnx-armle-v7-qcc/qplatformdefs.h to include 9ce697f2d54be6d94381c72af28dda79cbc027d4 Thanks goes to Sergio for the qnx mkspecs adjustments. Change-Id: I53b1fd6bc5bc884e5ee2c2b84975f58171a1cb8e
| * Merge remote-tracking branch 'origin/stable' into 5.3Frederik Gladhorn2014-06-251-6/+5
| |\ | | | | | | | | | Change-Id: I7462840d15583ead82e86fcf5c84659b909e8c4e
| | * QDBus: fix data race on isDebugging boolDavid Faure2014-06-211-6/+5
| | | | | | | | | | | | | | | Change-Id: Id0b8bf8dac570abfc6c8768bd4264650ae0c199b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Fix data race in accessing QDBusConnectionPrivate::serviceNamesThiago Macieira2014-06-152-4/+7
| |/ | | | | | | | | | | | | | | | | The trick of creating a copy is not thread-safe. I'd known this since the moment I wrote that code, but thought "what could go wrong?". Task-number: QTBUG-39285 Change-Id: If521d4a649c06e6a34926687e85623aa25cb4c35 Reviewed-by: David Faure <david.faure@kdab.com>
* / Use correct signal name when disconnecting "NameOwnerChanged"Jakub Adam2014-06-081-1/+1
|/ | | | | | | | | | A disconnectSignal() call with a wrong signal name caused that hook wasn't found and thus kept in QDBusConnectionPrivate::signalHooks forever. Change-Id: Id7cda225be7580529fc835b377636226abb229f9 Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* doc: Updated Qt D-Bus Examples.Jerome Pasion2014-05-283-2/+49
| | | | | | | | | | -transferred group page from qtdoc repository -added description in example pages -set the example documentation to use the standard Qt thumbnail -added an entry in the help index for the example page Change-Id: I9d5747bc329b5ecc15acd2eb3139696931166c6f Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* CMake: Include the CMakeParseArguments module for dbus macros.Stephen Kelly2014-04-161-0/+1
| | | | | | | | | | | | The cmake_parse_arguments macro is used already in the file. The module happens to already be included via Qt5CoreMacros, so the existing code is not currently a problem. Add the include to comply with 'include what you use' and to ensure that it continues to work even if Qt5CoreMacros is changed in the future. Change-Id: I7369261bce9d0e58488e584ef0743e33e9f9ec9e Reviewed-by: Volker Krause <volker.krause@kdab.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Fix some documentation errors.Friedemann Kleint2014-03-241-1/+6
| | | | | | | | Correct links and fix typos, remove obsolete documentation, fix some snippets, mark some classes as internal. Change-Id: I9a3266605f060783413d32740057a57a820c8929 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Doc: correction link, example and parameter issues qtbaseNico Vertriest2014-03-101-1/+2
| | | | | | | | | | | | | Moved codecs folder to qtbase/examples Corrected quote in dropsite.qdoc Replaced snippet statement by include statement Added doc for undocumented parameters Task-number: QTBUG-34749 Change-Id: If4de95b8d39e5680fd0f63f8d2b6685a4b0a8052 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Always initialize integer types in D-Bus demarshallingThiago Macieira2014-03-061-0/+18
| | | | | | | | | | | | | | | If you tried to demarshall in a write-only QDBusArgument, the class would print a warning, but will continue running nonetheless. So instead just initialize everything, despite the warning. qdbusargument.cpp:1138:30: error: ‘d’ may be used uninitialized in this function [-Werror=maybe-uninitialized] qdbusargument.cpp:1165:33: error: ‘s’ may be used uninitialized in this function [-Werror=maybe-uninitialized] qdbusargument.cpp:1301:15: error: ‘y’ may be used uninitialized in this function [-Werror=maybe-uninitialized] etc. Change-Id: I6d713b4a7b7639e31f3b39bb488ad3ed3ab3fa4a Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Make D-Bus types without a matching Qt one prettier in qdbusThiago Macieira2014-02-221-1/+4
| | | | | | | | Print "QMap<QString,QString>" for "a{ss}" and print a nicer expansion of other types. Change-Id: I0a7a2ecf8f0a62bd97931f3c129cd4cb4f471ef1 Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
* QDBus: replace arg-chain with multi-argMarc Mutz2014-02-141-3/+3
| | | | | | | | | | The arguments are all strings, so multi-arg is available without other changes to the code. Even though insertion of a format placeholder can be ruled out in the present case, multi-arg should be faster than a 3-chain of arg() calls. Change-Id: I8d030227e1bd30c56f1062a0c9dbbaae0143885f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDBus: avoid relocationsMarc Mutz2014-02-141-8/+9
| | | | | | | | Instead of using Q_STRINGTABLE, use a switch/if construct to be able to share the string data for "write" and "readwrite". Change-Id: Ia1c7b8a0f13a809372de2e5a956978dc2d569e92 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-071-14/+19
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qguiapplication.cpp src/plugins/platforms/android/androidjnimain.cpp src/plugins/platforms/android/qandroidplatformintegration.cpp src/plugins/platforms/android/qandroidplatformintegration.h src/plugins/platforms/android/qandroidplatformopenglcontext.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/sql/doc/src/sql-driver.qdoc src/widgets/widgets/qtoolbararealayout.cpp Change-Id: Ifd7e58760c3cb6bd8a7d1dd32ef83b7ec190d41e
| * Also register complex D-Bus types when running under qdbusThiago Macieira2014-01-311-14/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running inside qdbus, we generate the meta objects a little differently. Previously, for unknown types we'd simply have a -1 as the type ID in the meta object, but this doesn't work in Qt 5 (has apparently never worked). So simply register a type with the metatype system and let QMetaObject do its thing. [ChangeLog][qdbus]Fixed a bug that caused the qdbus tool to crash when trying to display remote interfaces that had complex types without a matching base Qt type. Task-number: QTBUG-36524 Change-Id: Ifef65b340dc89d3295ed6ef00f2dcc60849ecb02 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Add method to QDBusServer to allow anonymous client connections.Roland Winklmeier2014-01-155-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds a new method to QDBusServer to allow anonymous connections. This is part of the DBus API and was not yet possible to use with QDBusServer. It is set in the newConnection callback when a new client tries to connect. Anonymous connections are enabled by default in DBus but not allowed by default. [ChangeLog][QtDBus][QDBusServer] Added method to QDBusServer to allow anonymous client connections, even if the connecting client is not authenticated as a user. Change-Id: I984c9e634101ecd2e67bb25c8d12bb1071836fd3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | expand tabs and related whitespace fixes in *.{cpp,h,qdoc}Oswald Buddenhagen2014-01-132-5/+5
| | | | | | | | | | | | | | | | the diff -w for this commit is empty. Started-by: Thiago Macieira <thiago.macieira@intel.com> Change-Id: I77bb84e71c63ce75e0709e5b94bee18e3ce6ab9e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Added PropertiesChanged signal to dbus introspection dataMatt Broadstone2014-01-091-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QtDBus adheres to the org.freedesktop.DBus.Properties interface, however there is no current way to include the PropertiesChanged signal in exposed introspection data. This change adds that signal to the introspection data, whether the adaptor uses the signal or not is up to the user. [ChangeLog][QtDBus][Important Behavior Changes] QtDBus adaptors now include the PropertiesChanged signal in introspection data Change-Id: Iee26528b59b30696689a79fb692f93859b42bb49 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-032-0/+11
|\| | | | | | | Change-Id: Id13badc270db98806048753fd7fb658aa17f1ede
| * Don't leak pending call objects when peer disconnectsRobin Burchell2013-12-302-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | Unlike in regular connection to DBus server, we don't get pending call notifies when a peer drops the connection in peer-to-peer mode. Thus, we need to keep track of pending calls in such cases and get rid of them in ~QDBusConnectionPrivate(). Change-Id: I83e20db0bc7b2ebf509c7fdb1382ffc7d0ede9d3 Done-with: Kalle Vahlman <kalle.vahlman@movial.com> Reviewed-by: Daniele E. Domenichelli <daniele.domenichelli@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix crashes when calling into qdbus interfaces from QMLSimon Hausmann2014-01-022-24/+32
|/ | | | | | | | | | | | | | | | | | | | | The meta-call convention for reading properties differs between Qml and QDBus. QML expects only to provide a pointer to the return value in args[0]. That is also how the metacall was originally introduced in Qt 4. QDBus also expects that the caller allocates a QVariant and provides a pointer to it in a[2], in addition to a[1] being a pointer to an int that is used to report where the return value can be found (in where a[0] points to or the variant in a[1]) - this is useful to report errors when reading the property by clearing the variant. For performance reasons, QML avoids the creation of a QVariant when reading properties. As however QDBus expects it, a crash occurs. This patch changes the QDBus metacall implementation to not rely on the caller to provide a QVariant. Task-number: QTBUG-15052 Change-Id: I2f2c5b3ef2c1d93cc72eee1fa32a95d299a104c0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix quadratic behavior in QMetaObjectBuilder when writing string tableSimon Hausmann2013-12-061-2/+1
| | | | | | | | | | | | | | | QHash::key() is O(n) and we're calling it n times. That can make repeated calls to the meta object builder very slow, as for example QQmlPropertyMap when inserting properties repeatedly. Fortunately this is easy to fix, as the value in the hash map is also the index, so we can simply iterate over the hash once. With the exception of the class name, which we have to treat specially to ensure that it is always the first entry in the string table. Task-number: QTBUG-32720 Change-Id: Ic954c45c454107feee83216131f601cc69d4c63b Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Doc: Adding mark-up to boolean default values.Jerome Pasion2013-10-0815-56/+56
| | | | | | | | | | | | | | | | | Default values should have mark-up to denote that they are code. This commit changes: -"property is true" to "property is \c true". -"Returns true" to "Returns \c true". -"property is false" to "property is \c false". -"returns true" to "returns \c true". -"returns false" to "returns \c false". src/3rdparty and non-documentation instances were ignored. Task-number: QTBUG-33360 Change-Id: Ie87eaa57af947caa1230602b61c5c46292a4cf4e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* qdbusxml2cpp: Fix annotation value in an introspection string generatorMichael Krasnyk2013-09-271-1/+1
| | | | | | | | | | | Unescaped annotation value causes for harmless values in an XML file, for instance, 'value=\"QList&lt;uint&gt;\"' a DBus exception, like dbus.exceptions.IntrospectionParserException: Error parsing introspect data Task-number: QTBUG-26668 Change-Id: Ie1eb519aec5228da0591d62c3aa5b6dec5790eb9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix some doc errors.Frederik Gladhorn2013-09-211-2/+2
| | | | | | | Change-Id: Ib874d7e9671d9cee75fe41f4dac5d0de7b09245e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-09-164-40/+23
|\ | | | | | | | | | | | | Conflicts: src/corelib/tools/qstring.cpp Change-Id: Ifc6cd3a0f1cf14cc0fe6cf30afb0c7f40cfdbc3e
| * QtDBus: fix build on MSVC2008 Debug mode.Nicolás Alvarez2013-09-152-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Normally, searching for a V in a container of T using std::lower_bound only needs an operator<(T,V). But in MSVC2008 debug mode, STL algorithms perform some extra checks, such as ensuring the range passed to std::lower_bound is sorted. This adds a requirement for operator<(T,T) and operator<(V,T). QtDBus didn't compile on MSVC2008+Debug since 1e37d854 (Sept 2012!) because it missed those operator overloads for some private types. Task-number: QTBUG-33473 Change-Id: I18902d86e6c58349eb7ba3601dc383ad5431c460 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix loss of valid dbus objects after unregisterObjectJohn Brooks2013-09-143-40/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Partial revert of 3c6bb0ed8bfc9a2c679f4154585a16e47275ad21 and 57aed703d21c3a360d95fd9f85396d1283d3fdd0. When registering an object that was previously unregistered but not yet garbage collected, the activeChildren count on the parent node was not incremented, which could result in other registered objects disappearing after a later unregisterObject. Copying objects in the tree is not free, but it's not expensive enough or used frequently enough to justify that error-prone logic. It's much safer to simply remove objects immediately. Change-Id: I3dc59c2ebd07b237518424fcd8ea7371a22d6d15 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QMetaMethod and QDBusMetaObject: Give public access to signal methodsCaroline Chao2013-09-091-1/+1
| | | | | | | | | | | | | | To be consistent with signals which are public since Qt5. Change-Id: I633077e37d0851b118c22da0681e8b8b1892ddbb Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Remove qSort usages from QtDBusGiuseppe D'Angelo2013-09-061-1/+1
| | | | | | | | | | | | | | | | QtAlgorithms is getting deprecated, see http://www.mail-archive.com/development@qt-project.org/msg01603.html Change-Id: Ibd471d5dd7cda878d0fb71202468a7ccfa5d5046 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QDbus: Fix (!a == b) comparisonTobias Hunger2013-09-021-1/+1
| | | | | | | | | | | | | | ! binds to a, and that is wrong here. Change-Id: I746d2b82bbd03635b3aa06abb0c5566f84a03128 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-146-61/+76
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-xcode/Info.plist.app mkspecs/macx-xcode/Info.plist.lib qmake/doc/qmake.qdocconf src/corelib/global/qglobal.h tests/auto/other/exceptionsafety/exceptionsafety.pro tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp Change-Id: I3c769a4a82dc2e99a12c69123fbf17613fd2ac2a
| * Revert c3f485c5250a503832e767e1fe5e40595126f6c5Albert Astals Cid2013-08-081-3/+2
| | | | | | | | | | | | | | | | | | | | It has been discovered it changes the behavior of qdbuscpp2xml resulting in builds of some apps breaking. Even if the behavior is more correct, such behavior change in a stable branch is not acceptable Change-Id: I1d79104ebf11c3f48c84f109be2926af96cddae7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Expose invokables that are not slots in the xmlAlbert Astals Cid2013-07-301-2/+3
| | | | | | | | | | | | | | Without it the invocations were working but were not listed on introspection Change-Id: Ie62f7dc3577f52b6888ddebf0392fdf51f2845d5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix crash on qdbus when return type is a raw dbus typeAlbert Astals Cid2013-07-301-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assigning a -1 to type is going to make things crash since it basically means unresolved and when you try to access the string data go to a index that doesn't exist So what I do is save the return type in rawReturnType if it is a raw one and reassign the type to IsUnresolvedType | strings.enter(mm.rawReturnType) instead of -1 when "saving" the metaobject Task-number: QTBUG-32671 Change-Id: I67898dea8a1926eee80c16417e877ef4e22aa06b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Change QDBusPendingCallPrivate to full reference counting for deletion.Peter Seiderer2013-07-294-43/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes race between QDBusConnectionPrivate::processFinishedCall() releasing the mutex before emitting signals (using various members of QDBusPendingCallPrivate) and deletion of the QDBusPendingCallPrivate object through QDBusPendingCall::d's destructor (a member of type QExplicitlySharedDataPointer<QDBusPendingCallPrivate>) leeds to segmentation fault with CrashTest example on slow/single core arm cpu). Task-number: QTBUG-27809 Change-Id: I3590d74d1cfa5816ede764b50b83a7008ec780ff Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Remove QDBusPendingCallPrivate::autoDelete logic.Peter Seiderer2013-07-292-16/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First step to fix race condition about deleting QDBusPendingCallPrivate. In a multithreaded application on a slow/single core cpu the following race (and segmentation fault) can occur: First thread A is running: A: QDBusPendingReply<> reply = pi->asyncCallWithArgumentList(method, argumentList); Then when the dbus answer arrives thread B will call: B: QDBusConnectionPrivate::processFinishedCall() B: ... B: locker.unlock() and runs until here, go on with thread A: A: reply.waitForFinished(); A: QDBusPendingCallPrivate::waitForFinished() A: { A: QMutexLocker locker(&mutex); A: if (replyMessage.type() != QDBusMessage::InvalidMessage) A: return; which returns immediately (mutex acquired, replyMessage alread set), now reply goes out of scope (destructor called) and QDBusPendingCall::d's destructor of type QExplicitlySharedDataPointer<QDBusPendingCallPrivate> deletes the reference counted object QDBusPendingCallPrivate. Now thread B continues, still in processFinishedCall() B: if (call->watcherHelper) B: call->watcherHelper->emitSignals(msg, call->sentMessage); B: B: if (msg.type() == QDBusMessage::ErrorMessage) B: emit connection->callWithCallbackFailed(QDBusError(msg), B: call->sentMessage); accessing alread deleted object QDBusPendingCallPrivate via call->... Fixed QDBusPendingCallPrivate deletion by proper reference counting will be done in the next commit. Task-number: QTBUG-27809 Change-Id: I15b3f0242471b62eaafadc763fb6a33339ff2fe1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix unprotected access to QDBusPendingCallPrivate::pending.Peter Seiderer2013-07-291-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In QDBusConnectionPrivate::waitForFinished() pcall->pending was used after the protection by pcall->mutex was released. A simultaneous call to QDBusConnectionPrivate::processFinishedCall() was able to reset pcall->pending to null before it was used for the q_dbus_pending_call_block(pcall->pending) call. Fixed by releasing (and setting to 0) of pcall->pending in processFinishedCall() only in case no one is waiting yet, otherwise release pcall->pending by the first thread waiting in waitForFinished(). There is still a race condition about deleting QDBusPendingCallPrivate (too early) which will be fixed in the next two commits. Task-number: QTBUG-27809 Change-Id: I040173810ad90653fe1bd1915f22d8dd70d47d8c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Doc: Setting module pages' \qtvariable.Jerome Pasion2013-08-021-0/+1
| | | | | | | | | | | | | | | | | | Argument to \qtvariable is the QT variable needed for linking to the module. Task-number: QTBUG-32172 Change-Id: I181c0cfaf9529f3aea741cdaee0f20d6cd0e2d2f Reviewed-by: Martin Smith <martin.smith@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-232-4/+12
|\| | | | | | | | | | | | | Conflicts: tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp Change-Id: I18a9d83fc14f4a9afdb1e40523ec51e3fa1d7754
| * Changed digia contact details to */legal, updated licensesTeemu Kaukoranta2013-07-201-1/+1
| | | | | | | | | | | | | | | | Scripts are available in internal mkdist repo. Added license tags, updated licenses and copyrights/contacts Change-Id: Ibc734275f3000987eaa4f5c57f19d4e1fda2c479 Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
| * Fix QDBusAbstractInterface::isValid() for peer connectionsAlberto Mardegan2013-07-161-3/+11
| | | | | | | | | | | | | | | | | | | | | | Do not attempt to lookup the service owner on peer connections (it will fail). Make QDBusAbstractInterface::isValid() return a sensible result on peer connections, instead of always returning false. Task-number: QTBUG-32374 Change-Id: I1b02feaffb3b255188f8d63306f89f5034a32f22 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-151-3/+3
|\| | | | | | | Change-Id: I0218a1f08b89f2d56757ab35eec06799d2a1492f
| * Fix disconnectFrom{Peer,Bus} when the connection failedThiago Macieira2013-07-121-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If the connection failed, the DBusConnection object is null, but we still add our QDBusConnectionPrivate to the global hash (maybe we shouldn't). Both disconnectFromXXX functions check that they are disconnecting a connection of the right type, but we never initialized the type if the connection failed. So simply make sure we initialize before handling the error state. Task-number: QTBUG-27973 Change-Id: I96f4825ab1b71adf1b72caf4f72db41742b44a55 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Merge branch 'stable' into devSergio Ahumada2013-07-111-1/+10
|\| | | | | | | | | | | | | | | | | | | Conflicts: qmake/generators/mac/pbuilder_pbx.cpp src/corelib/json/qjsonwriter.cpp src/corelib/kernel/qeventdispatcher_blackberry.cpp src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm Change-Id: I24df576c4cbd18fa51b03122f71e32bb83b9028f
| * Don't crash if the relayed signal was emitted from the wrong threadThiago Macieira2013-07-031-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Under normal circumstances, this should never happen. Signals exported to D-Bus should only be emitted from the object's own thread. That's the only way for the receiver (the QDBusAdaptorConnector object) to know what the sender object and signal were. If they are emitted from another thread, the sender will be null. Task-number: QTBUG-31932 Change-Id: Ia5a45d648985e0645bffd4abc0881fca9da64f79 Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | QDBus: improve error handling, to give the developer feedback.David Faure2013-07-015-24/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | For instance, exporting an object with a slot like QString complexMethod(const MyVariantMap& vars); (even with a simple typedef QVariantMap MyVariantMap) used to silently skip that method in the introspection. Now it outputs: generateInterfaceXml: Skipped method "complexMethod" : Invalid type in parameter list: MyVariantMap Change-Id: I7964cfb63e973257ce1abe47b9625e361b2ad23f Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Doc: Adding navigation configs in the module qdocconf files.Jerome Pasion2013-06-251-1/+4
|/ | | | | | | | -The navigation bar requires the titles of the landing page and relevant pages. Change-Id: I5d5986b2bf74205cd49957b63fd6ac4e32cbb36b Reviewed-by: Martin Smith <martin.smith@digia.com>
* Remove use of 'register' from Qt.Stephen Kelly2013-06-171-4/+4
| | | | | | | | | | It is deprecated and clang is starting to warn about it. Patch mostly generated by clang itself, with some careful grep and sed for the platform-specific parts. Change-Id: I8058e6db0f1b41b33a9e8f17a712739159982450 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>