Commit Graph

2621 Commits

Author SHA1 Message Date
Charles Yin
ed374ed3ee Fix shadow build error for qmltest
Both $$OUT_PWD and $$PWD can't be used here, the real .pro directory
should be $$_PRO_FILE_PWD_

Task-number:QTBUG-22169
Change-Id: I0aebfe7503703fe2b264c7c47b828a8fc4ffac47
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-21 01:20:29 +02:00
Jason McDonald
98bd270fb7 Fix misleading comment on test execution order.
When executing a data-driven test, testlib executes the _data function
once, then repeatedly executes init(), then the test function, then
cleanup() for each row of test data.

Change-Id: Icfa1dd19a52fb1debbc92b7cbe13d85bfb0418c7
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-21 01:20:29 +02:00
Jason McDonald
d766ae0457 Update QSKIP documentation.
Task-number: QTBUG-21851, QTBUG-21652

Change-Id: I3d4cf8e11756b92fe9d97f01a02c61cbf2df1556
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-21 01:20:29 +02:00
Jason McDonald
27f9f136f7 Remove SkipMode parameter from QSKIP calls.
The previous commit removed SkipMode from the testlib APi.  This commit
removes the parameter from all calls to QSKIP.

Task-number: QTBUG-21851, QTBUG-21652
Change-Id: I21c0ee6731c1bc6ac6d962590d9b31d7459dfbc5
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-21 01:20:29 +02:00
Jason McDonald
016cd01846 Remove QTest::SkipMode from qtestlib API.
When the SkipAll mode is used, tests only report a SKIP for the first
line of test data and subsequent lines are not reported at all.  This
behaviour makes it impossible for anything post-processing test results
to accurately report test pass- and run- rates because they cannot see
how many lines of test data were skipped.

This commit removes SkipMode.  QSKIPs in regular test functions and data
functions are treated the same as SkipSingle, so that every skipped line
of local or global test data is reported in the test log.  QSKIPs
elsewhere are treated the same as SkipAll -- skipping in init() causes
the next test function to be skipped entirely, and skipping in
initTestCase() or initTestCase_data() causes all test functions to be
skipped.

This commit only changes qtestlib and the selftests. A further commit
will change the autotests to remove the SkipMode parameter from QSKIP
calls.

Note that the change in expected output for the globaldata selftest is
deliberate, as the QSKIP in the skipLocal test function has effectively
changed from SkipAll to SkipSingle.

Task-number: QTBUG-21851, QTBUG-21652
Change-Id: I7b1c53fe7ca9dde032810b789d967e2a402bbe5d
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Alex <alex.blasche@nokia.com>
2011-10-21 01:20:29 +02:00
Shane Kearns
296bc32841 Fix FTP example to handle failure to open network session
The example code only dealt with successful opening of the session.
If the session open failed, the application is stuck because the
connect button is disabled.
Moved the session open to be part of connection.
Handled session open failure by puttin the UI back in the default
state where connection button is enabled.

Task-Number: QTBUG-9909
Reviewed-By: Miikka Heikkinen
(cherry picked from commit 104c22a68c422152ff3cf03eb3615e7826fefbd0)

Change-Id: Ifa40fcd8b83c43cda364b3ec5e58f80b539aa244
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-10-20 23:56:52 +02:00
Shane Kearns
4aa4198240 FTP - fix interoperability issues with SIZE command
Certain FTP servers refuse the SIZE command in ASCII mode (proftpd)
or refuse the SIZE command in ASCII mode for large files.
This is a security feature, as the SIZE command requires reading
the whole file and counting line ends which can cause denial of
services. In binary mode, the file size on disc is reported, which
is a relatively quick operation.

Qt had two problems here:
1. when size command fails, the total size was reported as -1,
   whereas the documentation of QFtp::dataTransferProgress states
   it should be reported as 0 (so that QProgressDialog can display
   a wait note rather than progress bar)
2. SIZE command was sent before setting the type of the transfer
   to ASCII / Binary. This is a problem as the size reported by
   the server is incorrect. Also it usually means sending ASCII
   SIZE for Binary transfers, which results in the 550 error on
   FTP servers with DOS protection.

