diff options
-rw-r--r-- | src/network/kernel/qauthenticator.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp index b4a9c31..4d8fb16 100644 --- a/src/network/kernel/qauthenticator.cpp +++ b/src/network/kernel/qauthenticator.cpp @@ -176,7 +176,7 @@ QAuthenticator &QAuthenticator::operator=(const QAuthenticator &other) d->realm = other.d->realm; d->method = other.d->method; d->options = other.d->options; - } else { + } else if (d->phase == QAuthenticatorPrivate::Start) { delete d; d = 0; } @@ -250,7 +250,8 @@ void QAuthenticator::detach() return; } - d->phase = QAuthenticatorPrivate::Start; + if (d->phase == QAuthenticatorPrivate::Done) + d->phase = QAuthenticatorPrivate::Start; } /*! |