From 37ab8b4ed744f403d6c958284a9108dd1979b7f1 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 23 Jul 2013 11:32:32 +0200 Subject: [PATCH 1/6] CMake: Remove copy-pasto for the IMPORTED_LOCATION Task-number: QTBUG-32579 Change-Id: Ibe9dd92824091989168fca842a59b556937b1f08 Reviewed-by: Oswald Buddenhagen Reviewed-by: Stephen Kelly --- mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in index bcff3166d3..478d1d13d5 100644 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in @@ -49,7 +49,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") !!ELSE - set(imported_location \"IMPORTED_LOCATION_${Configuration}\" \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") !!ENDIF _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES From 27313d12449cf9e84ca1e3ebb723c23a889edc18 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 23 Jul 2013 09:43:15 +0200 Subject: [PATCH 2/6] CMake: Add a clean_path before returning a path. The $$path may already be absolute, so prepending a slash may result in //usr/lib, for example. Task-number: QTBUG-32570 Change-Id: If7a4f6fbec0216404cfe48c1da62d21d75b3e272 Reviewed-by: Oswald Buddenhagen Reviewed-by: Stephen Kelly --- mkspecs/features/cmake_functions.prf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mkspecs/features/cmake_functions.prf b/mkspecs/features/cmake_functions.prf index 2dc72a7a2f..fac73b464c 100644 --- a/mkspecs/features/cmake_functions.prf +++ b/mkspecs/features/cmake_functions.prf @@ -29,7 +29,7 @@ defineReplace(cmakeTargetPath) { SYSR = $$[QT_SYSROOT] !isEmpty(SYSR): path = $$relative_path($$1, $$[QT_SYSROOT]) else: path = $$1 - return(/$$path) + return($$clean_path(/$$path)) } defineReplace(cmakeTargetPaths) { From 9b7adfa081b5ded58b682b88ef8f378a5ff53a18 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 23 Jul 2013 10:23:08 +0200 Subject: [PATCH 3/6] Move the cmakeRelativePath function to cmake_functions. Task-number: QTBUG-32570 Change-Id: I05bbf7084ef8501bf17698f2ecc1cf3d8fd4d460 Reviewed-by: Oswald Buddenhagen Reviewed-by: Stephen Kelly --- mkspecs/features/cmake_functions.prf | 5 +++++ mkspecs/features/create_cmake.prf | 5 ----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mkspecs/features/cmake_functions.prf b/mkspecs/features/cmake_functions.prf index fac73b464c..a9b0c86cad 100644 --- a/mkspecs/features/cmake_functions.prf +++ b/mkspecs/features/cmake_functions.prf @@ -63,3 +63,8 @@ defineReplace(cmakeProcessLibs) { } return ($$join(out, ";")) } + +defineReplace(cmakeRelativePath) { + path = $$relative_path($$1, $$2) + return($$replace(path, ([^/])$, \\1/)) +} diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index 7a200056ae..58a0620e01 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -11,11 +11,6 @@ load(cmake_functions) -defineReplace(cmakeRelativePath) { - path = $$relative_path($$1, $$2) - return($$replace(path, ([^/])$, \\1/)) -} - CMAKE_MODULE_NAME = $$cmakeModuleName($${MODULE}) CMAKE_MODULE_DEPS = $$cmakeModuleList($$sort_depends(QT.$${MODULE}.depends, QT.)) From 880f73d1f0382d4ac91f54f47e1c6be0b760c393 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 23 Jul 2013 10:23:47 +0200 Subject: [PATCH 4/6] Use absolute path in the /usr move workaround if -libdir is specified Change-Id: I68d087b15839418008db5bf1c0c76ca303245519 Reviewed-by: Oswald Buddenhagen Reviewed-by: Stephen Kelly --- mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in index 478d1d13d5..c4b58fe7d7 100644 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in @@ -4,6 +4,9 @@ if (CMAKE_VERSION VERSION_LESS 2.8.3) endif() !!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) +!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") +!!ELSE get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH) # Use original install prefix when loaded through a # cross-prefix symbolic link such as /lib -> /usr/lib. @@ -17,6 +20,7 @@ endif() unset(_realOrig) unset(_realCurr) unset(_IMPORT_PREFIX) +!!ENDIF !!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE) !!ELSE From 3f95ae8e2f7568313da5e4c3157e3285b5fdda09 Mon Sep 17 00:00:00 2001 From: Topi Reinio Date: Tue, 23 Jul 2013 11:22:44 +0200 Subject: [PATCH 5/6] Doc: Update documentation of Qt::HANDLE Qt::HANDLE is always defined as 'void *' on Qt 5.0 Task-number: QTBUG-32469 Change-Id: I3f0f2b19e65d54c88604e1cb65b5791c456b3003 Reviewed-by: Jerome Pasion --- src/corelib/global/qnamespace.qdoc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc index f9248eb68d..677cddc87e 100644 --- a/src/corelib/global/qnamespace.qdoc +++ b/src/corelib/global/qnamespace.qdoc @@ -1207,12 +1207,8 @@ /*! \typedef Qt::HANDLE - Platform-specific handle type for system objects. This is - equivalent to \c{void *} on Mac OS X and embedded Linux, - and to \c{unsigned long} on X11. On Windows it is the - DWORD returned by the Win32 function getCurrentThreadId(). - - \warning Using this type is not portable. + A handle type for system objects, defined as \c{void *} + on all platforms. */ /*! From 78f9f4b4970e6f4155b7cf2e88c6ac540dec47bc Mon Sep 17 00:00:00 2001 From: Peter Hartmann Date: Mon, 22 Jul 2013 12:14:41 +0200 Subject: [PATCH 6/6] HTTP internals: do not access reply that was deleted already ... rather than crashing. Task-number: QTBUG-32404 Change-Id: Ia2f938394fb451459564ef5966419f952b3e2d0e Reviewed-by: Richard J. Moore --- src/network/access/qhttpnetworkconnectionchannel.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index 5c537691e2..e14f426583 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -1116,6 +1116,9 @@ void QHttpNetworkConnectionChannel::_q_error(QAbstractSocket::SocketError socket errorCode = QNetworkReply::RemoteHostClosedError; } } else if (state == QHttpNetworkConnectionChannel::ReadingState) { + if (!reply) + break; + if (!reply->d_func()->expectContent()) { // No content expected, this is a valid way to have the connection closed by the server return;