Przeglądaj źródła

LibTLS: Ensure that on_tls_finished is called only once

Connection state changes when the logical transport is closed should
not trigger tls_finished.
Ali Mohammad Pur 4 lat temu
rodzic
commit
2a7cb4fe42
1 zmienionych plików z 1 dodań i 1 usunięć
  1. 1 1
      Userland/Libraries/LibTLS/Socket.cpp

+ 1 - 1
Userland/Libraries/LibTLS/Socket.cpp

@@ -195,7 +195,7 @@ bool TLSv12::check_connection_state(bool read)
         return false;
         return false;
     }
     }
     if (((read && m_context.application_buffer.size() == 0) || !read) && m_context.connection_finished) {
     if (((read && m_context.application_buffer.size() == 0) || !read) && m_context.connection_finished) {
-        if (m_context.application_buffer.size() == 0) {
+        if (m_context.application_buffer.size() == 0 && m_context.connection_status != ConnectionStatus::Disconnected) {
             if (on_tls_finished)
             if (on_tls_finished)
                 on_tls_finished();
                 on_tls_finished();
         }
         }