Utilities/BackgroundService.py

changeset 5875
3052fb9cf357
parent 5874
a28f7d2ff976
child 5901
96bb9e46ec89
equal deleted inserted replaced
5874:a28f7d2ff976 5875:3052fb9cf357
159 header = connection.read(struct.calcsize(b'!II')) 159 header = connection.read(struct.calcsize(b'!II'))
160 length, datahash = struct.unpack(b'!II', header) 160 length, datahash = struct.unpack(b'!II', header)
161 161
162 packedData = b'' 162 packedData = b''
163 while len(packedData) < length: 163 while len(packedData) < length:
164 # this wait influences speed in batch mode (smaller is faster) 164 maxSize = length - len(packedData)
165 connection.waitForReadyRead(5) 165 if connection.bytesAvailable() < maxSize:
166 packedData += connection.read(length - len(packedData)) 166 connection.waitForReadyRead(50)
167 packedData += connection.read(maxSize)
167 168
168 assert adler32(packedData) & 0xffffffff == datahash, \ 169 assert adler32(packedData) & 0xffffffff == datahash, \
169 'Hashes not equal' 170 'Hashes not equal'
170 if sys.version_info[0] == 3: 171 if sys.version_info[0] == 3:
171 packedData = packedData.decode('utf-8') 172 packedData = packedData.decode('utf-8')

eric ide

mercurial