Commit Graph

21230 Commits

Author SHA1 Message Date
Eskil Abrahamsen Blomfeldt
ef25d2efdb Android: Enable 64-bit configuration on Windows host platform
Default to android-21 when a 64-bit target is chosen, as this is
the lowest API level supported for 64-bit targets.

Change-Id: If4ece23911c3e9e45558906d970ef85a3b18b0bb
Reviewed-by: BogDan Vatra <bogdan@kde.org>
2014-11-07 11:34:20 +01:00
Maurice Kalinowski
2f7d0838b8 WinRT: Add missing manifest specifier for rotation
Add WINRT_MANIFEST.rotation_preference as description which orientation
is allowed or preferred by the app. Valid values for Windows Phone are
portrait, landscape, landscapeFlipped. WinRT also allows portraitFlipped

Task-number: QTBUG-40830
Change-Id: I6b11afcdb72c2c158dadddafc5d90c1d18ab9d8b
Reviewed-by: Andrew Knight <andrew.knight@theqtcompany.com>
2014-11-07 11:13:02 +01:00
Lorn Potter
7a593e0d00 make qtbearer networkmanager defaultConfiguration more reliable
The defaultConfiguration could switch and be either active connection,
so we determine the default should be what has the default route.

Change-Id: I194f27b60e7a3598eca2ff09c2225ba1a46564d9
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
2014-11-07 10:12:40 +01:00
Lorn Potter
a61247723a Make QtBearer networkmanager backend respond to wired cabling changes
Cabling changes can be detected right away, so we should act on that
and change the configuration state.

Change-Id: Ifa9709077215567001e11ab655208a2c1b090073
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
2014-11-07 10:12:23 +01:00
MihailNaydenov
8a81319be1 Fix loading 2x images in Rich Text Documents
There are some issues preventing 2x images from loading, mainly incorrect
testing for exist() by passing an url, which always reports ‘false’.

Task-number: QTBUG-36383
Change-Id: I1e8e5a91b01f1a4ddd3559c2e860db5bc41908ce
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-11-07 08:51:13 +01:00
Lorn Potter
999fa63482 Support dual sim in QtBearer's networkmanager backend
Task-number: QTBUG-42368
Change-Id: I306733b5de7871fdeaa0accb512a3610753c84a5
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
2014-11-06 20:00:15 +01:00
Alex Trotsenko
13401116cc Remove incorrect read from QSslSocket::readData()
QIODevice makes readData() call only when its read buffer is empty.
Also data argument points to the user or reserved read buffer area.
So, no need in data transfer from read buffer at this point at all.

Task-number: QTBUG-41797
Change-Id: Ieb4afdf7eec37fdf288073e4a060e64424f22b9c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from commit 1853579dad1bbb44599314213a1d8a203ecae1c9)
Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-06 14:57:55 +01:00
Eike Hein
c493546a0a Merge TextFormat attributes for identical ranges in QInputMethodEvents
IBus can hand us multiple attributes for different formatting properties
of the same text range for events. The IBus input method plugin used to
convert these straight into multiple QInputMethodEvent::Attributes, each
with their own QTextCharFormat instance.

According to the QInputMethodEvent documentation, behavior with multiple
TextFormat attributes for the same text range is undefined. In at least
one known user, KDE's Kate text editor, it causes invisible text for
pre-edit text events as the QTextCharFormats are applied in turn with
partially default-constructed foreground/background brushes:

https://bugs.kde.org/show_bug.cgi?id=339467

This patch makes an effort to merge formatting information for identical
text ranges into a single QTextCharFomat, while otherwise preserving
existing behavior (attribute order is unchanged and attributes deseria-
lized from D-Bus as having invalid QTextFormats remain untouched).

No attempt is made to cope with overlapping text ranges. Segmenting into
smaller ranges and merging for the overlaps would be conceivable, but
until a case of an input method creating events with overlapping ranges
is known seems not worth the effort.

It's worth noting that the IBus input method plugin for Qt 4 also
attempts to merge formatting information into a single QTextCharFormat,
but with a distinct implementation from this one.

Change-Id: Ie3dc38b353724ffb7b5f2d7f316393027373baf2
Task-number: 41640
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2014-11-06 14:07:09 +01:00
Pasi Petäjäjärvi
79f832594d eglfs: obey QT_NO_REGULAREXPRESSION define
Not all platforms do have QRegularExpression as it is based on
pcre.

