src/eric7/Debugger/DebuggerInterfacePython.py

branch
eric7-maintenance
changeset 10733
d96c69a235fc
parent 10694
f46c1e224e8a
parent 10697
8a609e4c71b6
child 10814
ba20efe10336
--- a/src/eric7/Debugger/DebuggerInterfacePython.py	Wed Apr 24 10:14:44 2024 +0200
+++ b/src/eric7/Debugger/DebuggerInterfacePython.py	Sun Jun 02 09:51:20 2024 +0200
@@ -1404,8 +1404,15 @@
         @param sock reference to the socket to read data from
         @type QTcpSocket
         """
+        headerSize = struct.calcsize(b"!II")
+
         while sock and sock.bytesAvailable():
-            header = sock.read(struct.calcsize(b"!II"))
+            now = time.monotonic()
+            while sock.bytesAvailable() < headerSize:
+                sock.waitForReadyRead(50)
+                if time.monotonic() - now > 2.0:  # 2 seconds timeout
+                    return
+            header = sock.read(headerSize)
             length, datahash = struct.unpack(b"!II", header)
 
             data = bytearray()

eric ide

mercurial