Thorbjørn Lund Martsum [Sun, 1 Jan 2012 10:24:04 +0000 (11:24 +0100)]
Extending the auto test for QHeaderView
This is a test that verifies correct behaviour of qheaderview.
It includes test of swapSections, moveSection, rowcount-change,
resizeSection, hideSection and position lookup.
Change-Id: Idc1fe8167f2d95dee5c5b1161cb633cbf9495d17
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Thorbjørn Lund Martsum [Thu, 15 Dec 2011 07:11:16 +0000 (08:11 +0100)]
QHeaderView - Do not try to remove non-existing section
The end parameter passed to removeSectionsFromSpans is off by one.
removeSectionsFromSpans can currently handle/ignore it, but it is
still wrong.
Change-Id: I9148bd106504a37a5c8fd72928ab84c669eebcdb
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Torben Dannhauer [Tue, 24 Jan 2012 20:27:36 +0000 (21:27 +0100)]
SQL driver implementation to signal notification sources
Implements the new notification signal in all QSql drivers which use notifcation.
In qt5 only ibase and psql have a notification implementation.
PSQL differentiates correctly between 'SelfSource' and 'OtherSource' whereas
ibase only signals 'UnknownSource' as a default implementation.
Change-Id: Ifcaa139b7a980ed852cf817b3f93284609360ca7
Reviewed-by: Torben Dannhauer <torben@dannhauer.info>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Torben Dannhauer [Tue, 24 Jan 2012 19:55:37 +0000 (20:55 +0100)]
Interface definition to provide notifications with a source information.
To differentiate between signals of different sources types, this submission adds an enum and extra signal to provide it.
Change-Id: Iad711739c41894e9c74d83072c50ae17edc695f2
Reviewed-by: Torben Dannhauer <torben@dannhauer.info>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Stephen Kelly [Tue, 31 Jan 2012 11:17:32 +0000 (12:17 +0100)]
Remove the API duplication from QApplication.
The quitOnLastWindowClosed API is present in the base
class QGuiApplication.
Change-Id: Ib2f78e48a198aa835302dcb9a31637a2c3655532
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: David Faure <faure@kde.org>
Friedemann Kleint [Wed, 1 Feb 2012 09:19:07 +0000 (10:19 +0100)]
Windows: Fix inclusion of <windows.h>
- Always use <qt_windows.h> as the last file to be included.
- Remove it from some headers, use Qt::HANDLE instead of HANDLE.
- Clean up #ifdef, use Q_OS_WIN for Windows/Windows CE.
- Add NOMINMAX to qt_windows.h to avoid problems with the
min/max macros.
- Remove <windows.h> from qplatformdefs.h (VS2005)
Change-Id: Ic44e2cb3eafce38e1ad645c3bf85745439398e50
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Thorbjørn Lund Martsum [Sun, 8 Jan 2012 21:37:01 +0000 (22:37 +0100)]
Adding a QHeaderView benchmark
This is a small QHeaderView benchmark.
It measures visualIndexAt, hideSection, showSecion, moveSection,
insert, remove and trunc rows.
Change-Id: Ibca6a2e130f4ab27d68f51e5e341a78579abd1bf
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Bradley T. Hughes [Wed, 1 Feb 2012 09:45:51 +0000 (10:45 +0100)]
Revert "Put the generated <module>version.h into build tree"
After discussion with Liang, I'm reverting it as he requested. This change put every header into the SYNCQT.HEADER_FILES twice for in-source builds, and the qtMODULEversion.h header did not include a path component.
This reverts commit
2fbc45b58bba860abf67fb28aa1319c9f4ededaf
Change-Id: Ie84cef19193ce5e49072f1f67a41140d9d2673b8
Reviewed-by: Liang Qi <liang.qi@nokia.com>
Friedemann Kleint [Wed, 1 Feb 2012 09:00:06 +0000 (10:00 +0100)]
Accessibility: Use new updateAccessibility() API in widgets.
Change-Id: Id69cc28a54abc675a991f2c657a446f38313ac6e
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Gunnar Sletta [Tue, 31 Jan 2012 08:14:52 +0000 (09:14 +0100)]
Introduced BufferQueueingOpenGL capability in platofrm integration
Change-Id: Iedb7255862fd3a11aceae0e06e90a5539febc7e7
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Kai Koehne [Tue, 17 Jan 2012 15:20:45 +0000 (16:20 +0100)]
QtDebug: Include file, line, function information
Record the file, line, and function where a qDebug, qWarning, qCritical
or qFatal call happens, and make this information available in a custom
message handler.
The patch uses the C preprocessor to replace qDebug, qWarning, ... with
a line that also records the current file, line, and function. Custom
message handlers can access this information via a new QMessageLogContext
argument.
Change-Id: I0a9b89c1d137e41775932d3b1a35da4ebf12d18d
Reviewed-by: David Faure <faure@kde.org>
Morten Johan Sorvig [Tue, 31 Jan 2012 20:06:18 +0000 (21:06 +0100)]
Compile with clang
Add back friend declaration removed in e8105e4.
QListViewPrivate uses QAbstractItemView::
DropIndicatorPosition, which is protected.
Change-Id: Ie9fa9422bf4fb7846637dac24a644d4814cfe622
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Jonas M. Gastal [Thu, 26 Jan 2012 13:28:39 +0000 (11:28 -0200)]
Emit QSslSocket::error in case of openssl gives an error.
Create new QAbstractSocket::SocketError value that denotes a error in
the SSL library: SslInternalError
Create QAbstractSocket::SocketError value that denotes a error in data
provided by user cauding an SSL library error: SslInvalidUserDataError
Change-Id: I466a9389d9d7052efd8eddd1a2d6067ba26dfddb
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
Thorbjørn Lund Martsum [Tue, 10 Jan 2012 18:33:14 +0000 (19:33 +0100)]
QHeaderView - preventing negative section sizes.
This patch removes the posibility to call resizeSection
with negative sizes.
Sections with negative sizes affect the other sections,
and it does not seem to have a useful, well-defined semantic.
The length can also become negative - and visualIndexAt
work strange.
Change-Id: I632beb160649fa10e2106314557b8c5a106aa3cf
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Kalle Juhani Lehtonen [Mon, 23 Jan 2012 07:27:06 +0000 (17:27 +1000)]
Change syncqt default parameters for shadow building
For shadow builds configure creates syncqt script to shadow build
directory tree calling the original syncqt from qtbase source tree.
This wrapped script will add two default parameters when calling
the original script. Both parameters are overridden in
qtbase/mkspecs/features/default_pre.prf and are not needed except by
configure script itself in latter stages where the parameter should be
applied explicitly in shadow build condition branch.
In addition, it adds the qtdir parameter for the forwarded syncqt call to
indicate the location of qt sources for the syncqt. This also will give
correct qmake path for qtmodule-configtests script triggered from syncqt.
Changes are done both for Linux and Windows configure.
Change-Id: I307b2e76c203ee14b849f10ff629f9668da2f223
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Stephen Kelly [Wed, 26 Oct 2011 11:29:51 +0000 (13:29 +0200)]
Add the event loop quitlock feature to QtCore.
A feature of a ref-counted quit (managed by a quit-lock class)
is added to both QEventLoop and QCoreApplication.
This allows, for example, an event loop to quit() when there is
no more work for it to do.
quitOnLastWindowClosed is implemented in terms of the refcount in
QCoreApplication so that jobs can be completed before the
application quits.
Change-Id: I14c8f4e7ee12bbf81a6e5849290d4c8ff37fa110
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Tor Arne Vestbø [Tue, 31 Jan 2012 13:24:03 +0000 (14:24 +0100)]
Don't compile UIC with -O2 inside Scratchbox
It makes QEMU crash when running the resulting binary.
Change-Id: I94e5d703205827dea88770336a8c5201e7333486
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
jian liang [Fri, 27 Jan 2012 13:08:53 +0000 (21:08 +0800)]
add virtual destructor to QWindowSystemInterfacePrivate::WindowSystemEvent
Add a virtual destructor to
QWindowSystemInterfacePrivate::WindowSystemEvent class. Otherwise, in
QWindowSystemInterface::sendWindowSystemEvents() "delete event" can't
destruct the subclass of WindowSystemEvent properly.
Change-Id: Ic708f4ab61de88cd0015aa6e472d356b2de64583
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thorbjørn Lund Martsum [Mon, 19 Dec 2011 18:37:09 +0000 (19:37 +0100)]
QHeaderView - fix to resizeSection patch (Ia812a747)
A minor simple adjustment to the update-patch for resizeSection.
( http://codereview.qt-project.org/#change,11267 )
We can't just return and ignore that we might needed to call
d->doDelayedResizeSections
Just because the header does not have updates enabled does not
mean that the view hasn't updates enabled - and even in
that situation we actually still wanted to keep this.
(It is only if the parent is not visible we safe can/should
skip this - but I will look into that later)
Change-Id: I771de086a07d1e7612a6bfea132d4d15f277ceb3
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Thorbjørn Lund Martsum [Sun, 22 Jan 2012 18:52:58 +0000 (19:52 +0100)]
QHeaderView::setOffsetToSectionPosition documentation update
The documentation has used the word visualIndex for the argument
to this function. That is however very misleading since this
visualIndex is not the same as 'visualIndex' as we have in
visualIndex(int logicalIndex)
logicalIndex(int visualIndex)
or visualIndexAt(int position)
Beside the above a variable name has also been changed from
visualIndex to actualVisualIndex.
Change-Id: I43808adfd7c287a349474ab1e2656c417c8cf3e9
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Jonas M. Gastal [Mon, 30 Jan 2012 13:09:13 +0000 (11:09 -0200)]
QDir::NoDotAndDotDot is now QDir::NoDot|QDir::NoDotDot.
Change-Id: I8ef7782258c2ec02ad2ec2a5d5cab90f53c62aa3
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Simon Hausmann [Tue, 31 Jan 2012 11:28:52 +0000 (12:28 +0100)]
Maliit: Fix enter on VKB not resulting in text input field acceptance
Pressing enter on the VKB should result in the emission of the accepted()
for text input fields in QML or the returnPressed() signal in QLineEdit.
In that case the Maliit input server calls our keyEvent method over DBus,
which this patch implements.
Change-Id: I46170c30315adaf21db0e232f53780ccaa67e4bf
Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Jan Arne Petersen [Mon, 30 Jan 2012 11:42:50 +0000 (12:42 +0100)]
Rename meego to maliit platforminputcontext
Also build the plugin on linux systems with D-Bus. There is nothing
MeeGo or Maemo specific about this plugin or Maliit.
Task-number: QTBUG-22994
Change-Id: Idcccfb01f79166a54c5809741389b29ccac05a15
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Simon Hausmann [Tue, 31 Jan 2012 12:32:22 +0000 (13:32 +0100)]
Add support for cleanup functions for data-constructed QImages
A QImage can be constructed with a provided buffer, that has to be
kept alive for the live-time of the QImage and all its copies.
Frameworks like CoreGraphics or Cairo offer a similar method of
creating image objects and also offer the ability to provide a callback
function that is called when the image is destroyed.
This patch adds this functionality to QImage by extending the
QImage constructors that take a raw image buffer pointer.
Change-Id: Ia6342408c560ef49b498c9e4664b4602febb0fcd
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Michalina Ziemba <michalina.ziemba@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
João Abecasis [Wed, 25 Jan 2012 16:40:24 +0000 (17:40 +0100)]
Allow function types to be registered without workarounds
Commit
4b8ceb41aed352f10d36db5284453f425dbc5f3f added the requirement
that pointed-to types need to be registered when registering pointer
types. Unfortunately, the implementation also affects function pointer
types.
This change whitelists 0, 1, 2 and 3 argument functions as not deriving
from QObject, forgoing the need to workaround details of the type
registration implementation when registering those function pointer
types.
Change-Id: I4d855e9d70a8179a6e31b84623ad5bf063e0d6d8
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Lars Knoll [Tue, 24 Jan 2012 21:26:31 +0000 (22:26 +0100)]
Remove many deprecated methods
Remove methods that have been marked as deprecated
before Qt 4.6. Keep others, but inline them
where possible and mark them as QT_DEPRECATED_SINCE(5, 0).
Change-Id: If881821ae095f054b31cc13464f19e2007c20ed7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Joerg Bornemann [Tue, 31 Jan 2012 11:10:45 +0000 (12:10 +0100)]
MinGW build fixes for QWindowsPipeReader and friends
Change-Id: Ie4d6017c6fb918e7796d1a5e8863e9368e4e1894
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Kai Koehne [Mon, 30 Jan 2012 10:26:27 +0000 (11:26 +0100)]
Windows: Fix compilation with -qtnamespace
Change-Id: Ib006d74299d65e5872a5a524eaa937e127306ec7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Kai Koehne [Mon, 30 Jan 2012 08:52:51 +0000 (09:52 +0100)]
Mac: Fix compilation with -qtnamespace set
Change-Id: Id3b9f4e3edf2caeac32c8a44278cdf05a1fc70fb
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Rafael Roquetto [Tue, 24 Jan 2012 17:14:07 +0000 (18:14 +0100)]
mkdtemp() support for QNX platform
Change-Id: I30feebbbcdbe065e899a048da20ac887d4d48a4f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: David Faure <david.faure@kdab.com>
aavit [Wed, 25 Jan 2012 15:04:51 +0000 (16:04 +0100)]
Moving tiff image format support and libtiff out of qtbase
The tiff plugin and bundled libtiff is moving to the qtimageformats
project on Gerrit.
Task-number: QTBUG-23887
Change-Id: I4c848232fdccddd7e7f54215f9eaa78dc4c3a53d
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Frederik Gladhorn [Wed, 11 Jan 2012 15:31:35 +0000 (16:31 +0100)]
Use events for accessibility updates.
The problem with the old updates is that it was impossible
to send details about the update.
For the Linux implementation to work properly with AT-SPI I need to know
which state changed (currently I only get a generic "state changed" event)
or which part of the text was changed for long texts (imagine a word processor sending updates).
This also gives us more options when updating with events generated from not QObject based objects.
Change-Id: If0b6c83c523092565eb48e79f3f6de5a1b905ea8
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Chris Adams [Mon, 30 Jan 2012 01:04:07 +0000 (11:04 +1000)]
Add public role names setter to QStandardItemModel
This allows QStandardItemModel to be usable in QML without requiring
clients to subclass it.
Task-number: QTBUG-15067
Change-Id: I867fcd8137132affdf21f37a9fa293e855a09a13
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Lars Knoll [Wed, 25 Jan 2012 11:13:26 +0000 (12:13 +0100)]
QDirectPainter is gone in Qt5
Change-Id: I3ba8985c9c38be978198a4abd58775aa6f525968
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Andreas Hartmetz [Mon, 30 Jan 2012 21:06:51 +0000 (22:06 +0100)]
Escape path names in qmake-generated Makefiles.
qmake-generated Makefiles since 4.6 (according to bug report) contain
recursive qmake invocations with absolute paths to .pro files, where the
absolute paths are not escaped.
Task-number: QTBUG-11776
Change-Id: I49772c7d9147efea3bb7b9623c61d92aa0bb6857
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Jonas M. Gastal [Mon, 30 Jan 2012 15:02:25 +0000 (13:02 -0200)]
Removing bad ###Qt5 note.
Implementating this would cause massive SC breakage and give little
gain.
Change-Id: I56a6d302fdd0e8b53d1f9154f3eaf9e1ee429f9d
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
Xizhi Zhu [Mon, 23 Jan 2012 20:25:30 +0000 (21:25 +0100)]
Remove Symbian specific code from qtbase.
Change-Id: I27d37d914b71e1e43c94e2a975ffec49e1ecd456
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Xizhi Zhu [Mon, 23 Jan 2012 19:13:54 +0000 (20:13 +0100)]
Remove Symbian specific code from QtGui.
Change-Id: I450a78863462936d0b18e211763f274b59497109
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Anselmo L. S. Melo [Fri, 27 Jan 2012 10:49:34 +0000 (07:49 -0300)]
Fix QGuiApplication::topLevelWindows(), introducing allWindows()
As discussed on the development mailing list, the window list returned
by QGuiApplication::topLevellWindows() included all QWindows, even the
non top-level ones.
This commit introduces the new method allWindows(), which returns the list
of all QWindows, fixes the list returned by topLevelWindows() and also
introduces tests for both methods.
Change-Id: I761f0fcdec79f83949012c628655ed12cd18572c
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Xizhi Zhu [Mon, 23 Jan 2012 18:37:27 +0000 (19:37 +0100)]
Remove Symbian and Maemo 5 code from QtWidgets.
Change-Id: I715c0ec70cbad05a6ba9737e49be9da7cbd65bf9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
John Layt [Mon, 23 Jan 2012 22:34:09 +0000 (22:34 +0000)]
QValidator: Don't fallback to C Locale when validating input
QIntValidator and QDoubleValidator used to accept C formatted input if
the input wasn't valid in the default locale. This change removes this,
only the default locale is now used.
Change-Id: I8b2d8f9f3849abe3fcb5c12083aae542a76eaf90
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
jian liang [Fri, 27 Jan 2012 09:07:18 +0000 (17:07 +0800)]
fix memory leak in QGuiApplicationPrivate
delete app_font object in QGuiApplicationPrivate's destructor
Change-Id: Iad0c5a69e03477f6c93fcf76c58bac001cbdffb8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Lars Knoll [Wed, 25 Jan 2012 12:58:17 +0000 (13:58 +0100)]
Remove QIconEngineV2 and fold it into QIconEngine
Change-Id: Ife590b7639f4aadcfbd4d77ca170285b623c14ae
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Kai Koehne [Mon, 30 Jan 2012 11:12:38 +0000 (12:12 +0100)]
Windows: Fix autotests with -qtnamespace
Change-Id: If367429dafc283b3b2d57dab593060055f65659d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Uli Schlachter [Sat, 28 Jan 2012 21:35:15 +0000 (22:35 +0100)]
xcb: Check for SHM extension before using it
If we call any xcb_shm_*() function, libxcb will have to figure out
SHM's major number. However, if that fails because the SHM extension is
not available, xcb will disconnect from the server. Obviously, that's
not what we want and must be avoided.
Change-Id: I8eba5ff9e84e0e2017a5c0d88fda4efd0459bd1e
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Uli Schlachter [Sat, 28 Jan 2012 21:47:30 +0000 (22:47 +0100)]
xcb: Check for SYNC extension before using it
If we call any xcb_sync_*() function, libxcb will have to figure out
SYNC's major number. However, if that fails because the SYNC extension
is not available, xcb will disconnect from the server. Obviously,
that's not what we want and must be avoided.
Change-Id: I9a1032e1cfac074a52bafcb0772304bfd423e770
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Mark Brand [Fri, 13 Jan 2012 16:05:34 +0000 (17:05 +0100)]
tst_qabstractitemmodel does not need QT += widgets
Change-Id: I6f615f849f77df19129efb82acaae387b17a787b
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Kurt Korbatits [Wed, 25 Jan 2012 01:29:16 +0000 (11:29 +1000)]
Changed qapplication unittest to work from installation directory
- Changed to use TESTDATA and installTestHelperApp()
- Changed to use QFINDTESTDATA instead of currentPath()
Change-Id: Ia24ebc758d5d0fdfcca951500766adefbcf9fe93
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Kurt Korbatits [Tue, 24 Jan 2012 23:40:10 +0000 (09:40 +1000)]
Changed qlibrary unittest to use applicationDirPath()
- Changed unittest to use QCoreApplication::applicationDirPath()
instead of QDir::currentPath().
Change-Id: I398f7ea8b4426be85432d0eb3767ef6d59488d0a
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Lars Knoll [Wed, 25 Jan 2012 11:17:56 +0000 (12:17 +0100)]
Remove non existant features from qfeature.h
This doesn't clean it all up, but at least removes
things that are clearly gone from Qt. We still
have way too many individual feature switches.
Change-Id: I7926ee8cf72567a86257f1e7b0d852f11ff5f4bb
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Kurt Korbatits [Mon, 23 Jan 2012 00:35:19 +0000 (10:35 +1000)]
Changed debug output to option in qminimalbackingstore.
- Added QT_DEBUG_BACKINGSTORE environment variable to enable
debug output. Defaulting to no output if not set.
Change-Id: Id9c369031f946d77605321c8b28ab3378da8fbf9
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Robin Burchell [Fri, 27 Jan 2012 12:41:24 +0000 (14:41 +0200)]
Revert "Revert "Blow up earlier when adding test rows without columns.""
The problem in qmltest has now been fixed by adding a dummy column, so this
should be good to re-add. See qtdeclarative change id
I1bfed663fa7b58d71e0cf898db6bd8ae61dae46b.
This reverts commit
963958b4f62513cbc76fb06920de80f7f906f523.
Task-number: QTBUG-23845
Change-Id: I4b6755d3ea97a4624480cc008d280fc8e33743a6
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Holger Hans Peter Freyther [Mon, 23 Jan 2012 12:49:35 +0000 (13:49 +0100)]
directfb: Use QPlatformPixmap::fromFile for Qt resources
Move to fromFile to load Qt resources for two reasons. The
first is that ::fromData creates a QBuffer on our raw data
and is passing that to the QImageReaders. Right now we there
is a QFile -> QByteArray -> QBuffer transition that wastes
cycles. The other reason is that QPlatformPixmap::fromData
did/does not check if the decoded image is null and might
cause a crash because of that.
Change-Id: I7cb92d84874323e7205ab28883cc0fe9ecca1e27
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Jason McDonald [Mon, 30 Jan 2012 07:27:40 +0000 (17:27 +1000)]
Update contact address in license headers.
Change-Id: I35bf916087511f26bfeb49ceb3256d9a20fbc1c0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Kurt Korbatits [Thu, 26 Jan 2012 22:26:11 +0000 (08:26 +1000)]
Fixed qstandardpaths unittest to check before using first()
- Added check to testLocateAll() to check count() before calling
first().
Change-Id: I04e93c1f913972b26c517f2bbd08760f9898cc7a
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Kurt Korbatits [Fri, 27 Jan 2012 02:52:41 +0000 (12:52 +1000)]
Changed qsplitter unittest to work from install directory
- Changed qsplitter unittest to use TESTDATA and QFINDTESTDATA
Change-Id: I5db0fbfb20e6bd0ec169e884f16c1ec819f4e449
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Kurt Korbatits [Thu, 26 Jan 2012 23:33:33 +0000 (09:33 +1000)]
Fixed qicon unittest to use QFINDTESTDATA
- Two cases of image.png not being found when run from install directory
Change-Id: I5f20b7a0ea0b120ce06c556b83bc20dd658a4f83
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Kurt Korbatits [Thu, 26 Jan 2012 23:27:20 +0000 (09:27 +1000)]
Fixed qmovie unittest to use QFINDTESTDATA in jumpToFrame()
- jumpToFrame() updated to use QFINDTESTDATA
Change-Id: I1b5ff92722e389e714eb58b37996f3e933e95489
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
John Layt [Sun, 17 Jul 2011 18:30:12 +0000 (19:30 +0100)]
QDateTime: Add validity checks
Check the validity of date/time before attempting to perform maths.
Change-Id: Ia6a2caf07c6c36f7d7fac713a77bc4eb456c6ed6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
John Layt [Thu, 19 Jan 2012 00:19:45 +0000 (00:19 +0000)]
QDateTime: Add missing QDate Unit Tests
Change-Id: Idcc93cdc29739f0108b5629402b6b7a4b2c86657
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
John Layt [Mon, 16 Jan 2012 20:20:39 +0000 (20:20 +0000)]
QDateTime: Deprecate setYMD()
Change-Id: I077332df554fb750666d51486c97724411276679
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Lars Knoll [Sun, 29 Jan 2012 18:53:30 +0000 (19:53 +0100)]
Fix bugs when using a non 0 terminated QLatin1String
A few methods in QString still assumed that QLatin1String
is always 0 terminated. Change this to rely on the size
provided by QLatin1String instead.
Change-Id: I9145a46e52ed8811f3b4e3d72d8a81a12588760a
Reviewed-by: Kevin Simons <kevin.simons@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Shane Kearns [Mon, 30 Jan 2012 15:50:38 +0000 (15:50 +0000)]
Fix debug format string in windows socket engine
%l has no meaning, should be %li according to the arguments.
Change-Id: Ife9ec524109e021ad723865445e80b6bad51a5c6
Reviewed-by: Richard J. Moore <rich@kde.org>
Shane Kearns [Mon, 30 Jan 2012 14:35:12 +0000 (14:35 +0000)]
Fix crashing debug message
The debug message could derefence a null pointer, this crashed when
running ssl autotests
Change-Id: I176aaa9f3cf3c6cc1512cdc34db06d4c79f92e73
Reviewed-by: Richard J. Moore <rich@kde.org>
Shane Kearns [Mon, 30 Jan 2012 14:14:04 +0000 (14:14 +0000)]
Fix tst_QSslCertificate::toText on windows
Open the comparison file as text mode, so that it does not differ from
the dumped certificate in CRLF vs LF line endings.
Change-Id: I54d6ea6e37044059e89e762435657ebf5fa6cb39
Reviewed-by: Richard J. Moore <rich@kde.org>
Shane Kearns [Fri, 27 Jan 2012 16:49:00 +0000 (16:49 +0000)]
Fix link error in QSslSocket auto test
This has been broken for months, but invisible because the code causing
the link error is unreachable (due to QSKIP). So the link error only
occurs in debug builds with -O0.
Change-Id: I6093a7803bedf37bfc8c2d9ff0b28b2309b57959
Reviewed-by: Richard J. Moore <rich@kde.org>
Lars Knoll [Mon, 30 Jan 2012 13:37:36 +0000 (14:37 +0100)]
Add a null pointer check to QJsonObject::toVariantMap
If the object is null, simply return an empty variant map.
Added another test case checking conversion from QJsonArray
to a QVariantList.
Change-Id: Ieccd163e76630f7db7f41255acd9d1baf66bb38d
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Kevin Simons <kevin.simons@nokia.com>
Lars Knoll [Thu, 26 Jan 2012 11:12:44 +0000 (12:12 +0100)]
Add the missing test file and give it a proper name.
Change-Id: Icb9bc2aab99d52b5ffbd6153ce94d64a494330d8
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Xizhi Zhu [Mon, 23 Jan 2012 20:21:40 +0000 (21:21 +0100)]
Remove Symbian specific code from QtCore.
Change-Id: I131303e28a12dccb96de3de4ca0073b389a9bbae
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Xizhi Zhu [Mon, 23 Jan 2012 18:03:09 +0000 (19:03 +0100)]
Remove Symbian specific code in platformsupport.
Change-Id: I5f06f80ae47b2c9fcd93832c23a453a9193e6120
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Xizhi Zhu [Mon, 23 Jan 2012 18:02:06 +0000 (19:02 +0100)]
Remove reference to Symbian in printsupport.
Change-Id: I63b3559cd9ec620d76a177f57096dd8d38ef834c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Xizhi Zhu [Mon, 23 Jan 2012 17:33:22 +0000 (18:33 +0100)]
Remove Symbian code from tools.
Change-Id: Id9d7b2b4f6bc8b558f92bc09b7956c49e5a3752a
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kent Hansen [Fri, 27 Jan 2012 13:28:20 +0000 (14:28 +0100)]
Remove type id/name conversion for QVariant::UserType
QVariant::UserType does not correspond to an actual type named
"UserType". This logic didn't make sense.
Change-Id: I369911e514f7902fc863cb05174011d6fc15c447
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Jason McDonald [Mon, 16 Jan 2012 05:32:14 +0000 (15:32 +1000)]
Remove pass/fail/skip count getters from QTestResult.
These functions are no longer used, as the counters have been moved to
QTestLog.
Change-Id: I7cd13fc92a18920706fcc712804c304f9c333969
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Jason McDonald [Tue, 24 Jan 2012 07:03:14 +0000 (17:03 +1000)]
Avoid non-standard indentation of license headers.
The strange indentation has made maintenance of license headers
difficult on several occasions.
Change-Id: Ib29a7e5275e2c7a2c13a3f32fd2479f34d3353ca
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Friedemann Kleint [Fri, 27 Jan 2012 13:09:36 +0000 (14:09 +0100)]
Add native event filters to Windows, forward to Widgets.
Use prototypically for qwizard_win.cpp.
Change-Id: I075e81ae1bc3d62d9f27e51c73c800ffd71cbcd6
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Richard Moore [Sat, 28 Jan 2012 13:41:20 +0000 (13:41 +0000)]
Make the pause modes a QFlags.
The intention is to add additional pause modes over time, this will
be easier if we can just test if a particular reason for pausing is
turned on. If we don't do this we'll end up having to check for each
enum value every time we check what is enabled.
Change-Id: I6b08f0e819b5593e3f6463c3dd175eff8625e155
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
Jeremy Lainé [Mon, 23 Jan 2012 17:25:39 +0000 (18:25 +0100)]
Add support for DNS lookups using native APIs
The QDnsLookup class provides asynchronous APIs for performing
DNS lookups. For now, the following lookups are supported:
- A and AAAA
- CNAME as defined per RFC 1035
- MX as defined per RFC 1035
- NS as defined per RFC 1035
- PTR as defined per RFC 1035
- SRV as defined per RFC 2782
- TXT as defined per RFC 1035
Task-number: QTBUG-10481
Change-Id: I46c1741ec23615863eeca3a1231d5e3f8942495e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Fri, 27 Jan 2012 02:33:13 +0000 (03:33 +0100)]
Change the type key for delegate editors to int.
Previous type of QVariant::Type does not allow for custom types.
While technically source incompatible I found no re-implementation
of this class in qttools or qt-creator (most likely to use it for
property editors). The virtual methods are not needed because
registerEditor is all the API that is really needed.
Task-number: QTBUG-1065
Change-Id: I2a9c578c444a80359416f2224a0ee03903bfe779
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Stephen Kelly [Tue, 24 Jan 2012 16:29:20 +0000 (17:29 +0100)]
Add the QAbstractItemModel::canDropMimeData method.
Can be used by views to indicate whether a drop is allowed (eg
adequete permissions in a filesystem model).
Change-Id: Iefedb5399e44c8edc5f5df1403c8d5c0da618612
Reviewed-by: Peter Penz <peter.penz19@gmail.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Gunnar Sletta [Thu, 26 Jan 2012 10:15:02 +0000 (11:15 +0100)]
Don't crash when source or target is null
Change-Id: I4992867ad764bd1bd175478c6be1094ca8a72812
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
David Faure [Sun, 29 Jan 2012 18:15:04 +0000 (19:15 +0100)]
Fix compilation of Qt apps with -Wshadow -Werror
qstring.h:648:70: error: declaration of ‘size’ shadows a member of 'this'
Change-Id: I96d2a5b1201b53b11d23bf194b89fa8967b9e25d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Oswald Buddenhagen [Thu, 26 Jan 2012 18:50:15 +0000 (19:50 +0100)]
fix bash-ism
Change-Id: Ibc560b2cc57e30f3f966bb939b356d6eb0762ec8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Oswald Buddenhagen [Thu, 26 Jan 2012 17:43:06 +0000 (18:43 +0100)]
Remove dead code from the configures
This removes the options to disable several modules, as they are in
separate repositories now and can be "disabled" by simply not compiling
them.
Note that this leaves some configuration options for these separate
modules in, as they have no own configures. This is ugly, but has to
stay that way for the time being.
Some other dead code had to go as well, just like accepting the obsolete
-qdbus option.
Change-Id: Ibb26e4f48ca8239c2c4396e4abefab4c87322be2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Jonas Gastal [Sat, 28 Jan 2012 19:01:40 +0000 (17:01 -0200)]
Removing Qt5 note that would break SC.
This would be a silent behaviour change and is not particularly needed.
Change-Id: Iee1e48408e605d671dfe0402880df3c93a14a8c7
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Pierre Rossi [Wed, 16 Nov 2011 15:48:40 +0000 (16:48 +0100)]
Prettify the plastique style's slider thumb.
the bottom corners shouldn't be filled.
Change-Id: I8be1c7a712225fe101b775ea04a8c2fc29e4e9da
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Jens Bache-Wiig
Thorbjørn Lund Martsum [Wed, 18 Jan 2012 14:34:06 +0000 (15:34 +0100)]
QHeaderView - length returns wrong value fix
setSectionHidden called with (logindex, true) will
sometimes prevent a (correct) call to
resizeSection(logicalIndex, 0).
This seems a bit odd - however it does execute
d->doDelayedResizeSections().
Therefore the section is going to be hidden later.
However it is a problem that the length meanwhile is wrong.
(That is a value that is not the sum of the sections)
This is fixed by execute updates before returning the
length.
Task-number: QTBUG-14242
Change-Id: Ia1d2f6db3213792b250a6a37942b56554261cd3a
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Jason McDonald [Tue, 24 Jan 2012 06:17:24 +0000 (16:17 +1000)]
Remove "All rights reserved" line from license headers.
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.
Change-Id: I311e001373776812699d6efc045b5f742890c689
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Jason McDonald [Fri, 13 Jan 2012 03:26:04 +0000 (13:26 +1000)]
Eliminate QTestResult::ignoreMessage().
The removed function was just a wrapper around QTestLog::ignoreMessage()
and was only called twice (once in qtestcase.cpp and once in
qtdeclarative). Better to just call the desired function directly and
avoid the indirection.
Change-Id: Ib900f35f5d584e8f323cef9b0e7b4f8a507c199e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Jędrzej Nowacki [Fri, 27 Jan 2012 12:22:36 +0000 (13:22 +0100)]
Get rid of QColorGroup from QVariant.
The type was removed long time ago. It has type id 63 which currently
is unbound, but potentially can be reused in future.
Change-Id: I099997c9bae93ce52ba8c46275d6267c25dee4ca
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Shane Kearns [Tue, 17 Jan 2012 19:51:39 +0000 (19:51 +0000)]
Fix BC break with QAbstractFileEngine "mount points"
File system cached metadata can't be trusted when custom file engines
are in use, because the custom file engine may want to override the
metadata. (e.g. present an archive file as a directory)
Therefore, check if a file engine should be instantiated for each
result in QDirIterator. This is a fast check if no custom file engines
are registered.
When pushing a directory (using QDirIterator::SubDirectories) the
file engine needs to be instantiated also.
Task-number: QTBUG-23688
Task-number: ou1cimx1#965023
Change-Id: I0114c8df6258535553783a2486131c4194926649
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
(cherry picked from
3864ad09d578210b52e5f58fca2ee8a1144f5be2)
Jędrzej Nowacki [Thu, 26 Jan 2012 11:20:06 +0000 (12:20 +0100)]
Fix compilation warnings on MSVC.
Q_STATIC_ASSERT as condition should accept anything cast-able to "bool".
Change-Id: Id76992080f9bb84d3a16b80adffc656d52eca91d
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Jędrzej Nowacki [Tue, 24 Jan 2012 14:42:01 +0000 (15:42 +0100)]
Introduce QTypeInfo::sizeOf.
In QMetaType "void" is a regular type, lack of c++ sizeof operator
force us to write a template specialization for the type.
Change-Id: I9a56e135223b416b8031836d29ef33ef3fb750e4
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Jędrzej Nowacki [Mon, 23 Jan 2012 15:34:50 +0000 (16:34 +0100)]
Fix null pointer call in QMetaType::destruct().
Logic has a flow causing null pointer call during destruction of an
instance of a custom type in bootstrap mode.
The patch doesn't include autotests, because we do not test bootstrap
mode.
Change-Id: Ie70c6f4226cb604f094513621d96a560e84502d7
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Jan Arne Petersen [Fri, 27 Jan 2012 12:07:48 +0000 (13:07 +0100)]
Use per session socket to connect to maliit server
In newer versions of maliit a per session abstract socket for
communication between maliit server and input contexts is used. The
address is published over the D-Bus session bus as address property in
the org.maliit.Server.Address interface of the
/org/maliit/server/address object at the org.maliit.server service.
Fallback to old socket when org.maliit.server service is not available.
Task-number: QTBUG-22982
Change-Id: I1b2cdd0c804d3d625e18b4958dd60008ea289d91
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Kent Hansen [Fri, 27 Jan 2012 13:04:12 +0000 (14:04 +0100)]
Get rid of checks for Qt3 types
These types don't exist anymore, so it's pointless to check for them.
Also remove the dead types from uic's type-to-header map.
Change-Id: I7f0af5c337859f3da1c103157a802bbe5372df9f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Olivier Goffart [Thu, 15 Dec 2011 05:57:17 +0000 (06:57 +0100)]
Call connectNotify when connecting with function pointer
Some objects expect connectNotify to be called in order the signal to be
emitted.
Change-Id: Id0460d9c2aef8f9c3618a2b62b2119a790e06f30
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Sun, 31 Jul 2011 22:33:54 +0000 (19:33 -0300)]
Add a set of atomics based on C++11's std::atomic
The C++11 std::atomic type is very close to our API, to the point one
has to wonder if the committe was inspired by it. It provides all of
the memory semantics that Qt requires and more, plus some
compare-and-swap operations that we don't use.
The idea of returning the actual value in the event of a failed
compare-and-swap is actually quite good, as often we'll retry with
it. We just couldn't come up with a good name (fetchAndTestAndSet?).
The C++11 atomics require that the compiler support constexpr as well,
since std::atomic itself isn't required by the standard to be
trivially-constructible (in fact, it has a constexpr constructor in
the standard). For that reason, we need constexpr so we can add a
constructor to QBasicAtomic too.
Change-Id: I12c51455ba73350a6f7501aacc2ca7681c4369dd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Thiago Macieira [Sun, 31 Jul 2011 22:22:18 +0000 (19:22 -0300)]
Add a set of atomics based on GCC intrinsics
With this implementation, we can have Qt run on any architecture that
GCC supports without having to write specialised code. However, on
some architectures, the code that GCC generates is not optimal: it
uses locking on ARMv5 and it's always fully-ordered. For that reason,
it appears after the Qt native assembly implementations (it's a
fallback, not an override).
Since they all have fully-ordered memory semantics, we define only the
xxxRelaxed functions. The exception is __sync_lock_and_test, which has
acquire semantics, so we need to define the Release and Ordered
versions too.
On some architectures, GCC can support atomics on types different than
32-bit and pointer-sized (like x86, x86-64, ARM and even
MIPS). However, there's no standardised way of telling: GCC seems to
define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4,8} if those operations
are present, but I couldn't find it on the ARM compiler (it was there
for i386, x86-64, IA-64 and MIPS).
Change-Id: I55ff7a7c0cfc6388b7ad8e2c0dedecffdf2a3e01
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Liang Qi [Fri, 13 Jan 2012 09:57:26 +0000 (10:57 +0100)]
Put the generated <module>version.h into build tree
It was put in source tree before.
Task-number: QTBUG-20439
Change-Id: Ib52d9c2e83ae375aad259ddc74138bbc728b3ed0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>