Change-Id: I6b8e701ff7cf30e776ee34e5dc836cd24c9543b5
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-11-06 12:55:16 +01:00
Tor Arne Vestbø
30d9498329 iOS: Detect when inputMethodAccepted() is out of sync with focus object
The GraphicsView stack still seems to have issues emitting focusObject
change signals when the focus object changes inside the item hierarchy.

To be on the safe side we use our own view of whether or not IM is
enabled, and try to detect and warn if we find a case where the two
are out of sync.

Change-Id: I9fde896ea14ea5b65784723110887e06453edbd4
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
2014-11-06 12:26:06 +01:00
Nico Vertriest
9c8943a862 Doc: updated documentation QString::toDouble
Task-number: QTBUG-35543
Change-Id: I60d5cc253e6d6a24e9b031758e16a547a9a07443
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-11-06 12:10:54 +01:00
Christian Strømme
df106921b2 Android: Fix for build issue on x86
In the toolchain for x86 the va_list type is defined as char *, which
in itself isn't strange, but it was somewhat unexpected as it differs
from the arm toolchains. Either way we should not make assumption about
the va_list type as there is no guarantee it won't cause conflicts when
overloading. This fix simply renames the private overloads.

Change-Id: I7808619d0fa3ca63b75796308cfdff6aa41a7fd0
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2014-11-06 12:10:12 +01:00
hjk
d3f3e1218c Add a inline QVector::append(const QVector &) overload
This is present in QList already and its lack is a nuisance when
switching from QList based code to QVector (which makes sense e.g.
if the item size exceeds sizeof(void*))

Also, albeit operator+=() and operator<<() exist, some people
simply prefer functions with real function names.

[ChangeLog][QtCore][QVector] Added QVector::append(const QVector &) overload

Change-Id: I9aae8223b086765625f2f3071fab5da0780f8a43
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-11-06 11:33:52 +01:00
Alexander Volkov
3c0ea78283 Do not pass a null pointer to unlink()
Found by clang static analyzer.

Change-Id: I8f15ae1a8e6afb91eafa6cee1d1b21e3539af6c1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
2014-11-06 08:35:22 +01:00
David Faure
1031ad8761 QAbstractProxyModel: add missing default value, compared to base class.
Change-Id: I1077fde359afc057f4587902d27d64cbffab1ef5
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-11-06 07:48:50 +01:00
Axel Rasmussen
0b54de41bc moc: use Q_NULLPTR instead of 0 in generated code.
This commit changes several instances where moc was generating code that
used 0 as a null pointer constant. The Q_NULLPTR define is the more
idiomatic way to do this, and additionally this silences warnings
generated by e.g. GCC's -Wzero-as-null-pointer-constant.

[ChangeLog][Tools][moc] Fixed "zero as null pointer constant" warnings
in moc's generated code.

Change-Id: Ibe382b7bdbdddaf20cb4bdfd075fcdd1f363f9d3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2014-11-06 02:58:56 +01:00
Lorn Potter
4763a3571f Use a property cache to cut down on blocking calls
Refactor old code
Stop memory leaks
Properly support mobile data (ofono)

Change-Id: I7f23882ee0ee345a049a4a93ddd452b6d2e53710
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
2014-11-06 02:42:38 +01:00
Lorn Potter
af279b34a8 Reset QNAM's NetworkConfiguration when state changes.
Since QNAM is initialized with defaultConfiguration, we need to
reset the internal configuration used to the current
defaultConfiguration when the state changes and a new configuration
becomes the default.

Task-number: QTBUG-40234
Change-Id: I50f23c62804f29370915eecac2c92301c5f3ead2
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
2014-11-05 23:39:18 +01:00
Tor Arne Vestbø
8d82066ff5 Skip unused function isCoreProfile() on non-ES2 platforms
Change-Id: Ia84e74512e7001986c620253cdf0bc431ebc00dc
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2014-11-05 20:34:58 +01:00
J-P Nurmi
78cdb6b4b1 Windows: fix unreadable white text for focused combo boxes
Task-number: QTBUG-42390
Change-Id: Ia52c7ac3d2e3ca155692c8f020a565054716c86b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2014-11-05 20:04:02 +01:00
Friedemann Kleint
76735f3fa0 Windows native file dialog: Work around display bug of IFileDialog.
Any filter not filtering on suffix shows up duplicated in filter
combo.