Task-Number: QTTH-1428
Reviewed-By: Peter Hartmann
(cherry picked from commit 72bf6105214bfc26cff33632f7f4bdeed9cdf362)

Change-Id: Ie1f356c34d6a04362eaca64befb00788f85c0ccb
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-10-20 23:56:40 +02:00
Tor Arne Vestbø
17eef6a4c4 Teach syncqt to handle multiple %moduleheaders directories
Each directory is separated by a ';'. The syntax was chosen over the
regular perl [] syntax as ';' was used already in other places.

Change-Id: I7a07a1facb7c08d7a9de6ec45ad57f6057cb0150
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-10-20 21:56:15 +02:00
Jo Asplin
9f1aa866bd Moved tests into integrationtests/ and widgets/
Task-number: QTBUG-19013

Change-Id: Ibb776f5967c0645ce6d22ef7afdc40657c575461
Reviewed-by: Holger Ihrig <holger.ihrig@nokia.com>
2011-10-20 19:45:41 +02:00
Richard Moore
78d02e93ac Add the ability to enable various SSL bug workarounds.
There are lots of buggy SSL servers around and to connect to them you
need to disable various features. This commit adds the ability to
disable the SSL ticket extension, the ability to disable the insertion
of empty fragments, and the ability to disable compression.

Task-number: QTBUG-21906

Change-Id: I3e1d0347a46e9030b889bbf15b2aad19b8513b73
Merge-request: 68
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-10-20 18:20:12 +02:00
João Abecasis
5b6894de87 ret is an "internal" path, no need to re-process it
Where "internal" means that it uses Qt's separator '/', regardless of
the native one.
(cherry picked from commit d4aa1777389f41da60a862a8c371d13839938d43)

Change-Id: Ic23ba0b360020b2e910b1256b38522db5c57f49b
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 16:53:03 +02:00
João Abecasis
68a9e55f5a We prefer capitalized drive letters, make it so sooner
Reviewed-by: Prasanth Ullattil
(cherry picked from commit 13899108ed57548d3c4f40e595481f8ee76e4fcf)

Change-Id: I70132c19af34715c92718f9b06e4f2dfba28d255
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 16:52:53 +02:00
João Abecasis
b0a6caf84b Avoid spurious detaching in QDir::to/fromNativeSeparators
The new code avoids non-const detaching operations until needed and uses
a pointer into the "raw" QChar data from then on, thus skipping unneeded
checks on the reference count for further detaching.

These functions are used all the time by the file system classes so this
small optimization won't hurt. In particular, it will help users who
already use '/' when passing paths into Qt.

Reviewed-by: Peter Hartmann
(cherry picked from commit 773a6df46243831dee7559f90e33d7eff3c5c71e)

Change-Id: I27787e787b544a63c9ea1e4138bd548500104dff
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 16:52:38 +02:00
Shane Kearns
0e7cecb861 Fix tst_qsocketnotifier
Removed the bogusFds test, as it is only run on symbian in 4.8
Forward ported the posixSockets fix from 4.8

