# # # patch "dws/dws.py" # from [c4f712a38239b57a0079c5c12caaf4c3900f07eb] # to [c31ab032fae324c0034023819864c543cccf133c] # # patch "fs_dws.py" # from [fa096d848bc2bae5274217e26fd78dec2ecf3113] # to [bafaede69f2dae878da78f0ac77e104320287cdd] # ============================================================ --- dws/dws.py c4f712a38239b57a0079c5c12caaf4c3900f07eb +++ dws/dws.py c31ab032fae324c0034023819864c543cccf133c @@ -175,9 +175,13 @@ class Connection: raise Exception("DWS: getMany response invalid: invalid sizes descriptor") if len(sizes) != len(names): raise Exception("DWS: getMany response invalid: mismatched files count") - expectedSize = [s for s in sizes if s != -1] - if sum(expectedSize) != len(agrContent): - raise Exception("DWS: getMany response invalid: mismatched response size (exp=%i, act=%i)" % (expectedSize, len(agrContent))) + expectedSizes = [s for s in sizes if s != -1] + expectedSize = sum(expectedSizes) + if expectedSize != len(agrContent): + adinfo = "" + if expectedSize < len(agrContent) and len(agrContent)-expectedSize < 100: + adinfo = " extra: '%s'" % repr(agrContent[expectedSize:]) + raise Exception("DWS: getMany response invalid: mismatched response size (exp=%i, act=%i)%s" % (expectedSize, len(agrContent),adinfo)) result = [] offset = 0 for size in sizes: ============================================================ --- fs_dws.py fa096d848bc2bae5274217e26fd78dec2ecf3113 +++ fs_dws.py bafaede69f2dae878da78f0ac77e104320287cdd @@ -26,7 +26,7 @@ class DWSReadableFS(fs.ReadableFS): else: self.path = hostspec[pathIndex+1:] self.hostspec = hostspec[:pathIndex] - self.conn = dws.Connection(self.hostspec,self.path,verbosity=2) + self.conn = dws.Connection(self.hostspec,self.path) self.version = 0 def list(self):