Change-Id: I9fc9e33b6081cf6894fabc6dd52c12a4d3dfd393
Task-number: QTBUG-42405
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2014-11-05 19:21:01 +01:00
Jan Arve Saether
f31cee9366 Do not crash during global key presses.
This crashed because on Android we called

QWindowSystemInterface::handleKeyEvent() with QWindow argument set to 0

This is a regression and started to crash after commit d7ca800a8
(it added the call to tryHandleShortcutEvent() without checking the
window pointer).

Change-Id: Iefd5fe782a0f7f1e1569580ed4fcb2ef60eed2d2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2014-11-05 17:09:37 +01:00
Simon Hausmann
7a8bb824ff Update the copy of the Qml parser
The files here are a copy of the parser from the qtdeclarative repository.
This patch combines commit cfff375afcfe63d25b3c1904ff58a90bcd1edb43 and
f876562de8eb978cea39fe72e76c49ae51ff2f97 from the qtdeclarative repository to
fix the license and allow for read-only object property syntax.

Change-Id: Idb58948cede2cd47858e3831785009f8b7ea2169
Reviewed-by: Martin Smith <martin.smith@digia.com>
2014-11-05 16:14:52 +01:00
Leena Miettinen
3978249743 Doc: add new Qt Creator Manual topics to externalpages
New in some earlier version:
- Parsing C++ Files
New in Qt Creator 3.3:
- Qt Quick UI Forms
- Using Clang Static Analyzer

Change-Id: I2821b31f4c67b79e6a178018a6acba5b828edb3e
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2014-11-05 12:28:53 +01:00
Shawn Rutledge
ec63f5fbf3 docs: WindowType is important for dialogs to center themselves
Task-number: QTBUG-41844
Task-number: QTBUG-36185
Change-Id: I61605006048e81d2666eea34f4d041124a24199f
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-11-05 10:53:56 +01:00
Tor Arne Vestbø
2d075bf651 iOS: Update integrated event dispatcher to support 64-bit x86
Needed so that we can build simulator builds for x86_64 as well as
i386. The function call alignment is the same, but we need to use
the 64-bit versions of the instruction and operands.

Change-Id: I62cc78e23b5e0923382d19570ce18f558894e6a0
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2014-11-05 10:48:43 +01:00
Thiago Macieira
73a1e8c60d Partially revert "Fix a deadlock introduced by the race condition fix"
The commit was 9361be58f47ec256bf920c378479a02501219c1f (2008-11-17),
referring to the race condition fix that was applied in commit
d47c05b1889bb4f06203bbc65f4660b8d0128954 (2008-10-08). The fix for the
deadlock reintroduced the race condition and the commit message noted
it.

The workaround is no longer necessary since we've fixed the original race
condition differently now (see the previous two commits).

Task-number: QTBUG-42189
Change-Id: I5a83249597a83c4d4caa2ae57964ad3cc61c1d70
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2014-11-05 10:46:22 +01:00
Thiago Macieira
eb99c28861 QDBusConnection: Merge the dispatch and the watch-and-timeout locks
We don't need two anymore because they now protect the same thing: the
state of the DBusConnection. The difference existed when it was possible
for two threads to access the DBusConnection at the same time: one doing
dispatching and one doing something else. Unfortunately, even though
DBusConnection supports this, QtDBus doesn't.

From d47c05b1889bb4f06203bbc65f4660b8d0128954 (2008-10-08):
   Details:  if we're removing a timer or a watcher from our list,
   there's a race condition: one thread (not the QDBusConnection thread)
   could be asking for the removal (which causes an event to be sent),
   then deletes the pointer. In the meantime, QDBusConnection will
   process the timers and socket notifiers and could end up calling
   lidbus-1 with deleted pointers.

That commit fixed the race condition but introduced a deadlock.

Task-number: QTBUG-42189
Change-Id: I034038f763cbad3a67398909defd31a23c27c965
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Albert Astals Cid <albert.astals@canonical.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2014-11-05 10:46:19 +01:00
Thiago Macieira
6a2bdc4ee2 Always lock the DBus dispatcher before dbus_connection_send*
We lock it before dbus_connection_send_with_reply (the async version) in
QDBusConnectionPrivate::sendWithReplyAsync. We weren't locking it before
send_with_reply_and_block and we apparently should. The locking around
the dbus_connection_send function might not be necessary, but let's do
it to be safe.