Task-number: QTBUG-20892
Change-Id: I8a8c67e12eae402724bbb07fe37e7ea1770aaeee
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
2011-10-20 16:49:24 +02:00
Tor Arne Vestbø
d74bb06079 Generate dependencies for moc_ style includes when using CONFIG+=GNUmake
Sometimes you will include "moc_foo.cpp" from a a cpp file, not to tell
qmake to run moc on it (that's handled by having foo.h in HEADERS), but
so that the moc'ed sources are compiled as part of foo.cpp instead of a
separate compilation unit, or if the moc'ed sources need defintions from
the cpp file.

The dependency logic for CONFIG+=GNUmake failed to take this case into
account, resulting in failures to find files when generating dependency
information for those files.

Change-Id: Iac00424e2d196b518b1ef576d7567335b8ff24f0
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-10-20 16:49:24 +02:00
Kent Hansen
ce5adc7684 Revert "Update V8"
This reverts commit 1c4a5fcab76d1b769a4c0369d40dd0dd7c0e7495

Several of the qtdeclarative tests and examples are dying randomly with messages like this:
> 
> #
> # Fatal error in ../3rdparty/v8/src/objects-inl.h, line 2169
> # CHECK(object->IsJSFunction()) failed
> #
> 
> 
> ==== Stack trace ============================================
> 
> 
> ==== Details ================================================
> 
> ==== Key         ============================================
> 
> =====================
> 
> Aborted (core dumped)

Change-Id: Iebaa2497a6f6ef616ef4c3576c217d2a8a2c1ea5
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2011-10-20 13:30:26 +02:00
Frederik Gladhorn
3885a45e48 Make foreground and backgroundColor proper functions.
Change-Id: I93d4355a6c0b6edb1902df6399df7884b25ea744
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2011-10-20 11:40:29 +02:00
Thiago Macieira
c7f8213bc5 Move the non-atomic and implicit functions from QBasicAtomicXXX
Now, users of QBasicAtomicInt and QBasicAtomicPointer must be sure to
use .load() and .store() to access the values.

Change-Id: I6b48ed175618baf387dd38d821bd50e6e93c082e
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-10-20 10:05:49 +02:00
Jędrzej Nowacki
e4b145d11c Remove unused variable from qdbusintegrator.cpp.
The variable was set but unused.

Change-Id: Ibce123916f56ec90662f6118a696dfb2f4962169
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-10-20 10:05:01 +02:00
João Abecasis
1ef167f050 Use fromLocal8Bit for reversing toLocal8Bit
path is converted to 8-bit encoding using toLocal8Bit in
QTemporaryFileEngine::open. The reverse operation should be used here.
(cherry picked from commit 023976f9dd48a3deb947905d32d5fc0692da7318)

Change-Id: Idb4c1ca3415300367c46a09d68df640e17b7bfdc
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 07:22:57 +02:00
João Abecasis
d2b16043ef Don't convert template's path separators again
(cherry picked from commit 19880c1bdf75455b645fb8d5ee12bcb6e37e5aff)

Change-Id: Iec201da5c09d76711d994bc1da6d15a70a66b0c8
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 07:22:44 +02:00
João Abecasis
88316bf283 Changed if/if/else/if/eleven chain to switch
Inlined isdigit in switch statement. Removed unused #includes.
Documented unreachable segment with code (Q_ASSERT).

Reviewed-by: Denis Dzyubenko
(cherry picked from commit 3596db6c9bb8db42476d0c7b52fa2043dc67135b)

Change-Id: I98c33801fd8794e95ba8fc0b5c4efe9b1910682b
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 05:49:33 +02:00
João Abecasis
74276637d9 Modulus of negative dividends is undefined or negative
... depending on who you ask. Since it is possible for applicationPid to
return negative values this means we would introduce garbage ['()*+,-./]
in the generated filenames.

Reviewed-by: Denis Dzyubenko
(cherry picked from commit cb7cb1d3884ae8a032f3ad2ed3a6d8e3ffc06206)

Change-Id: Ie4f74b961397f97508ea67a0c835e45773d1cc0e
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-20 04:23:33 +02:00
Jan-Arve Saether
df1c1d28de Mark the most important MSAA functions as "moz: [important]"
See comment inside commit for explanation.

Change-Id: Ifc05d479ac5094f21f8db0390ae21d99eef0dbe1
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
2011-10-20 02:32:41 +02:00
Casper van Donderen
ff7f67af1d Add files from qtdoc for documentation modularization.
Change-Id: I6ea5c139e632460c516116a302f27f5c902f5561
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
2011-10-20 02:32:29 +02:00
Morten Sorvig
cff475f339 Move a11y inspector from tools to util.
Change-Id: Ifc032c511aea72a8f7a4ec62d304e89718f712db
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2011-10-20 02:31:45 +02:00
Liang Qi
b1b843dcf5 Update keyToValue and keysToValue in QMetaEnum
Add a ok return value for whether found or not.

Task-number: QTBUG-21672
Reviewed-by: Olivier Goffart
Change-Id: Ic0ea7455dccf1ac91705bcc1479444eb4091ded3
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2011-10-19 22:27:09 +02:00
Kevin Simons
15fee6e744 Fixed missing return statement in QPrintSupport
Change-Id: I8da63b7d4c5a456b0150b14e089d8f5e69c6a70a
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-19 22:27:09 +02:00
Friedemann Kleint
40738b185d Windows: Fix Geometry, OpenGL formats
- Do not use size returned by GetWindowRect for child windows
- Turn Open GL samples off if number is 1.

Change-Id: I2f44606d965fe691548094771deda7bca51ef9a6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-10-19 22:27:09 +02:00
Harald Fernengel
a0d1b99609 Make pkg-config cross-compile aware
Introduce PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR for
cross-compilation environments

Change-Id: I859d55f125b18d6bdef0f1dfaeb43721b85d22f5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-10-19 22:27:09 +02:00
Aaron Kennedy
7dc5973bf1 Update V8
Change-Id: I7a9da7dbb2116a441788407d60ed10155cded941
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2011-10-19 20:48:25 +02:00
Frederik Gladhorn
4dc25c1f29 Refactor QAccessibleActionInterface.
Some refinements done by Jan-Arve Sæther.

Change-Id: I99195b3c7273316cfa9c46e451924bbcfddd11a9
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2011-10-19 19:25:42 +02:00
Jędrzej Nowacki
663cd17718 Introduce Q_STATIC_ASSERT
Example of message of failed assert (gcc 4.6, file tst_qglobal.cpp:300):
tst_qglobal.cpp:300:92: error: invalid application of ‘sizeof’
to incomplete type ‘QStaticAssertFailure<false>’

Change-Id: Ic1798094f718eaad388d754034115aafbbb6bd5e
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-19 19:25:37 +02:00
Friedemann Kleint
0b6d4a2d65 Metatype: Silence MSVC warnings about unused variables.
Turn around if's.

Change-Id: Ica6f7f54098a567816ce3918f6fe5d8d2c072e01
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2011-10-19 16:06:36 +02:00
Friedemann Kleint
6c4aa14ecc Widgets: Fix a startup crash in QSplashScreen (Linguist).
Change-Id: I38f5920fb62277f97e9b3b45651527c2475556ac
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-10-19 12:24:49 +02:00
Morten Sorvig
19c322b089 Fix "may be used uninitialized" compiler warning.
Change-Id: I96e9dbf0f3df527785e03661b9c25bd2d214cd44
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2011-10-19 12:02:22 +02:00
Kent Hansen
f8b89fa507 Add benchmarks for QMetaType::construct()
Change-Id: Ia5883c5712e5d634b0e62189b639209eb3d5cd93
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
2011-10-19 10:25:31 +02:00
Kent Hansen
9e92ecde74 Provide API for "placement new" construction of meta-types
By making it possible to specify the place in memory where a
type should be constructed, any meta-type can be allocated on
the stack, for example. In the QML/JS QObject binding, this
makes it possible to call slots and access properties from
JavaScript without having to perform any mallocs (e.g. due to
QVariant creation) in the C++ <--> JS value conversion, in
the best case.

In addition to QMetaType::construct() and QMetaType::destruct(),
this change introduces QMetaType::typeSize(), which returns the
size of a type in bytes. This can be used to prepare a suitable
buffer for constructing a type using construct().

Benchmarks indicate that in-place construction is 2-5x faster
than normal construction for core and GUI types on linux-g++.

Note that there is already a QMetaType::construct() function
in Qt 4, which has been renamed to QMetaType::create() in Qt 5.
In order to avoid existing usages of construct() in user code
to call the Qt 5 construct() (when they really meant to call
create()), the third argument ("copy") of construct() is made
mandatory. Hence, calls to QMetaType::construct() written for
Qt 4 will cause a compile error when compiled with Qt 5, and
the user must adapt his code.

Task-number: QTBUG-12574
Change-Id: I836f06f6ee1c1c3edbd199a03424c78c942bdd3e
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2011-10-19 10:25:28 +02:00
Friedemann Kleint
ae30d71413 Widgets: Remove Symbian-specific code.
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>

Change-Id: Ieee43d6650f5b1968fc7d77e618096701ffef941
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-10-19 08:52:05 +02:00
Laszlo Agocs
3c2aea92cf Destroy generic plugins on exit.
Change-Id: I9037cabae74f9a7d8743630d0f530aaa1593266f
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2011-10-19 08:52:05 +02:00
Jason McDonald
47f016f519 Sanitize paths in selftest data.
Use a standard path for filenames that appear in the selftest's expected
test data.  This will make future patches smaller.

Change-Id: I04b2e739d261f80d20b834e5b33c5b6e88d26379
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 07:24:40 +02:00
Jason McDonald
af5f17e214 Remove skipglobal testlib selftest.
This test duplicates the skipinitdata selftest and has slightly less
informative output.

Change-Id: Ifd40e3ef8030059ec8fa0089ce5b2a994624abeb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 07:24:26 +02:00
Jason McDonald
8f02339e76 Remove DEPENDS_ON from qtestlib API.
The DEPENDS_ON macro didn't do anything and has misled many users to
think that they can write test functions that depend on other test
functions.

Task-number: QTBUG-21851
Change-Id: Ibe65b2d5d88bb81b6a0ebbe0b220f7d409a1446c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 07:24:13 +02:00
Jason McDonald
ae1810658b Move QTRY_VERIFY/QTRY_COMPARE into testlib.
These functions have lived in tests/shared/util.h for a long time, but
they really belong in qtestlib.

Change-Id: I60d569d002dea220b51563931d8b7aa77a20b98b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 07:23:44 +02:00
Jason McDonald
757b0529c4 Remove QTEST_NOOP_MAIN from qtestlib API.
This macro is no longer used in Qt's tests and encourages writing tests
in a way that makes test reporting less accurate -- remove it to prevent
further misuse.  If a test can be determined at compile-time to be
inapplicable, it should be omitted from the build via .pro file logic.
If that is not possible (e.g. there is no suitable qmake variable), the
test's initTestCase() function should call QSKIP to skip the entire test
with a meaningful explanation.

Task-number: QTBUG-21851
Change-Id: Icacc8c5567a700191b6ef3fa94ee52ede94c5b34
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 05:56:55 +02:00
Jason McDonald
604619fc38 Prefer QSKIP to QTEST_NOOP_MAIN.
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that this test won't be testing anything until it gets fixed
for Qt5.

Change-Id: I4fa73883f58d8d4a533a7c21ecd4dd5b3c55b174
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 05:56:55 +02:00
alex
cd7623c19f Remove Sensors and Location related macros/defines from qglobal.h.
This reduces interdependencies between QtCore and other modules.
Individual modules handle this by themselves.

Change-Id: I82cb96326b8ccb0b6acb88d899ed811f80f47ec1
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 04:31:08 +02:00
Jason McDonald
afb80f0cd9 Prefer QSKIP to QTEST_NOOP_MAIN.
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that this test isn't testing anything when not built for X11.

Change-Id: I9e9ef8fe738c06eb86f2ce398f6a515bf17e220a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 03:05:31 +02:00
Morten Sorvig
946805f07f Cocoa: Add initial accessibility implementation.
See qcocoaaccessiblity.h for details.

For now only the first level of the hierarchy is
made accessible.

Also add tools/accessibilityinspector which is an
utility for inspecting and debugging the Qt
accessibility tree.

Change-Id: Iff520bec26b3761feb0c2e00471feb379daaa735
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2011-10-19 03:04:40 +02:00
Jason McDonald
d884f24fe1 Prefer QSKIP to QTEST_NOOP_MAIN.
There is no way for a .pro file to know if QProcess is in the Qt build,
so the QProcess autotest cannot be omitted from the build if QProcess is
not available.  Because of this limitation, the test was using
QTEST_NOOP_MAIN when QProcess was not available, making the test appear
to pass.  This commit changes QTEST_NOOP_MAIN to QSKIP, so that the user
receives a clear indication that the test isn't testing anything when
QProcess is not available.

Change-Id: I79f667b17ff98dfc47eb61fb977365abef8883fb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-19 01:38:36 +02:00