Commit 9802eeb999f20453995f7d4d7f6ed92e197539be
1 parent
e8f6540b
statement changes
Showing
1 changed file
with
5 additions
and
4 deletions
src/clientpaho.cpp
| ... | ... | @@ -377,10 +377,10 @@ std::int32_t ClientPaho::publish( const MqttMessage& message, int qos ) |
| 377 | 377 | } |
| 378 | 378 | |
| 379 | 379 | std::unique_lock<std::mutex> lck(m_mutex); |
| 380 | - if( ConnectionStatus::ReconnectInProgress == m_connectionStatus || ConnectionStatus::ConnectInProgress == m_connectionStatus || m_processPendingPublishes ) | |
| 380 | + if( ConnectionStatus::Connected != m_connectionStatus || m_processPendingPublishes ) | |
| 381 | 381 | { |
| 382 | 382 | m_pendingPublishesReadyCV.wait(lck, [this]() { return !m_processPendingPublishes; }); |
| 383 | - if( ConnectionStatus::ReconnectInProgress == m_connectionStatus || ConnectionStatus::ConnectInProgress == m_connectionStatus ) | |
| 383 | + if( ConnectionStatus::Connected != m_connectionStatus ) | |
| 384 | 384 | { |
| 385 | 385 | LogDebug( "[ClientPaho::publish]", "Adding publish to pending queue." ); |
| 386 | 386 | m_pendingPublishes.push_front( Publish{ qos, message } ); |
| ... | ... | @@ -789,6 +789,8 @@ void ClientPaho::onConnectOnInstance( const std::string& cause ) |
| 789 | 789 | |
| 790 | 790 | void ClientPaho::onConnectSuccessOnInstance() |
| 791 | 791 | { |
| 792 | + m_processPendingPublishes = true; | |
| 793 | + | |
| 792 | 794 | LogDebug( "[ClientPaho::onConnectSuccessOnInstance]", |
| 793 | 795 | std::string( m_clientId + " - onConnectSuccessOnInstance triggered." ) ); |
| 794 | 796 | { |
| ... | ... | @@ -1127,8 +1129,7 @@ void ClientPaho::onFirstConnect( void* context, char* cause ) |
| 1127 | 1129 | { |
| 1128 | 1130 | auto *cl = reinterpret_cast<ClientPaho*>( context ); |
| 1129 | 1131 | std::string reason( nullptr == cause ? "Unknown cause" : cause ); |
| 1130 | - //cl->pushIncomingEvent( [cl, reason]() { cl->onConnectSuccessOnInstance(); } ); | |
| 1131 | - cl->pushIncomingEvent( [cl, reason]() { cl->onConnectOnInstance( reason ); } ); | |
| 1132 | + cl->pushIncomingEvent( [cl, reason]() { cl->onConnectSuccessOnInstance(); } ); | |
| 1132 | 1133 | } |
| 1133 | 1134 | } |
| 1134 | 1135 | ... | ... |