The lock now needs to be recursive because we may be inside
QDBusConnectionPrivate::doDispatch.

Task-number: QTBUG-42189
Change-Id: I7b6b350909359817ea8b3f9c693bced042c9779a
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2014-11-05 10:46:10 +01:00
Kai Koehne
54d4fb4f50 Fix QString::sprintf documentation
QString::sprintf does actually support all length modifiers, including
%lld. The format string is also parsed as UTF-8.

What's worthwile to mention, though, is that %lc and %ls is at odds
with the standard, since wchar_t isn't necessarily 16 bits wide.

Change-Id: I30cd22ec5b42035824dd98e3cdcc79d7adcc953a
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-11-05 10:46:01 +01:00
Simon Hausmann
b7d36614e9 Remove incorrect execute file permissions from source files
Amends commit 9c3a58a913.

Change-Id: I292eb9df480a642a65f9065e4fe36bd52c093dc7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-05 10:45:55 +01:00
Raphael Kubo da Costa
cfa73537cc Stop including g++-unix.conf in the freebsd-clang mkspec.
Most of the settings there end up overwritten by the clang.conf include
that comes afterwards, except for a few things such as QMAKE_LINK_C,
which remains set to "gcc" and breaks things when one uses
CONFIG=use_c_linker.

QMAKE_LFLAGS_NOUNDEF was coming from g++-unix.conf, though, so we now
manually set it in freebsd-clang's qmake.conf.

Change-Id: Ibd16f59d43eb19e72adf4919da9ce3007100b60f
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-05 10:45:42 +01:00
Raphael Kubo da Costa
2b9a793dcd Set the _C variants of QMAKE_LINK and QMAKE_LINK_SHLIB in clang.conf.
While it does not look like the clang-based mkspecs had any problems so
far with not having QMAKE_LINK_C and QMAKE_LINK_C_SHLIB defined, it
makes sense to set them to $$QMAKE_CC just like the GCC-based ones so
CONFIG=use_c_linker works as expected.

Change-Id: Ib660d12b001dd7a877b6f03e79715db08a272968
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-05 10:45:37 +01:00
Marco Martin
47ec22a509 Allow panels outside of availableGeometry
Panels windows are usually outside QScreen::availableGeometry, because
they will usually set extended struts to reserve the screen area for
themselves, but their own screen() must remain the one in which they
are.
This cause one downstream behavior to KDE
https://bugs.kde.org/show_bug.cgi?id=339846
in which a panel got by mistake few pixels on another screen, and
was immediately reassigned to that screen, because its geometry was
intersecting the new screen availableGeometry() but not the geometry
of its own screen, because itself reserved its own geometry away
from availableGeometry()

Change-Id: If6c9defdef62732473687dd336dbcec582bd0ea2
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-11-05 10:45:29 +01:00
Shawn Rutledge
7eb7dd555c Documentation CSS: remove body text color
Help text should use the QPalette color.

Task-number: QTBUG-42399
Change-Id: Ibc8658b4a7affc2481d895c13cfa673b50a872e0
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2014-11-05 10:36:16 +01:00
Dyami Caliri
8a9addf42e QMenu check for null result from QPlatformMenu::menuItemForTag
QMenu needs to check result of QPlatformMenu::menuItemForTag to avoid
a crash dereferencing a null pointer.

Task-number: QTBUG-42327
Change-Id: Ie54a94caec7a5d756c459741df182fbe4e38bec0
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2014-11-05 09:54:39 +01:00
Richard Moe Gustavsen
063a544616 iOS: remove unused function 'fromPortraitToPrimary'
Change-Id: Ic768790a90ef7048bd5e7027e9682988085368fe
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2014-11-05 09:25:01 +01:00
Morten Johan Sørvig
39be577cc2 Cocoa: get mouse position from event if possible
...instead of using the current mouse position. This
is important if event processing is delayed: we want
the QMouseEvent to have the position when the event
happened, not the current position.

Regression from Qt 4.

Change-Id: Ifd4f0f02853236a204de96c5a97e72f86c29f0b7
Task-id: QTBUG-37926
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2014-11-05 08:45:07 +01:00
Morten Johan Sørvig
63c7ceaf1b Revert "OS X - unified toolbar and AA_NativeWindows"
Will be fixed in a different way.

This reverts commit ae5f3df59b.

