diff options
author | jchu <jchu> | 2004-09-02 21:15:10 +0000 |
---|---|---|
committer | jchu <jchu> | 2004-09-02 21:15:10 +0000 |
commit | a4710414e0efcb456bcd725c5956547edc4162af (patch) | |
tree | 6e98a997a6e538bb523ec29921bd71212f39d968 /tupkg/server | |
parent | 2423a686d6c26747c36b672e1132860302ed826b (diff) | |
download | aurweb-a4710414e0efcb456bcd725c5956547edc4162af.tar.xz |
added support for multiple files in the client and made the file reading less memory intensive for the server (poorly, mind you)
Diffstat (limited to 'tupkg/server')
-rwxr-xr-x | tupkg/server/tupkgs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/tupkg/server/tupkgs b/tupkg/server/tupkgs index ef010c9..4dd085b 100755 --- a/tupkg/server/tupkgs +++ b/tupkg/server/tupkgs @@ -108,7 +108,14 @@ class ClientSocket(threading.Thread): def readFiles(self): for i in self.files: - i.fd.write(self.reliableRead(i.actual_size)) + count = 0 + while count != i.actual_size: + if count + 1024 > i.actual_size: + i.fd.write(self.reliableRead(i.actual_size - count)) + count += i.actual_size - count + else: + i.fd.write(self.reliableRead(1024)) + count += 1024 i.fd.flush() reply = {'numpkgs': len(self.files)} for i, v in enumerate(self.files): |