aboutsummaryrefslogtreecommitdiffstats
path: root/src/vmime/net/imap/IMAPConnection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vmime/net/imap/IMAPConnection.cpp')
-rw-r--r--src/vmime/net/imap/IMAPConnection.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/vmime/net/imap/IMAPConnection.cpp b/src/vmime/net/imap/IMAPConnection.cpp
index 0bde327b..57f2ff5e 100644
--- a/src/vmime/net/imap/IMAPConnection.cpp
+++ b/src/vmime/net/imap/IMAPConnection.cpp
@@ -72,6 +72,9 @@ IMAPConnection::IMAPConnection(shared_ptr <IMAPStore> store, shared_ptr <securit
m_secured(false), m_firstTag(true), m_capabilitiesFetched(false), m_noModSeq(false)
{
m_tag = make_shared <IMAPTag>();
+
+ m_parser = make_shared <IMAPParser>();
+ m_parser->setTag(m_tag);
}
@@ -135,7 +138,8 @@ void IMAPConnection::connect()
m_socket->connect(address, port);
- m_parser = make_shared <IMAPParser>(m_tag, m_socket, m_timeoutHandler);
+ m_parser->setSocket(m_socket);
+ m_parser->setTimeoutHandler(m_timeoutHandler);
setState(STATE_NON_AUTHENTICATED);
@@ -808,6 +812,7 @@ shared_ptr <const socket> IMAPConnection::getSocket() const
void IMAPConnection::setSocket(shared_ptr <socket> sok)
{
m_socket = sok;
+ m_parser->setSocket(sok);
}