@@ -1741,26 +1741,29 @@ private static void DisplayDelayedLogins(NetworkTrace Trace)
17411741
17421742 foreach ( ConversationData c in s . conversations )
17431743 {
1744+ long cStart = ( ( FrameData ) c . frames [ 0 ] ) . ticks ;
1745+
17441746 // check whether the login sequence is visible; if not, skip this connection
17451747 string loginFlags = c . loginFlags . Trim ( ) ;
17461748 bool hasLoginSequence = loginFlags != "AD" && loginFlags != "" ; // if blank or only 'AD' then we are past the login phase
17471749 if ( ! hasLoginSequence ) continue ; // try the next connection
17481750
1749- // if we have login failures, was the total duration more than 2 seconds
1750- long duration = ( ( FrameData ) c . frames [ c . frames . Count - 1 ] ) . ticks - ( ( FrameData ) c . frames [ 0 ] ) . ticks ;
1751- if ( ! c . hasLoginFailure || duration < 2 * utility . TICKS_PER_SECOND ) continue ;
1751+ // was the total duration more than 2 seconds
1752+ long duration = ( ( FrameData ) c . frames [ c . frames . Count - 1 ] ) . ticks - cStart ;
1753+ if ( duration < 2 * utility . TICKS_PER_SECOND ) continue ;
17521754
17531755 // if we are encrypted, was the time up until the Login packet greater than 2 seconds?
17541756 // the packets after that are all encrypted, so we can't reliably time them
17551757 if ( c . isEncrypted )
17561758 {
17571759 if ( c . LoginTime != 0 && c . LoginDelay ( "AD" , firstTick ) < 2 * utility . TICKS_PER_SECOND ) continue ;
17581760 }
1759-
1760- // check whether we completed the login
1761- long cStart = ( ( FrameData ) c . frames [ 0 ] ) . ticks ;
1762- if ( c . LoginAckTime != 0 && c . LoginDelay ( "LA" , firstTick ) < 2 * utility . TICKS_PER_SECOND ) continue ;
1763- if ( c . ErrorTime != 0 && c . LoginDelay ( "ER" , firstTick ) < 2 * utility . TICKS_PER_SECOND ) continue ;
1761+ else
1762+ {
1763+ // check whether we completed the login in < 2 seconds
1764+ if ( c . LoginAckTime != 0 && c . LoginDelay ( "LA" , firstTick ) < 2 * utility . TICKS_PER_SECOND ) continue ;
1765+ if ( c . ErrorTime != 0 && c . LoginDelay ( "ER" , firstTick ) < 2 * utility . TICKS_PER_SECOND ) continue ;
1766+ }
17641767
17651768 hasDelay = true ;
17661769
0 commit comments