diff options
Diffstat (limited to 'src/corelib/tools')
-rw-r--r-- | src/corelib/tools/qeasingcurve.cpp | 15 | ||||
-rw-r--r-- | src/corelib/tools/qeasingcurve.h | 3 |
2 files changed, 3 insertions, 15 deletions
diff --git a/src/corelib/tools/qeasingcurve.cpp b/src/corelib/tools/qeasingcurve.cpp index 7a47262798..1ca9a55d72 100644 --- a/src/corelib/tools/qeasingcurve.cpp +++ b/src/corelib/tools/qeasingcurve.cpp @@ -1100,22 +1100,9 @@ QEasingCurve::~QEasingCurve() } /*! + \fn QEasingCurve &QEasingCurve::operator=(const QEasingCurve &other) Copy \a other. */ -QEasingCurve &QEasingCurve::operator=(const QEasingCurve &other) -{ - // ### non-atomic, requires malloc on shallow copy - if (d_ptr->config) { - delete d_ptr->config; - d_ptr->config = 0; - } - - *d_ptr = *other.d_ptr; - if (other.d_ptr->config) - d_ptr->config = other.d_ptr->config->copy(); - - return *this; -} /*! \fn void QEasingCurve::swap(QEasingCurve &other) diff --git a/src/corelib/tools/qeasingcurve.h b/src/corelib/tools/qeasingcurve.h index 64e4027fc4..f3c7c9b618 100644 --- a/src/corelib/tools/qeasingcurve.h +++ b/src/corelib/tools/qeasingcurve.h @@ -82,7 +82,8 @@ public: QEasingCurve(const QEasingCurve &other); ~QEasingCurve(); - QEasingCurve &operator=(const QEasingCurve &other); + QEasingCurve &operator=(const QEasingCurve &other) + { if ( this != &other ) { QEasingCurve copy(other); swap(copy); } return *this; } #ifdef Q_COMPILER_RVALUE_REFS QEasingCurve(QEasingCurve &&other) : d_ptr(other.d_ptr) { other.d_ptr = 0; } QEasingCurve &operator=(QEasingCurve &&other) |