[Yum-devel] [UG] [PATCH] Don't fail when size is unknown
Martin Kletzander
mkletzan at redhat.com
Fri Apr 5 09:29:34 UTC 2013
I've hit the following problem numerous times, mainly when grabbing a
local file. I'm not sure whether this should be handled somewhere
else, but this patch fixed the problem for me and even the progress is
working properly. The problem looks like this:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/usr/lib64/python2.7/site-packages/urlgrabber/grabber.pyc in _retrieve(self, buf)
1070 if not self._prog_running:
1071 if self.opts.progress_obj:
-> 1072 size = self.size + self._reget_length
1073 self.opts.progress_obj.start(self._prog_reportname,
1074 urllib.unquote(self.url),
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
---------------------------------------------------------------------------
---
urlgrabber/grabber.py | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/urlgrabber/grabber.py b/urlgrabber/grabber.py
index f53ae30..9d19794 100644
--- a/urlgrabber/grabber.py
+++ b/urlgrabber/grabber.py
@@ -1257,10 +1257,12 @@ class PyCurlFileObject(object):
if not self._prog_running:
if self.opts.progress_obj:
- size = self.size + self._reget_length
- self.opts.progress_obj.start(self._prog_reportname,
- urllib.unquote(self.url),
- self._prog_basename,
+ size = self.size
+ if size is not None:
+ size = size + self._reget_length
+ self.opts.progress_obj.start(self._prog_reportname,
+ urllib.unquote(self.url),
+ self._prog_basename,
size=size,
text=self.opts.text)
self._prog_running = True
--
1.8.1.5
More information about the Yum-devel
mailing list