Dear all,

I have a (large) application using TCP sockets to communicate. Both sides
of the TCP connection are the same application on two different machines,
so the code is known and debuggable on both.

Since the app was migrated from Qt 5.4 to 5.6, I have a problem : some
readyRead signals are not emitted, and thus the packets are not processed
on the receiver, until another packet is sent which triggers the
readyRead() signal.

The incomingData() slot connected to QTcpSocket::readyRead() basically
fetches data until QTcpSocket::bytesAvailable() is zero, so I'm not
assuming that QTcpSocket::readyRead() should be emitted twice if two
packets are sent. Also, the sender uses QTcpSocket::flush() after sending
each packet.

I know that this problem may come from my code, and I'm trying to check and
debug everything. But do you know any reason that it could be caused by a
bug or change in behavior of Qt 5.6?

Thanks
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to