summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Hartmann <phartmann@blackberry.com>2013-10-25 10:56:01 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-28 09:36:37 +0100
commit338da730e8bc23e227e26b094cba6bb6233c42de (patch)
tree2a1c3749ed37c2413d3b251f1f4150b2ec575fdf
parentd5a16e4a3c02bd273e1d7329eb02e3e7f60c0b7f (diff)
network: fix multi-phased NTLM authentication
tested manually with internal NTLM proxy. Patch-by: Jonathan Lauvernier <Jonathan.Lauvernier@gmail.com> Change-Id: Ib3ed7aff12cb8d59ffc2b11ecc1c4fdc04acb368 Reviewed-by: Richard J. Moore <rich@kde.org>
-rw-r--r--src/network/kernel/qauthenticator.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/network/kernel/qauthenticator.cpp b/src/network/kernel/qauthenticator.cpp
index e1a24a226f..8c16486878 100644
--- a/src/network/kernel/qauthenticator.cpp
+++ b/src/network/kernel/qauthenticator.cpp
@@ -189,7 +189,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;
}
@@ -267,7 +267,8 @@ void QAuthenticator::detach()
return;
}
- d->phase = QAuthenticatorPrivate::Start;
+ if (d->phase == QAuthenticatorPrivate::Done)
+ d->phase = QAuthenticatorPrivate::Start;
}
/*!