From 351f6eb52bd6b0e8e5d969afa4022dc741df8580 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 29 Jul 2019 14:12:04 +0200 Subject: [PATCH 1/5] Add Third-Party code in qregion.cpp to qt_attribution.json file This makes it visible also in the overview documentation of the module, and can be used to automatically generate attribution documents. The code actually mentions the names and file versions (CVS?) where things got copied from; however, X11 seems to have stopped using CVS a long time ago, and without a server it's hard to determine the exact X11 version that was copied from. It arguably doesn't matter, anyhow, because we won't update the code anymore. Fixes: QTBUG-70556 Change-Id: Ib17117a1a3c4112b81982afbd51273048a43221a Reviewed-by: Edward Welbourne --- src/gui/painting/XCONSORTIUM_LICENSE.txt | 43 +++++++++++++++++++ src/gui/painting/qregion.cpp | 54 ------------------------ src/gui/painting/qt_attribution.json | 15 +++++++ 3 files changed, 58 insertions(+), 54 deletions(-) create mode 100644 src/gui/painting/XCONSORTIUM_LICENSE.txt diff --git a/src/gui/painting/XCONSORTIUM_LICENSE.txt b/src/gui/painting/XCONSORTIUM_LICENSE.txt new file mode 100644 index 00000000000..5d98625787e --- /dev/null +++ b/src/gui/painting/XCONSORTIUM_LICENSE.txt @@ -0,0 +1,43 @@ +Copyright (c) 1987, 1988 X Consortium + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of the X Consortium shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from the X Consortium. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + + All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission. + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. diff --git a/src/gui/painting/qregion.cpp b/src/gui/painting/qregion.cpp index 77718ce747b..69d48fcc58e 100644 --- a/src/gui/painting/qregion.cpp +++ b/src/gui/painting/qregion.cpp @@ -88,60 +88,6 @@ QT_BEGIN_NAMESPACE Example of using complex regions: \snippet code/src_gui_painting_qregion.cpp 0 - \section1 Additional License Information - - On Embedded Linux and X11 platforms, parts of this class rely on - code obtained under the following licenses: - - \legalese - Copyright (c) 1987 X Consortium - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of the X Consortium shall not be - used in advertising or otherwise to promote the sale, use or other dealings - in this Software without prior written authorization from the X Consortium. - \endlegalese - - \br - - \legalese - Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the name of Digital not be - used in advertising or publicity pertaining to distribution of the - software without specific, written prior permission. - - DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING - ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL - DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR - ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, - WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, - ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS - SOFTWARE. - \endlegalese - \sa QPainter::setClipRegion(), QPainter::setClipRect(), QPainterPath */ diff --git a/src/gui/painting/qt_attribution.json b/src/gui/painting/qt_attribution.json index 9d3debc1b97..7b16e8c211e 100644 --- a/src/gui/painting/qt_attribution.json +++ b/src/gui/painting/qt_attribution.json @@ -41,5 +41,20 @@ "LicenseId": "MIT", "LicenseFile": "WEBGRADIENTS_LICENSE.txt", "Copyright": "Copyright (c) 2017 itmeo" + }, + { + "Id": "xserverhelper", + "Name": "X Server helper", + "QDocModule": "qtgui", + "QtUsage": "Used in Qt GUI (QRegion).", + "Files": "qregion.cpp", + + "Description": "Code from X11's region.h, Region.c, poly.h, and PolyReg.c", + "Homepage": "https://www.x.org/", + "License": "X11 License and Historical Permission Notice and Disclaimer", + "LicenseId": "X11 AND HPND", + "LicenseFile": "XCONSORTIUM_LICENSE.txt", + "Copyright": "Copyright (c) 1987, 1988 X Consortium +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts." } ] From 0844be34ba4b9dea5fb00e03becc2e086e58c0ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Wed, 28 Aug 2019 13:37:39 +0200 Subject: [PATCH 2/5] iOS: Skip explicit dead code stripping when generating Xcode projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: QTBUG-73680 Change-Id: I5d17ef6321bb1f800c39c3f80dca9527ad343d12 Reviewed-by: Timur Pocheptsov Reviewed-by: Volker Hilsheimer Reviewed-by: Jörg Bornemann --- mkspecs/features/uikit/gc_binaries.prf | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mkspecs/features/uikit/gc_binaries.prf b/mkspecs/features/uikit/gc_binaries.prf index c4f74459511..aa27e690547 100644 --- a/mkspecs/features/uikit/gc_binaries.prf +++ b/mkspecs/features/uikit/gc_binaries.prf @@ -1,2 +1,6 @@ # bitcode (release mode) is incompatible with splitting sections. -!bitcode|!release: load(gc_binaries) +# We have to explicitly exclude Xcode, as that supports both debug +# and release builds in the same project. Xcode already has a settting +# for dead code stripping which is enabled by default, so we'll still +# strip any libraries build with split sections. +!bitcode|if(!macx-xcode:!release): load(gc_binaries) From 02a62094876c51b71f5922d168305ffc970f24c6 Mon Sep 17 00:00:00 2001 From: Rainer Keller Date: Wed, 28 Aug 2019 09:57:51 +0200 Subject: [PATCH 3/5] Fix invalid end range appended to HTTP request When the end range of a byte range in a HTTP request is skipped the download manager adds 0 it its place when resuming that download. When there is no end range given the value is skipped. Task-number: QTBUG-77867 Change-Id: I52358c94cf56c88217fcc91abb102ed393ac7242 Reviewed-by: Timur Pocheptsov --- src/network/access/qnetworkreplyhttpimpl.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/network/access/qnetworkreplyhttpimpl.cpp b/src/network/access/qnetworkreplyhttpimpl.cpp index 2d7649fa61d..9d338f9003a 100644 --- a/src/network/access/qnetworkreplyhttpimpl.cpp +++ b/src/network/access/qnetworkreplyhttpimpl.cpp @@ -752,8 +752,9 @@ void QNetworkReplyHttpImplPrivate::postRequest(const QNetworkRequest &newHttpReq quint64 requestStartOffset = requestRange.left(index).toULongLong(); quint64 requestEndOffset = requestRange.mid(index + 1).toULongLong(); + // In case an end offset is not given it is skipped from the request range requestRange = "bytes=" + QByteArray::number(resumeOffset + requestStartOffset) + - '-' + QByteArray::number(requestEndOffset); + '-' + (requestEndOffset ? QByteArray::number(requestEndOffset) : QByteArray()); httpRequest.setHeaderField("Range", requestRange); } else { From 7b2dfb37ee5a4252d83e7b08970107a15561fe61 Mon Sep 17 00:00:00 2001 From: Fredrik Orderud Date: Wed, 28 Aug 2019 09:19:05 +0200 Subject: [PATCH 4/5] Remove hardcoded qt_instdate field from binary Move hardcoded date to the only client code in the repo. This field is currently modified by MaintenanceTool and possibly windeployqt, which contributes to breaking the DLL signature on Windows. Removing the field should avoid this problem. Task-number: QTBUG-76985 Change-Id: I01386136ac493ea50c99c05879a3e215f3f6344c Reviewed-by: Thiago Macieira --- configure.pri | 3 --- src/corelib/global/qlibraryinfo.cpp | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/configure.pri b/configure.pri index 09c34af4ee2..b109192bebb 100644 --- a/configure.pri +++ b/configure.pri @@ -835,9 +835,6 @@ defineTest(qtConfOutput_preparePaths) { addConfStr($$[QMAKE_SPEC]) $${currentConfig}.output.qconfigSource = \ - "/* Installation date */" \ - "static const char qt_configure_installation [12+11] = \"qt_instdate=2012-12-20\";" \ - "" \ "/* Installation Info */" \ "static const char qt_configure_prefix_path_str [12+256] = \"qt_prfxpath=$$config.input.prefix\";" \ "$${LITERAL_HASH}ifdef QT_BUILD_QMAKE" \ diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp index c0a5369cdd7..5634d6e6c3e 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp @@ -274,7 +274,7 @@ QLibraryInfo::licensedProducts() QDate QLibraryInfo::buildDate() { - return QDate::fromString(QString::fromLatin1(qt_configure_installation + 12), Qt::ISODate); + return QDate::fromString(QString::fromLatin1("2012-12-20"), Qt::ISODate); } #endif #endif // datestring From c53f84300111c90b8a63e117fe834a3d52df54c3 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Fri, 30 Aug 2019 10:15:27 +0200 Subject: [PATCH 5/5] Doc: Clarify QJsonDocument::toJson() Mention that this method returns an indented document. Change-Id: I0cadcc1c894c9a87910cfce389c6a5288238044d Reviewed-by: Christian Kandeler Reviewed-by: Leena Miettinen --- src/corelib/serialization/qjsondocument.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/serialization/qjsondocument.cpp b/src/corelib/serialization/qjsondocument.cpp index 0cd86d3dedb..aaa4bda19f2 100644 --- a/src/corelib/serialization/qjsondocument.cpp +++ b/src/corelib/serialization/qjsondocument.cpp @@ -331,7 +331,7 @@ QVariant QJsonDocument::toVariant() const } /*! - Converts the QJsonDocument to a UTF-8 encoded JSON document. + Converts the QJsonDocument to an indented, UTF-8 encoded JSON document. \sa fromJson() */