Merge remote-tracking branch 'origin/5.11' into dev
Change-Id: Ib21e6b9030b4d5363f440d082ce3df28098d1b95
This commit is contained in:
commit
699a263b29
@ -779,7 +779,7 @@ typename QVector<T>::iterator QVector<T>::insert(iterator before, T &&t)
|
||||
}
|
||||
} else {
|
||||
T *b = d->begin() + offset;
|
||||
memmove(b + 1, b, (d->size - offset) * sizeof(T));
|
||||
memmove(static_cast<void *>(b + 1), static_cast<const void *>(b), (d->size - offset) * sizeof(T));
|
||||
new (b) T(std::move(t));
|
||||
}
|
||||
d->size += 1;
|
||||
|
@ -179,7 +179,7 @@ QT_FT_Outline *QOutlineMapper::convertPath(const QVectorPath &path)
|
||||
|
||||
m_elements.resize(count);
|
||||
if (count)
|
||||
memcpy(m_elements.data(), path.points(), count* sizeof(QPointF));
|
||||
memcpy(static_cast<void *>(m_elements.data()), static_cast<const void *>(path.points()), count* sizeof(QPointF));
|
||||
|
||||
m_element_types.resize(0);
|
||||
}
|
||||
|
@ -5622,8 +5622,8 @@ void QPainterPrivate::drawGlyphs(const quint32 *glyphArray, QFixedPoint *positio
|
||||
QVarLengthArray<QGlyphJustification, 128> glyphJustifications(glyphCount);
|
||||
QVarLengthArray<QGlyphAttributes, 128> glyphAttributes(glyphCount);
|
||||
memset(glyphAttributes.data(), 0, glyphAttributes.size() * sizeof(QGlyphAttributes));
|
||||
memset(advances.data(), 0, advances.size() * sizeof(QFixed));
|
||||
memset(glyphJustifications.data(), 0, glyphJustifications.size() * sizeof(QGlyphJustification));
|
||||
memset(static_cast<void *>(advances.data()), 0, advances.size() * sizeof(QFixed));
|
||||
memset(static_cast<void *>(glyphJustifications.data()), 0, glyphJustifications.size() * sizeof(QGlyphJustification));
|
||||
|
||||
textItem.glyphs.numGlyphs = glyphCount;
|
||||
textItem.glyphs.glyphs = const_cast<glyph_t *>(glyphArray);
|
||||
|
@ -1257,6 +1257,11 @@ void QCocoaWindow::recreateWindowIfNeeded()
|
||||
if ((isContentView() && !shouldBeContentView) || (recreateReason & PanelChanged)) {
|
||||
if (m_nsWindow) {
|
||||
qCDebug(lcQpaCocoaWindow) << "Getting rid of existing window" << m_nsWindow;
|
||||
if (m_nsWindow.observationInfo) {
|
||||
qCCritical(lcQpaCocoaWindow) << m_nsWindow << "has active key-value observers (KVO)!"
|
||||
<< "These will stop working now that the window is recreated, and will result in exceptions"
|
||||
<< "when the observers are removed. Break in QCocoaWindow::recreateWindowIfNeeded to debug.";
|
||||
}
|
||||
[m_nsWindow closeAndRelease];
|
||||
if (isContentView()) {
|
||||
// We explicitly disassociate m_view from the window's contentView,
|
||||
|
66
src/testlib/doc/snippets/code/doc_src_qtqskip.cpp
Normal file
66
src/testlib/doc/snippets/code/doc_src_qtqskip.cpp
Normal file
@ -0,0 +1,66 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2018 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the documentation of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:BSD$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** BSD License Usage
|
||||
** Alternatively, you may use this file under the terms of the BSD license
|
||||
** as follows:
|
||||
**
|
||||
** "Redistribution and use in source and binary forms, with or without
|
||||
** modification, are permitted provided that the following conditions are
|
||||
** met:
|
||||
** * Redistributions of source code must retain the above copyright
|
||||
** notice, this list of conditions and the following disclaimer.
|
||||
** * Redistributions in binary form must reproduce the above copyright
|
||||
** notice, this list of conditions and the following disclaimer in
|
||||
** the documentation and/or other materials provided with the
|
||||
** distribution.
|
||||
** * Neither the name of The Qt Company Ltd nor the names of its
|
||||
** contributors may be used to endorse or promote products derived
|
||||
** from this software without specific prior written permission.
|
||||
**
|
||||
**
|
||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
//! [0]
|
||||
|
||||
if ( tst_Databases::getMySqlVersion( db ).section( QChar('.'), 0, 0 ).toInt()<5 )
|
||||
QSKIP( "Test requires MySQL >= 5.0");
|
||||
//! [0]
|
||||
//! [1]
|
||||
void tst_Skip::test_data()
|
||||
{
|
||||
QTest::addColumn<bool>("bool");
|
||||
QTest::newRow("local 1") << false;
|
||||
QTest::newRow("local 2") << true;
|
||||
|
||||
QSKIP("skipping all");
|
||||
}
|
||||
//! [1]
|
||||
void tst_Skip::test_data()
|
@ -382,6 +382,7 @@
|
||||
\li \l {Chapter 3: Simulating GUI Events}{Simulating GUI Events}
|
||||
\li \l {Chapter 4: Replaying GUI Events}{Replaying GUI Events}
|
||||
\li \l {Chapter 5: Writing a Benchmark}{Writing a Benchmark}
|
||||
\li \l {Chapter 6: Skipping Tests with QSKIP}{Skipping Tests}
|
||||
\endlist
|
||||
|
||||
*/
|
||||
@ -715,6 +716,7 @@
|
||||
|
||||
\previouspage {Chapter 4: Replaying GUI Events}{Chapter 4}
|
||||
\contentspage {Qt Test Tutorial}{Contents}
|
||||
\nextpage {Chapter 6: Skipping Tests with QSKIP}{Chapter 6}
|
||||
|
||||
\title Chapter 5: Writing a Benchmark
|
||||
\brief How to write a benchmark.
|
||||
@ -765,3 +767,48 @@
|
||||
for more information on these tools and a simple graphing example.
|
||||
|
||||
*/
|
||||
/*!
|
||||
\page qttestlib-tutorial6.html
|
||||
|
||||
\previouspage {Chapter 5: Writing a Benchmark}{Chapter 5}
|
||||
\contentspage {Qt Test Tutorial}{Contents}
|
||||
|
||||
\title Chapter 6: Skipping Tests with QSKIP
|
||||
\brief How to skip tests in certain cases.
|
||||
|
||||
\section2 Using QSKIP(\a description) in a test function
|
||||
|
||||
If the QSKIP() macro is called from a test function, it stops
|
||||
the execution of the test without adding a failure to the test log.
|
||||
It can be used to skip tests that are certain to fail. The text in
|
||||
the QSKIP \a description parameter is appended to the test log,
|
||||
and explains why the test was not carried out.
|
||||
|
||||
QSKIP can be used to skip testing when the implementation is not yet
|
||||
complete or not supported on a certain platform. When there are known
|
||||
failures, it is recommended to use QEXPECT_FAIL, so that the test is
|
||||
always completely executed.
|
||||
|
||||
Example of QSKIP in a test function:
|
||||
|
||||
\snippet code/doc_src_qtqskip.cpp 0
|
||||
|
||||
In a data-driven test, each call to QSKIP() skips only the current
|
||||
row of test data. If the data-driven test contains an unconditional
|
||||
call to QSKIP, it produces a skip message for each row of test data.
|
||||
|
||||
\section2 Using QSKIP in a _data function
|
||||
|
||||
If called from a _data function, the QSKIP() macro stops
|
||||
execution of the _data function. This prevents execution of the
|
||||
associated test function.
|
||||
|
||||
See below for an example:
|
||||
|
||||
\snippet code/doc_src_qtqskip.cpp 1
|
||||
|
||||
\section2 Using QSKIP from initTestCase() or initTestCase_data()
|
||||
|
||||
If called from \c initTestCase() or \c initTestCase_data(), the
|
||||
QSKIP() macro will skip all test and _data functions.
|
||||
*/
|
||||
|
@ -83,9 +83,10 @@ bool runClient()
|
||||
socket.connectToServer(serverName, QLocalSocket::ReadWrite);
|
||||
if (socket.waitForConnected())
|
||||
break;
|
||||
if (socket.error() == QLocalSocket::ServerNotFoundError) {
|
||||
if (socket.error() == QLocalSocket::ServerNotFoundError
|
||||
|| socket.error() == QLocalSocket::ConnectionRefusedError) {
|
||||
if (connectTimer.elapsed() > 5000) {
|
||||
fprintf(stderr, "client: server not found. Giving up.\n");
|
||||
fprintf(stderr, "client: server not found or connection refused. Giving up.\n");
|
||||
return false;
|
||||
}
|
||||
printf("client: server not found. Trying again...\n");
|
||||
|
@ -4,6 +4,8 @@ ubuntu-16.04
|
||||
[saveRestoreGeometry]
|
||||
ubuntu-16.04
|
||||
b2qt
|
||||
# QTBUG-66708
|
||||
opensuse
|
||||
[restoreVersion1Geometry]
|
||||
xcb
|
||||
osx
|
||||
|
Loading…
Reference in New Issue
Block a user