Lars Knoll [Sat, 12 May 2012 10:09:35 +0000 (12:09 +0200)]
Limit the nesting depth of the Json parser
The parser is recursive and too deeply nested json would
cause it to exhaust the available stack space leading to
crashes.
We now abort parsing with a DeepNesting parse error if the
document is too deeply nested. The current nesting limit
is set to 1024, which should be more then enough for any
real JSON data set.
Change-Id: I4adea3fd727149f7342536d73cf4530361a0a3a1
Reviewed-by: Jamey Hicks <jamey.hicks@nokia.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Arvid E. Picciani [Tue, 15 May 2012 10:29:53 +0000 (12:29 +0200)]
QElfParser: double check section size before using it.
In rare cases, if the section is empty, we're reading the whole object
into memory because size -1 = UINT_MAX.
Change-Id: Ibf9a1534159ce626e4f2327536076d0cc1ebf0ba
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Damir Tatalovic [Wed, 4 Apr 2012 15:54:58 +0000 (17:54 +0200)]
MIPS DSPR2 optimization of routine fetchUntransformedRGB16
Change-Id: I109deb969009214c4d81677e127f50120443acd2
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Kent Hansen [Tue, 15 May 2012 07:52:24 +0000 (09:52 +0200)]
Revert "Temporarily disable -Woverloaded-virtual in headersclean test"
This reverts commit
a17523805e56511465550a6a93a88b3fc3c8325a
The compatibility overloads were removed in change Icf108a80177155f21bb73c165fb8ab5d4e997bc2.
Change-Id: I4861f281451d66a1aa5f3525eea1773dfef0540e
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Eskil Abrahamsen Blomfeldt [Thu, 10 May 2012 14:50:33 +0000 (16:50 +0200)]
Support specifying fallbacks in font request on QPA
Because the QPA font database would query fallback families inside
findFont(), support for requesting multiple font families in order
of preference (like QFont("Times New Roman, Arial")) did not work,
because the Arial fallback was never attempted. To fix this, we
pass in the queried fallbacks and make sure they are tried before
any platform specific fallbacks.
Task-number: QTBUG-20986
Change-Id: Idb2b717856f013ce2874f00a8debaff60176d2fc
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Konstantin Ritt [Tue, 15 May 2012 17:48:20 +0000 (20:48 +0300)]
QChar: add isSurrogate() and isNonCharacter() to the public API
+ QChar::LastValidCodePoint enum value that supercede the UNICODE_LAST_CODEPOINT macro
replace uses of hardcoded values with the new API; remove leftovers
Change-Id: I1395c9840b85fcb6b08e241b131794a98773c952
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Konstantin Ritt [Fri, 11 May 2012 11:19:44 +0000 (14:19 +0300)]
QChar: add missing UCS-4 overloads, get rid of UCS-2 ones
inline all non-static members to a static ones (declared with QT_FASTCALL),
ushort converts automatically to uint and the conversion cost is minimal.
Task-Number: QTBUG-13052
Change-Id: I189a6f205736766adcd3de2d61cee71f30cc64f3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Konstantin Ritt [Tue, 8 May 2012 11:15:04 +0000 (14:15 +0300)]
QJpegHandler: add an embedded text support
texts for the textKeys are stored each in a separate COM(ment) section
so that the maximum text's size is almost 65KB
Task-number: QTBUG-10568
Task-number: QTBUG-111
Change-Id: I7d693741e10e5d78d497cb0af448160077350bb2
Reviewed-by: aavit <qt_aavit@ovi.com>
Shane Kearns [Wed, 2 May 2012 15:46:52 +0000 (16:46 +0100)]
Fix QFile::permissions for long filenames
When qt_ntfs_permission_lookup is used, QFile::permissions failed
for files with long filenames.
Also created a test case for this API, which revealed another bug.
Task-number: QTBUG-25629
Change-Id: I73b7676a9d059c0e782b3f701b2e6bbc92f671ed
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Martin Petersson [Wed, 9 May 2012 12:01:22 +0000 (14:01 +0200)]
tst_QNetworkReply: enable the ioGetFromBuiltinHttp test.
This can be enabled again now. The sender transfer test is still not
re-enabled since the test would take to long to run if sending
enough data to overwhelm the reciever's kernel buffers.
Change-Id: I4056fdca53ec8ebbcc53dfdc814d8bfdbc73f7ce
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Martin Petersson [Wed, 9 May 2012 12:07:32 +0000 (14:07 +0200)]
QHttpNetworkReply:readBodyFast return early if nothing to read.
Incase there is no bytesAvailable on the socket there is no need to
try to read.
Change-Id: Ied9e4b8d86854b356a733fab4948739db206b6ad
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Martin Petersson [Wed, 9 May 2012 11:53:46 +0000 (13:53 +0200)]
QNetworkAccessManager: Read all from socket on remote host close
When we get a remoteHostClosed we should try to read everything from
the socket before we close the channel.
Change-Id: Iaa87d79ea16d69735f6ba3e8b3b4a0f86fbd5f73
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
Andy Shaw [Tue, 17 Apr 2012 18:30:54 +0000 (20:30 +0200)]
Fix cases where functions are called with a drive and no slash
When a file is specified on a path that includes a drive letter
followed by a colon but no slash then it didn't always account
for the fact that this refers to the current path on that drive.
This fixes the problems in completeBaseName(), baseName() and
path(). Tests are also added for these three cases and some
others too.
Task-number: QTBUG-25353
Change-Id: I47a197c6af066f532442ad269be57597ec61303a
Reviewed-by: Irfan Omair <irfan.omair@gmail.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Johannes Zellner [Tue, 15 May 2012 19:43:08 +0000 (12:43 -0700)]
udev: improve device discovery with udev for add/remove
As the udev device tree structure varies between distros and udev
versions, first probe the actual leaf node for device properties.
If leaf does not contain needed properties, walk up the tree to the
next node matching the queried submodule.
Change-Id: I09329d5a76a1a2a797513f4a787cb27fed5293c7
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Teemu Katajisto [Thu, 10 May 2012 08:54:28 +0000 (11:54 +0300)]
printsupport: set duplex setting correctly to CUPS printer
If CUPS printer default is not DuplexNone then setting duplex
to None for printer did not have any effect on duplex setting.
Change-Id: Ifdd82241952c9a63cdf9b53fe787f7503b8049bd
Reviewed-by: John Layt <jlayt@kde.org>
Stephen Kelly [Tue, 15 May 2012 12:35:42 +0000 (14:35 +0200)]
Use IF(NOT TARGET ...) before creating imported targets.
Initially we didn't do this because someone could accidentally create
another target of a conflicting name, and used a variable to store whether we
have created the target already or not.
That wasn't adequeate to deal with finding the package in a scope
like a function, so we used a directory property. However, the directory
property is not valid in the same scopes as the defined target. For
example, finding a Qt module in both a directory and a subdirectory causes
a conflict.
As it is already unlikely that a target would be accidentally created with
a name like Qt5::Core, we should simply use the IF(TARGET) form.
Change-Id: If64f25d45f51edcd1edb0d4bfb5ed3bb2479bd27
Reviewed-by: David Faure <faure@kde.org>
Carl Schumann [Tue, 15 May 2012 19:02:34 +0000 (14:02 -0500)]
Add Q_UINT64_C to 64 bit integer literal.
On some systems prior to this change the code
would not build with the following error reported
by gcc:
error: integer constant is too large for 'long' type
Change-Id: I778bce9a72ccf3a41cdf17883d734082ed3fb4b3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Johannes Zellner [Tue, 15 May 2012 00:04:44 +0000 (17:04 -0700)]
input: Use UDev or specific device paths
Keyboard,mouse and touch plugins using evdev now either
use udev for device discovery or the plugin arguments
for fixed device paths.
Change-Id: I72606ad48c15c55a49724a82f7bc285dd3984c43
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Thiago Macieira [Mon, 14 May 2012 12:10:45 +0000 (14:10 +0200)]
Restore the QEvent::d pointer to null after we're done using it
Change-Id: I2fd6ebd80bf47456d74e939d49bff4ac9f199e8b
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Pino Toscano [Tue, 15 May 2012 12:40:15 +0000 (14:40 +0200)]
QElfParser: fix type of sh_size
The type of the sh_size field of a section header is either Elf32_Word or Elf64_Xword,
so the type used cannot be qelfword_t (always 32 bits) but qelfoff_t.
Change-Id: Ia380b6823913fee7a96b39f742630ae3a9ca0cb8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Arvid Picciani <arvid.picciani@nokia.com>
Alessandro Portale [Tue, 15 May 2012 13:30:31 +0000 (15:30 +0200)]
qdoc: Improve fileToOpen detection for examples manifest
When looking for a suitable "fileToOpen", do a case insensitive
file name comparision. So that it also works in this scenario:
AnExample/anexample.qml
Change-Id: Ic4cd1d59a7a35e534bfd26cd174a3c2ab5383025
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Friedemann Kleint [Tue, 15 May 2012 13:15:34 +0000 (15:15 +0200)]
Windows: Trim filter specification of the native file dialog.
In the event customer code (namely Qt Creator) does not pass a
clean specification (corresponding to 4.8 behaviour).
Change-Id: I8271e3a45bea4bea912fcdf0b7c0aae6c022c6a8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
kb [Tue, 15 May 2012 04:50:41 +0000 (06:50 +0200)]
Do not limit mingw mkspec to "win32-g++" only.
The Qt configure script and various qmake project files interpret
mkspecs with a win32-g++ prefix as needing special mingw treatment.
This patch corrects one instance of the too-specific "win32-g++"
qmake platform scope and broadens it to "win32-g++*" -- bringing
it in line with the rest of the Qt project files -- thus re-enabling
custom mkspecs for crosscompilation.
Change-Id: I8c5107053ce9e0c499002b1990b492bda0eec52b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Marius Storm-Olsen [Tue, 15 May 2012 07:47:47 +0000 (09:47 +0200)]
Set QMAKE_DOCS_INSTALLDIR to $$[QT_INSTALL_DOCS] to allow overriding in .pro
Normally you want to pass -installdir $$[QT_INSTALL_DOCS] to qdoc by
default. However, if you want to force the generation of URL links to
the documentation, the option cannot be specified.
By setting the QMAKE_DOCS_INSTALLDIR variable in default_pre.prf a
project may override it at will, as for example Qt Creator would do.
Change-Id: Ib31f03acf4e8050cf2dd3aa33f3a10ed027f1df7
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Friedemann Kleint [Mon, 14 May 2012 14:57:15 +0000 (16:57 +0200)]
Fix font printing on Windows using the native engine.
- Add HFONT, LOGFONT, trueType as properties of the
Windows font engine, make it a real Q_OBJECT.
- Query properties in the Windows print engine and use the HFONT,
LOGFONT there.
Change-Id: I5c35275b32ef6580d7fa15ed83c6e79e33dc3334
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
David Faure [Mon, 14 May 2012 17:42:10 +0000 (19:42 +0200)]
Rename QMimeDatabase method for consistency.
Name is about mimetype names, while FileName is about, well, file names.
Task-number: QTBUG-25748
Change-Id: I34a9ac1a5fc06dc3e3855365e19c4dc7a1aa2671
Reviewed-by: Wolf-Michael Bolle <wolf-michael.bolle@nokia.com>
Martin Smith [Tue, 15 May 2012 11:48:29 +0000 (13:48 +0200)]
qdoc: Don't include internal QML properties in output
QML properties marked internal were still appearing in the
the HTML output. Also, the title for QML type pages was not
correct in the help project writer.
Change-Id: Icaad7cefce77a4af70796bc185c99a3035fb17c8
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Casper van Donderen [Mon, 14 May 2012 10:15:04 +0000 (12:15 +0200)]
QDoc: Use capitalized navtitles in ditamap.
The auto-generated ditamap used titles like "articles", this now becomes
"Articles".
Change-Id: I32fa6353443aaa66cbfc2b2fea1fea26e3e33684
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Martin Smith [Mon, 14 May 2012 08:08:13 +0000 (10:08 +0200)]
qdoc: Fixed some terminology output by qdoc
There were still a few places where qdoc
generated "element" instead of "type" or
"class" instead of "type." These have been
fixed.
Change-Id: Id75156810212edb468198b6f269e3a91c55ac22c
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Girish Ramakrishnan [Sun, 13 May 2012 04:14:17 +0000 (21:14 -0700)]
Fix include path to fb_base.pri
Also fixes a typo in fb_base.pri.
Change-Id: I4fae156640325a7a2894ea0d1fbe96936f190bdb
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Girish Ramakrishnan [Mon, 14 May 2012 18:36:08 +0000 (11:36 -0700)]
Fix QPA files inclusion headers
find . -name "*.h" | xargs sed "s/^#\(.*\)_QPA_H/#\1_H/" -i
Change-Id: Ifa96f8cfcb67070a961c7e5f05719b82653a1174
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Kent Hansen [Tue, 24 Apr 2012 21:57:42 +0000 (23:57 +0200)]
Remove const char *-based connectNotify() API
This completes the transition from connectNotify(const char *) and
disconnectNotify(const char *) to the new QMetaMethod-based
functions.
Removed the old connectNotify autotests and renamed the
connectNotifyMethodXXX autotests to connectNotify, since there is
no longer any ambiguity about which overload is being tested.
Change-Id: Icf108a80177155f21bb73c165fb8ab5d4e997bc2
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Thiago Macieira [Mon, 14 May 2012 13:43:57 +0000 (15:43 +0200)]
Deprecate the ability to change the FS encoding separate from the locale
Changing the encoding used by filenames separately from the locale
encoding is a broken concept and cannot work properly. This creates
ambiguity depending on the data source and how it's being treated.
Instead, enforce that the locale encoding is the only possibility to
deal with file names.
The QFile::encodeName and decodeName functions are retained due to the
Mac-specific issues and due to the sheer number of current
uses. There's no point in deprecating them and moving away from them.
Change-Id: Iedb2d8715d166a59a824f05bc11d107fd44f9c17
Discussed-on: http://lists.qt-project.org/pipermail/development/2012-May/003782.html
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Shane Kearns [Thu, 10 May 2012 15:37:57 +0000 (16:37 +0100)]
Add test case for link local TCP connections
The socket engines already implemented this, but it is a good idea
to test it explicitly.
Task-number: QTBUG-25634
Change-Id: Ife3fe09b0119ed435e4055523c553847739a09fe
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Frederik Gladhorn [Thu, 15 Mar 2012 14:05:59 +0000 (15:05 +0100)]
Enable Gtk file icons
This needs some build system fixes to let widgets depend on
the platform support library (and be built after it).
Change-Id: I6f5b878971d1002a18e2fd66db4f34ffd0ac939a
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@nokia.com>
Thiago Macieira [Mon, 14 May 2012 09:31:13 +0000 (11:31 +0200)]
Use org.qt-project for the QFactoryInterface's IID
Task-number: QTBUG-23273
Change-Id: I935d2e20a4905121ca226f052528fa7c9d80e88b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Bradley T. Hughes [Mon, 14 May 2012 07:22:40 +0000 (09:22 +0200)]
Split Q_COMPILER_DEFAULT_DELETE_MEMBERS
Based on reviewer comments on
https://codereview.qt-project.org/#change,25992, split
Q_COMPILER_DEFAULT_DELETE_MEMBERS into
Q_COMPILER_DEFAULT_MEMBERS and Q_COMPILER_DELETE_MEMBERS. Clang provides
2 separate feature checks for these, all other compilers always define
both.
Keep the Q_COMPILER_DEFAULT_DELETE_MEMBERS define, though, for any
existing code that may be using it.
Change-Id: I8969e10989c776a822da153152cfecb99dda8cb9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Shane Kearns [Fri, 11 May 2012 16:39:12 +0000 (17:39 +0100)]
Properly handle unexpected EOF in QHttpThreadDelegate
This prevents http POST/PUT from hanging if the QIODevice being uploaded
returns -1 from read.
Task-number: QTBUG-24738
Change-Id: I76500cc4f0101cc8e5da5f1dc105508b3f519a3c
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Donald Carr [Fri, 11 May 2012 22:46:54 +0000 (22:46 +0000)]
device: don't set a default cross compile prefix
qmake -set can be used instead to set a the default cross compile.
device_config.prf already contains code to read this default.
Remove per-spec CROSS_COMPILE checks
Introduce deviceSanityCheckCompiler() usage where appropriate
Done-with: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Change-Id: I07c75c9e933dc1174a1bf8bf523b6b4a6b427408
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@kdab.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Glenn Watson [Thu, 10 May 2012 04:52:41 +0000 (14:52 +1000)]
Add private API for finding symbols on Linux
Add an API for use by declarative that allows searching for a
symbol that has been loaded, without opening a specific library.
This makes it possible for declarative to determine if the
profiling library has been preloaded, and to call functions on
it that enable / disable / save the current profile.
Change-Id: I2ec12d9babea2a152990c19735e98d4d7c10a062
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
kb [Sun, 13 May 2012 20:55:15 +0000 (22:55 +0200)]
Remove capitalization when specifying include-libraries.
MinGW installations on case-sensitive filesystems expect
lowercase names of include-libraries and (usually) include
files.
When crosscompiling on Debian 6 (targeting MS Windows) linking
fails because mingw is looking for non-existent include-libraries.
Using lowercase names solves this.
Change-Id: Id3454f4ed8ba42b6ea93d65d9c0ce567db6712df
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
kb [Sun, 13 May 2012 21:01:00 +0000 (23:01 +0200)]
Do not override CO_E_NOT_SUPPORTED
Change-Id: Id0cb9e1dca67400a2e3a02da663d810b06bdb6ec
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Friedemann Kleint [Mon, 14 May 2012 11:47:41 +0000 (13:47 +0200)]
Windows: Query mouse double click interval from system.
Change-Id: I6bfd19a76bf3fde1344760d7f216a2dffa4b9018
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Johannes Zellner [Sat, 12 May 2012 00:54:30 +0000 (17:54 -0700)]
configure: save pkg-config env in qconfig.pri
Store PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR for the usecase of
cross compilation in qconfig.pri. They will get picked up by
pkgConfigExecutable() in qt_functions.prf used from link_pkgconfig.prf
as environment for pkg-config calls.
Change-Id: I7d0de05c0bd21b435275fc26c66a80035ba30970
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
David Faure [Mon, 14 May 2012 15:17:11 +0000 (17:17 +0200)]
QUrl: using sectionIsPresent in operator== broke for local files.
QUrl::fromLocalFile("/foo") doesn't set Host, but QUrl("file:///foo")
does (to remember that it saw a Host section, even if empty, which is
useful for urls like "remote://"). So ignore the Host flag in operator==.
Change-Id: I4322b4a75420c4e42766c0d65c1b121f28028a76
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
David Faure [Mon, 14 May 2012 12:48:23 +0000 (14:48 +0200)]
QUrl: a url with a fragment or query, and one without, are different.
Fix operator== and operator< so that a URL with an empty fragment
or query, is not treated as equal to a URL without any fragment or query.
This restores the Qt4 behavior on this particular issue.
Change-Id: Ie989f37353fb13c791b1d558d638d2e8a5b5d1b8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Wed, 2 May 2012 12:40:30 +0000 (14:40 +0200)]
Port away from QString::{to,from}Ascii in qmake
Properly use from/toLocal8Bit when referring to user data, even file
names.
Change-Id: I8fc7afa2ea570f8b1b1eecf354f01d6dfe0883cb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
kb [Sun, 13 May 2012 21:03:06 +0000 (23:03 +0200)]
Add missing include library to prevent link failure
When cross-compiling the uuid library needs to be included
explicitly so the linker has access to _IID_IUnknown et al.
Change-Id: I713af426357603c08eef55857be20105e5aa6eba
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Bradley T. Hughes [Fri, 11 May 2012 09:24:07 +0000 (11:24 +0200)]
clang: Use __has_feature() to detect C++11 features
Apple's clang version is often reported as the next official clang
version, but Apple clang does not support all the features that the
final official clang does. Instead of using version based feature
detection, use the __has_feature() built-in instead, so that we
correctly #define the various Q_COMPILER_* macros.
Task-number: QTBUG-25554
Change-Id: I2195401dbf6cd8574c30aa1bd6f7cf1cf537dae7
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Sun, 13 May 2012 17:48:47 +0000 (19:48 +0200)]
Use directory property instead of variable to determine target existance.
This is more resilient to calling find_package in a scope such
as a function.
Change-Id: I17e69a416f4aed3102fa6195d239bcf4ce0b306b
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Sun, 13 May 2012 17:52:13 +0000 (19:52 +0200)]
Find Qt5 modules automatically in the qt5_use_modules function.
This ensures that we only find Qt5 modules from the same directory
as modules we have already found, not from multiple different
directories which may be incompatible.
Change-Id: I7ad1d81ec41bba2e543130740041338ba44a6c3b
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Thu, 10 May 2012 15:55:13 +0000 (17:55 +0200)]
Only find dependencies from the same Qt installation.
Add a PATH to search for dependencies in the current prefix, and
disable other CMake searching logic with NO_DEFAULT_PATH.
A Qt installation must all be installed to the same prefix currently.
If that constraint is ever relaxed, we can turn this into a hint instead.
Change-Id: I633cafb7e546dbd102ac0b2ed18db260d26adc51
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
David Faure [Sun, 6 May 2012 23:00:16 +0000 (01:00 +0200)]
Restore QUrl::setEncodedQuery(QByteArray()) to the Qt4 behavior.
Null bytearray means no query, and QString::fromLatin1(QByteArray())
doesn't give a null string, but an empty string.
Same for setEncodedFragment(QByteArray()).
Change-Id: I992e9253e35941d66886456872ea06aa2ae92450
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Casper van Donderen [Fri, 11 May 2012 13:22:55 +0000 (15:22 +0200)]
QDoc: Also use the CppCodeMarker for .qtx and .qtt files.
Change-Id: Iff44975bc17fbf1158b373ecd967782b6cb5a3c1
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Donald Carr [Fri, 11 May 2012 22:49:16 +0000 (22:49 +0000)]
Remove stale udev check
udev headers now ship as part of the base debian reference image
Change-Id: I181c7f48ca59af46fccf8f3204845379d068c023
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Thiago Macieira [Wed, 25 Apr 2012 16:01:24 +0000 (18:01 +0200)]
Add a QStringBuilder::toUtf8() function
Just to match the ones that are already there.
Change-Id: I25acc2391feded4cac79ebf65a6bc72176f5f931
Reviewed-by: hjk <qthjk@ovi.com>
Andreas Holzammer [Fri, 11 May 2012 07:44:52 +0000 (09:44 +0200)]
Use WChar method for reporting for Windows
Switch to Unicode reporting, as Windows CE does
only support UTF-16 functions and to not open
up some other ifdefs just switch to unicode.
Change-Id: I82613a131313235e313cecd315bf6d1488af0532
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Thiago Macieira [Wed, 2 May 2012 14:27:46 +0000 (16:27 +0200)]
QGuiApplication::activeWindow() is deprecated
Change-Id: Id66740eb42fdaa86807222fbebc148de9434fa6e
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Shane Kearns [Wed, 9 May 2012 16:13:59 +0000 (17:13 +0100)]
Fix sending UDP packets to link local addresses
When the scope ID is not set, Mac and Windows will not transmit
packets to link local addresses. This patch implements setting
the scope in the native socket engines and adds a test case.
(it was partially implemented already, though UDP specific code
paths were missed in the unix engine)
Task-number: QTBUG-25634
Change-Id: I23300bdc9856e38458078e913daaa59cd05a74b5
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Shane Kearns [Wed, 9 May 2012 16:06:47 +0000 (17:06 +0100)]
Include scope ids in QHostAddress from QNetworkInterface
The scope ID is a required part of the address for link local
addresses (to solve the problem of the same link local address
being created by two machines on different networks).
It is required to send packets to a link local address on Mac and
Windows, although Linux multicasts if scope is missing.
Task-number: QTBUG-25634
Change-Id: Ie2bb09df8d261eefcb81716bafeb1475f0bed5fe
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Casper van Donderen [Fri, 11 May 2012 08:40:07 +0000 (10:40 +0200)]
Doc: Add a default license footer.
The CSS for the footer is not completely correct, but at this
time it is better to have something than nothing.
Change-Id: I7371e1e458a2abafcdb0fca5564ad73e209d64c3
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Jiang Jiang [Fri, 11 May 2012 13:03:57 +0000 (15:03 +0200)]
Fix font engine dependent text transformation
The font engine used in supportsTransformation() should be the same
as the one used in drawCachedGlyphs. If it's a multi font engine we
should check the primary font engine inside it.
Change-Id: I384aab3c58edfe2e7ae6fe7fe96bef766053d3ef
Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
Christoph Schleifenbaum [Thu, 5 Apr 2012 14:31:40 +0000 (16:31 +0200)]
Make QFileOpenEvents delivered again.
Create a FileOpenEvent within QWindowSystemInterfacePrivate and handle
it in QWindowSystemSystemInterface and QGuiApplication
Change-Id: Ie777c923958d83d56e8648c9bfb1f9dcb985654d
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Friedemann Kleint [Fri, 11 May 2012 09:34:28 +0000 (11:34 +0200)]
Windows: Compress Window Activation events.
If the next active window is already known at the time a focus
out is received, pass it to QWindowSystemInterface.
Fixes a test and Qt Creator's locator bar.
Task-number: QTBUG-24186
Task-number: QTCREATORBUG-1
Change-Id: I0aed4c386c08ed182555c95640e1637c5b67f5ce
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Martin Smith [Fri, 11 May 2012 11:18:52 +0000 (13:18 +0200)]
qdoc: Fixed a regression bug caused by fixing error messages
The C++ code marker is the default code marker. The default
code marker was being called for .qdoc files. But when the
tree nodes were each assigned a location object based on
the location in the source file where the node was built,
the default code marker was no longer used. Instead, the
plain code marker was used. This was wrong. qdoc now knows
to use the C++ code marker for all .qdoc files.
Change-Id: I15a58168db74cc5aa82a1fbccc5b7ece219ec297
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Martin Petersson [Fri, 11 May 2012 09:50:02 +0000 (11:50 +0200)]
qhttpthreaddelegate: check that we have a reply set when reading.
Make sure that we always have a reply set when we try to read.
Change-Id: Ib3ce9063bffc9810fc2a4fb52ee1a65b7f8cdfa0
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Bradley T. Hughes [Fri, 11 May 2012 08:03:49 +0000 (10:03 +0200)]
configure: Remove the -dwarf2 argument for Mac OS X builds
Modern versions of Xcode properly support dwarf2, and as such dwarf2 is
always enabled. This change removes the ability to turn it off, making
dwarf2 non-optional.
Change-Id: I149daeae6048ee8a1ed116363572173ad219102e
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Giuseppe D'Angelo [Fri, 11 May 2012 00:54:40 +0000 (01:54 +0100)]
QtNetwork: remove \link usages
Change-Id: I3f804a31eb9f623fb884052b4892fd45cdcdd126
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Giuseppe D'Angelo [Fri, 11 May 2012 00:59:34 +0000 (01:59 +0100)]
QtSql: remove \link usages
Change-Id: I9723c34184b298e8b0a2be7185416b9e911f948e
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Friedemann Kleint [Fri, 11 May 2012 09:06:12 +0000 (11:06 +0200)]
Remove declarative from qmltestcase.prf.
Change-Id: Ia4bf45132a74ec7bbbb2a918088c176f87a26e76
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Casper van Donderen [Thu, 10 May 2012 15:35:00 +0000 (17:35 +0200)]
QDoc: Return correct path when quoting example files.
When the exampledirs qdocconf variable is . the first 2 characters of
the file to quote from were being cut off, since there was a string
comparison between the size of the strings with and without './'
Change-Id: Iede54b5f77ec8a7530c608908f08e7eb4351f0f1
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Martin Petersson [Thu, 10 May 2012 16:20:31 +0000 (18:20 +0200)]
tst_QNetworkReply: fix backgroundRequestInterruption test.
After we have change the policy we should set the readbuffersize to
unlimited again, so that we try to download all data.
Change-Id: I1b9bdb6c2e5f408c920f6e6d7e85a39e4c18316b
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Martin Petersson [Mon, 7 May 2012 10:41:58 +0000 (12:41 +0200)]
QNetworkReply::setReadBufferSize fix for threaded http
Added the setReadBufferSize functionallity again by limiting the
amount that the delegate read from the channel. Each time that data is
fetched from the reply buffer, we communicate back to the thread so
that more data can be fetched.
Task-number: QTBUG-25327
Change-Id: I2f9950196e64acd09bc8da50c1116f2c9deacad4
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Rohan McGovern [Thu, 10 May 2012 00:29:24 +0000 (10:29 +1000)]
configure.exe: move a few things from qmodule.pri to qconfig.pri
QMAKE_RPATHDIR, QT_LIBINFIX and QT_NAMESPACE were previously set in
qmodule.pri on Windows, and qconfig.pri on platforms other than Windows.
Make the behavior consistent, move them to qconfig.pri.
qconfig.pri is the correct file because these variables need to be
visible for _all_ users of Qt, and not only the other Qt modules (the
ones who load qmodule.pri).
Change-Id: I4d517488a80b134a78ebde8d3196bdab3c3ab991
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Konstantin Ritt [Tue, 8 May 2012 01:43:16 +0000 (04:43 +0300)]
significant unicodetables generator performance optimization
since the entire range of a valid unicode code points is in use, QHash
is suboptimal and could be replaced with QList;
taking the value by ref and not inserting it back to the map + not calculating
the default value over and over gains us up to 60% performance boost!
Change-Id: I48c54a8e88472cf76c79c0aac44e65eeefa44861
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Kai Koehne [Mon, 7 May 2012 08:03:49 +0000 (10:03 +0200)]
Logging: Show pattern warning also on Windows GUI apps
Change-Id: Ibbeb606469e7cec5aa68525b05714453151ee066
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
David Faure [Sat, 5 May 2012 20:37:52 +0000 (22:37 +0200)]
Fix -Wlogical-op warning in qtestmouse.h
error: logical 'or' of collectively exhaustive tests is always true
[-Werror=logical-op]
Indeed these asserts do not test anything, given that MouseButtonMask is
0xffffffff
Change-Id: I33cf59d3e77d9c644fc307de36f4e0ab1bea80f8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Shane Kearns [Tue, 8 May 2012 17:09:02 +0000 (18:09 +0100)]
Don't return http proxy for server usages
Http proxy cannot support server sockets or udp sockets, so don't
offer it as the system proxy (in the generic environment variables
implementation)
Change-Id: I234ab1024952b2630e668ddc35c665efade8e2b9
Reviewed-by: Adrien Bustany <adrien@bustany.org>
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Marius Storm-Olsen [Thu, 10 May 2012 11:10:23 +0000 (13:10 +0200)]
Doc: Fix \sa usage
Ensure comma between elements (757 missing), single space and curly-
braces around title elements, etc.
Change-Id: Id16c3fda7fc47a12a0682f8720214f4990609a97
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Aron Rosenberg [Wed, 25 Apr 2012 17:45:35 +0000 (10:45 -0700)]
Add Windows NTLM Sign-Sign-On / Integrated Proxy Authentication
- Adds support for doing NTLMv2 integrated authentication via logged in
users domain credentials using the Windows SSPI api.
Task-number: QTBUG-17332
Change-Id: I4e840f7fb54ce1ace8a6151868f59f413d232295
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Jiang Jiang [Wed, 9 May 2012 14:38:54 +0000 (16:38 +0200)]
Do not use charset loaded by fontconfig
The only use for storing charset loaded by fontconfig in font engines
is for determine if a font supports certain codepoint, however FreeType
already does that. The charset loaded is sometimes not complete, for
instance in fontconfig 2.9.0 it removed Apple Roman platform support
for cmap loading, thus results a regression in common symbol fonts
(Wingdings, Webdings) rendering. Because those symbol fonts produced
by Monotype only contain two cmap tables: Apple Roman and Microsoft
Symbol, since the Microsoft Symbol table has a weird 0xF000 offset,
we always fallback to the Apple Roman cmap table.
Removing freetype charset cache also make each font engine consuming
less memory.
Change-Id: I88f3f44981f3a1c517b84809a3f5b834ffff7681
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Andreas Holzammer [Thu, 10 May 2012 12:37:57 +0000 (14:37 +0200)]
Add more descriptions for configure for Windows
Add some more of the prefix options that are
already implemented to the usage information.
Change-Id: I89ee37ebc6deee8b6a5fd5a1c16d26ae3ead1f30
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Olivier Goffart [Sun, 22 Apr 2012 20:04:46 +0000 (22:04 +0200)]
Implement the move constructor for containers.
This changes all the containers that uses QtPrivate::RefCount
(QMap already had one), and QVariant
In Qt 4.8, it was pointless to have the move constructor because we did
not have quick way to re-initialize a null container. (shared_null still
needed to be refcounted)
But now that we have RefCount, and that the shared_null do not have
reference count, we can implement a fast move constructor that do not generate
code to increment the reference count.
Change-Id: I2bc3c6ae96983f08aa7b1c7cb98d44a89255160b
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Gunnar Sletta [Thu, 10 May 2012 08:39:42 +0000 (10:39 +0200)]
Make sure animation drivers knows about the temporal offset after a pause
Change-Id: I932e469389241f6a12816b52180936f061cd78f8
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@nokia.com>
Reviewed-by: J-P Nurmi <j-p.nurmi@nokia.com>
Thiago Macieira [Wed, 2 May 2012 11:25:16 +0000 (13:25 +0200)]
Change to/fromAscii to to/fromUtf8 in the QString conversions
This commit matches the previous documentation commit that says that
the conversions are applied using to/fromUtf8.
Change-Id: I304e4d866ddedac5094fef8500cbeba299a02cb5
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Konstantin Ritt [Thu, 10 May 2012 09:07:58 +0000 (12:07 +0300)]
fix QString::isRightToLeft() for SMP code points
Change-Id: Ib8afc932d9566df1a8922da9a75b9f9cbbdd321d
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Stephen Kelly [Sat, 5 May 2012 21:40:19 +0000 (23:40 +0200)]
Make the qt5_use_modules public API.
This cmake function handles all of the necessary logic for using the
include directories of Qt modules, linking to Qt modules, adding
the required definitions, and most importantly, adding the position
independent flags required on UNIX systems to use Qt by default.
The function relies on functionality available in CMake 2.8.8, so it
is only available if that version of CMake or greater is used.
Change-Id: Ibe698e06819129479348c240844264c41553b5fb
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Friedemann Kleint [Thu, 10 May 2012 14:57:41 +0000 (16:57 +0200)]
Keep object name of QWidgetWindow in sync with the widget.
Use new objectNameChanged() signal.
Change-Id: I247566bd51d23ec65ff74ba9ac7be0d18e8ff160
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Morten Johan Sorvig [Thu, 10 May 2012 11:53:19 +0000 (13:53 +0200)]
Compile.
gtkstyle depends on x11.
Change-Id: Ia056b5e63c1f1eedfa107f7622226e6a59dae894
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Friedemann Kleint [Wed, 9 May 2012 15:21:32 +0000 (17:21 +0200)]
Fix deprecation warnings in QtGui, QtPlatformSupport.
Change-Id: I355a059c5311928301907d5d1e3ecce00a94341d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Bjoern Breitmeyer [Thu, 10 May 2012 12:43:26 +0000 (14:43 +0200)]
Fix for windows platform plugin to work with WINCE.
Made opengl optional.
Made Clipboard and Accessability optional.
Moved internal mime data into its on source file,
was implemented in the clipboard source
which is just strange.
Change-Id: I6ddf0c656533bd45e22e24492fc2254d15b7822f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Stephen Kelly [Thu, 10 May 2012 12:39:26 +0000 (14:39 +0200)]
Add underscore to internal implementation detail variables.
Change-Id: I4c70ed2808396931fff986fbfad5940dd39e74f6
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Thu, 10 May 2012 12:36:39 +0000 (14:36 +0200)]
Include the VERSION_STRING in CMake config files.
Change-Id: I9f0e9316241b4cb615350876b11ee263f7efd3bf
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stephen Kelly [Thu, 10 May 2012 12:40:19 +0000 (14:40 +0200)]
Remove the HAVE_DECLARATIVE define.
It is unconditionally defined.
Change-Id: I8961805eab984dd7331b7ce3dc228a031193892b
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Friedemann Kleint [Wed, 9 May 2012 15:18:47 +0000 (17:18 +0200)]
Fix warnings in evdevkeyboard-plugin.
- Fix warning about set-but-unused variable in case QT_NO_LIBUDEV.
- Compile with QT_NO_CAST_FROM_ASCII, string usages.
Change-Id: Ie98f1b4283919be878f8bbfc6e7378ad655152f8
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Andreas Holzammer [Wed, 9 May 2012 14:11:49 +0000 (16:11 +0200)]
Change Wince functions definition
Use inline functions, instead of defines for global
functions. As the defines will break member functions
that have the same name. As inline functions are only
available for C++, just define them for C++. This will
only effect 3rd party dependencies, but they don't need
them anyhow.
Change-Id: I929562401e03f08b068edba107a3f67a585952a2
Reviewed-by: Björn Breitmeyer <bjoern.breitmeyer@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Lars Knoll [Thu, 10 May 2012 11:24:28 +0000 (13:24 +0200)]
Correctly parse json documents with a leading BOM
A leading byte order mark is valid in utf-8 and we should
parse documents starting with those correctly.
Change-Id: Id85398ff6e05b93ceefbaf4a6de5571d5e61ca13
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Casper van Donderen [Thu, 10 May 2012 09:27:35 +0000 (11:27 +0200)]
QDoc: Generate images inline for \inlineimage
Change-Id: I1ee001870ac1289a8b0340707f62c7cc3fb84492
Reviewed-by: Martin Smith <martin.smith@nokia.com>
Martin Smith [Thu, 10 May 2012 11:11:13 +0000 (13:11 +0200)]
qdoc: Removed some obsolete ifdefs
Also removed a few useless comments.
Change-Id: I62a52bb826c1299ea9da3f0f3c23f267703c6509
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
Friedemann Kleint [Thu, 10 May 2012 09:58:06 +0000 (11:58 +0200)]
Fix warnings about unused variable d.
Change-Id: I8fc204928699c5a5821f9381e08b52fa2bc74fbf
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>