Go to file
Thiago Macieira 04c57b6886 QFile::copy(): don't trust the old file metadata cache
Instead, let's just use sendfile(2) in a loop until it returns 0, which
indicates EOF.

[ChangeLog][QtCore][QFile] Fixed a regression in QFile::copy() that
caused the original file not to be copied entirely if it was modified
outside of this QFile object between the last time we checked its size
and the copy() call. Note this is not a prevention against race
conditions.

Task-number: QTBUG-69417
Change-Id: Id59bdd8f1a804b809e22fffd15406c8aa31f4a1e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-07-12 20:15:20 +00:00
bin syncqt: make it possible to declare particular headers being private 2018-06-25 09:48:37 +00:00
config.tests Merge remote-tracking branch 'origin/5.9' into 5.11 2018-02-14 12:51:24 +01:00
dist Merge remote-tracking branch 'origin/5.11.1' into 5.11 2018-06-19 13:12:48 +02:00
doc Correct the documented visibility of some Widget methods 2018-07-11 15:21:56 +00:00
examples Doc: Add references to QDBusAbstractAdaptor implementation example 2018-06-29 05:16:04 +00:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Fix QtWayland non-toplevel in-source builds 2018-06-27 18:58:41 +00:00
qmake Fix recursive qmake xcode project generation with shadow builds 2018-07-09 16:37:52 +00:00
src QFile::copy(): don't trust the old file metadata cache 2018-07-12 20:15:20 +00:00
tests Show the toolbutton's menu in the right place on multiple screens 2018-07-10 15:24:16 +00:00
util QtEdidSupport: Fix private headers 2018-02-02 07:21:49 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore gitignore: don't ignore Info.plist templates for libraries 2017-11-23 07:07:48 +00:00
.qmake.conf Bump version 2018-06-01 10:37:15 +00:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
config_help.txt configure: mention -libudev in help output 2018-04-20 10:38:03 +00:00
configure configure: Detect Cocoa instead of Carbon 2018-04-05 21:04:22 +00:00
configure.bat configure: Prefer cl.exe over clang-cl.exe 2018-01-04 21:22:42 +00:00
configure.json configure: don't emit empty GCC_MACHINE_DUMP to qdevice.pri 2018-04-25 18:53:33 +00:00
configure.pri Replace commercial preview license with Qt License Agreement 4.0 2018-06-21 11:39:15 +00:00
header.BSD Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.FDL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL-EXCEPT Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3-COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-NOGPL2 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-ONLY Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
INSTALL Doc: Update links in INSTALL file 2015-02-16 09:06:41 +00:00
LGPL_EXCEPTION.txt Update copyright headers 2015-02-11 06:49:51 +00:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Remove LICENSE.GPLv3, LICENSE.LGPLv21, LGPL_EXCEPTION.txt 2018-04-16 11:02:14 +00:00
LICENSE.QT-LICENSE-AGREEMENT-4.0 Replace commercial preview license with Qt License Agreement 4.0 2018-06-21 11:39:15 +00:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile Testlib: Rename qtest_global.h to qttestglobal.h 2018-03-21 10:31:01 +00:00