Go to file
Marc Mutz ae445b20fa QEasingCurve: simplify and fix copy constructor
The copy constructor used the default Private constructor,
followed by the application of the compiler-generated
copy assignment operator, and finally replaced the config
member with a copy of itself.

This is needlessly inefficient.

Worse: it's incorrect: if config->copy() throws, then
*d_ptr is leaked.

Solution: implement the copy constructor for Private,
and use it in the copy constructor of the public class.

Effect: everything that can throw now prevents the new
Private class from being created, and the compiler ends
up cleaning up after us.

Change-Id: I09ed18bb39ee7cd81aaa8ba01676fc202502a8e3
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-21 15:28:40 +01:00
bin Ensure the directory exists to receive a deprecated header. 2012-02-20 13:25:46 +01:00
config.tests Clean up default arch setting on Mac OS X 2012-02-17 11:44:29 +01:00
dist Remove qMacVersion() 2012-02-21 12:48:04 +01:00
doc/src Remove QAccessibleInterface::navigate() 2012-02-20 11:46:16 +01:00
examples Fortune client example - list all IP addresses 2012-02-17 11:44:29 +01:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs Make sure that we pick up xcb from pkg-config 2012-02-20 15:17:08 +01:00
qmake Implement QMAKE_SUBSTITUTES.config = verbatim. 2012-02-11 13:30:31 +01:00
src QEasingCurve: simplify and fix copy constructor 2012-02-21 15:28:40 +01:00
tests QEasingCurve: implement move constructor 2012-02-21 15:28:40 +01:00
tools don't attempt to build host tools which are gone from qtbase 2012-02-20 19:51:41 +01:00
util Avoid non-standard indentation of license headers. 2012-01-30 16:40:10 +01:00
.gitattributes Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
.gitignore Import QMimeType / QMimeDatabase into QtCore. 2012-02-18 22:19:43 +01:00
.tag Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
configure Make sure that we pick up xcb from pkg-config 2012-02-20 15:17:08 +01:00
configure.bat bootstrap configure.exe on windows 2012-02-16 01:56:21 +01:00
header.BSD Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.FDL Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.LGPL Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.LGPL-ONLY Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
INSTALL Remove Symbian specific code from qtbase. 2012-01-31 07:08:31 +01:00
LGPL_EXCEPTION.txt Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.LGPL Update contact information in license headers. 2012-01-23 04:04:33 +01:00
LICENSE.PREVIEW.COMMERCIAL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
qtbase.pro Add configure, sync.profile, and header.* to OTHER_FILES in qtbase.pro 2012-02-08 07:40:03 +01:00
sync.profile Add qprocessordetection.h 2012-02-08 12:33:11 +01:00