1. Jun 12, 2016
  2. Apr 07, 2016
  3. Mar 10, 2016
  4. Jan 20, 2016
  5. Sep 04, 2015
    • Peter Kümmel's avatar
      Set parent of internal socket objects · e8335d48
      Peter Kümmel authored
      After moving the websocket into another thread
      current code doesn't work because then the QTcpSocket/QSslSocket
      objects reside in a different thread, for instance:
      "QSocketNotifier: Socket notifiers cannot be enabled or disabled from another thread"
      
      QObject::moveToThread(QThread*) also moves QObjects's children,
      therefore their internal socket objects need to be children of QWebSocket.
      
      QWebSocket has ownership of the internal socket, and the
      smart pointer is not needed any more.
      
      Change of cleanup code to prevent crashes with clang/msvc builds:
      QWebSocketPrivate is a scoped member of QObject (not QWebSocket)
      and is destroyed after QObject destructor body was executed,
      and so  m_pSocket&co had already been destroyed (being children)
      when the destructor of QWebSocketPrivate is called via the
      scoped pointer.
      
      Analogous to 64927e04
      
      
      
      Change-Id: I1ade6cda3fa793c30332cc5e103025e2dda3c78c
      Reviewed-by: default avatarLuca Niccoli <lultimouomo@gmail.com>
      Reviewed-by: default avatarAlex Blasche <alexander.blasche@theqtcompany.com>
      e8335d48
  6. May 26, 2015
  7. May 22, 2015
  8. Apr 09, 2015
  9. Apr 08, 2015
  10. Feb 24, 2015
  11. Feb 16, 2015
  12. Dec 29, 2014
  13. Nov 19, 2014
  14. Nov 03, 2014
  15. Oct 15, 2014
  16. Oct 10, 2014
  17. Aug 24, 2014
  18. Jun 25, 2014
  19. May 08, 2014
  20. Apr 09, 2014
  21. Mar 18, 2014
  22. Mar 17, 2014
  23. Mar 12, 2014
  24. Feb 15, 2014
  25. Feb 11, 2014
  26. Feb 07, 2014
  27. Feb 06, 2014
    • Milian Wolff's avatar
      Do not double-delete the TCP socket of a QWebSocket. · daf0faa0
      Milian Wolff authored
      
      The socket is put into an owning QScopedPointer. But if its also
      put into the QObject parent-child chain, it will get deleted when
      the QWebSocket is destroyed. In the dtor of the QWebSocketPrivate
      class m_pSocket will thus already be destroyed and thus be a
      dangling pointer.
      
      This crashed the QWebSocketServer test reliably for me on exit.
      
      Change-Id: I7f06e933bfed832e66b943542c351cde639c9465
      Reviewed-by: default avatarKurt Pattyn <pattyn.kurt@gmail.com>
      daf0faa0
    • Milian Wolff's avatar
      Fix assertion when encountering invalid header line. · 47cbfe2a
      Milian Wolff authored
      
      The server test sets an empty identifier which results in a
      headerLine containing "Server: ". The split then yields a list
      with a single entry ("Server"). Calling [1] on it asserts then.
      
      QFATAL : tst_QWebSocketServer::tst_connectivity()
       ASSERT failure in QList<T>::operator[]: "index out of range", file
      /ssd/milian/projects/compiled/qt5/include/QtCore/qlist.h, line 476
      
      Change-Id: I3e5c4750b304b2a4a5669a39e2d65a6b3e4e99cf
      Reviewed-by: default avatarKurt Pattyn <pattyn.kurt@gmail.com>
      47cbfe2a
    • Milian Wolff's avatar
      Do not access QObject API before its private data is initialized. · 6e7f54a0
      Milian Wolff authored
      
      Inside the ctor of the private data, the QObject has not yet
      been associated with the data. Thus, accessing it indirectly i.e.
      to setup private signal/slot connections, will trigger crashes.
      
      Now we delay accessing this API and call an init() function manually
      in the parent QObject-inheriting class.
      
      Change-Id: I2c3ce7335c54d42af6bce87de867ee0ef197efc6
      Reviewed-by: default avatarKurt Pattyn <pattyn.kurt@gmail.com>
      6e7f54a0
  28. Feb 05, 2014
  29. Feb 01, 2014