Change-Id: Ie706396667a5b6c9003bb92a018d88346a180e65
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2014-11-05 08:45:04 +01:00
Morten Johan Sørvig
7146cbed6e Cocoa: Guard against recursive event delivery
Fix "Recursive repaint" crash.

Add guard to QCococaWindow::setGeometry and QNSView
updateGeometry to prevent processing window system
events during setGeometry.

Task-number: QTBUG-41449
Change-Id: I304fdf134d433cbc50fafd997ecd91e31cb57f4e
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2014-11-05 08:45:00 +01:00
Morten Johan Sørvig
bb31aa853e Cocoa: refactor commit 876a428f.
Conditions for when updateExposedGeometry() should
actually send the expose event goes into the function
itself.

The window()->isVisible() check could arguably be
moved to isWindowExposable(), but I'm keeping this
as a straight refactor without any behavior changes.
(isWindowExposable() is called from multiple locations)

Change-Id: I6d792286ccbc50065ebfc588daca2240761a1937
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-11-05 08:44:36 +01:00
Morten Johan Sørvig
a2ce7e6a6f Cocoa: Don't activate popup windows.
Qt expects a handleWindowActivated call for non-
popup windows only. Add a window type check, similar
to the other handleWindowActivated calls.

Task-number: QTBUG-38707
Change-Id: Iaa5959675f7e3ae4664bdf785d3f374debb0d0a7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
2014-11-05 08:43:24 +01:00
Aki Koskinen
8545821bf8 Fix incorrect documentation from QTranslator::load
Task-number: QTBUG-27506
Change-Id: I1b2d4ed2242efd52258c7f587c2121f9dde18a0d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-05 08:43:04 +01:00
Alessandro Portale
82e266a83b New Qt logo
This patch replaces the old Qt logo with the new, flatter one.

The PNGs were optimized via: optipng  -o7 -strip "all"

Task-number: QTBUG-41685
Change-Id: I51983a45144373bf7aee31a32990ecbb2582f488
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-11-05 08:10:42 +01:00
hjk
cf30a3d9b2 Rcc: ensure enough space for the embedded
The two-pass feature depends on the QRC_DATA signature that needs
to be stored in the array later overwritten by the embedded data.

Task-number: QTBUG-42359
Change-Id: Ida1ccff40dda28f92a4267f86f48ee96d62bd214
Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
2014-11-05 08:04:27 +01:00
Thiago Macieira
ffcad3244f Define the Intel compiler and Microsoft C++ versions in the Q_CC_ macros
This is for completeness, since we've done the same for Q_CC_GNU and
Q_CC_CLANG. We won't really use the macros like this because both
__INTEL_COMPILER and _MSC_VER are readily usable.

Change-Id: I669c60166fa4839d43f84f339e6896321d62817f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-05 07:30:45 +01:00
Thiago Macieira
729541f7ca Store the GCC version number in Q_CC_GNU
The sequence of (__GNUC__ * 100 + __GNUC_MINOR__) was used in quite a
few places. Simplify it to make the code more readable.

This follows the change done for Clang, which was quite necessary since
Apple's version of Clang has different build numbers.

Change-Id: I886271a5a5f21ae59485ecf8d140527723345a46
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-05 07:30:40 +01:00
Tor Arne Vestbø
85a7138114 Define Q_CC_CLANG to be the version of upstream Clang that's in use
We map the Apple Clang versions to upstream, so that we have one
define to compare against.

Fixes build break on iOS due to qbasicatomic.h not defining
QT_BASIC_ATOMIC_HAS_CONSTRUCTORS on Apple Clang versions, which
is needed after 1e9db9f5e1

Change-Id: I17493c0187c20abc5d22e71944d62bfd16afbad2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-11-05 07:30:32 +01:00
Jonathan Liu
51ddaabb81 QElapsedTimer/Unix: Improve accuracy for millisecond values
Task-number: QTBUG-42365
Change-Id: Iee390bc0014e32b3bc5ef144ea9e1c677ab66278
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2014-11-04 22:50:45 +01:00
Thiago Macieira
c36b559196 Import forkfd into qtbase
forkfd is a tool that I designed to facilitate spawning
sub-processes. It's implemented in C, not C++, so that it could be
used by other libraries as well.

To work in all platforms Qt supports and with all compilers Qt is
known to work with, we'll need to replace the generic GCC atomics that
are provided here.

Change-Id: I0a6f86cc220a7c52c8d4284bb7140c56d5cf836a
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2014-11-04 19:19:41 +01:00