On Wed, Sep 19, 2012 at 1:26 PM, Zdeněk Pavlas <zpav...@redhat.com> wrote:
> Should help BZ 786640. > --- > urlgrabber/grabber.py | 13 ++++++------- > 1 files changed, 6 insertions(+), 7 deletions(-) > > diff --git a/urlgrabber/grabber.py b/urlgrabber/grabber.py > index 0e20cee..09ef978 100644 > --- a/urlgrabber/grabber.py > +++ b/urlgrabber/grabber.py > @@ -1265,7 +1265,11 @@ class PyCurlFileObject(object): > self.opts.progress_obj.update(self._amount_read) > > self._amount_read += len(buf) > - self.fo.write(buf) > + try: > + self.fo.write(buf) > + except IOError, e: > + self._cb_error = URLGrabError(16, exception2msg(e)) > + return -1 > return len(buf) > except KeyboardInterrupt: > return -1 > @@ -1453,16 +1457,13 @@ class PyCurlFileObject(object): > errcode = self._error[0] > > if errcode == 23 and code >= 200 and code < 299: > - err = URLGrabError(15, _('User (or something) called > abort %s: %s') % (errurl, e)) > - err.url = errurl > - > # this is probably wrong but ultimately this is what > happens > # we have a legit http code and a pycurl 'writer failed' > code > # which almost always means something aborted it from > outside > # since we cannot know what it is -I'm banking on it being > # a ctrl-c. XXXX - if there's a way of going back two > raises to > # figure out what aborted the pycurl process FIXME > - raise KeyboardInterrupt > + raise getattr(self, '_cb_error', KeyboardInterrupt) > > elif errcode == 28: > err = URLGrabError(12, _('Timeout on %s: %s') % (errurl, > e)) > @@ -1480,8 +1481,6 @@ class PyCurlFileObject(object): > raise err > > elif errcode == 42: > - err = URLGrabError(15, _('User (or something) called > abort %s: %s') % (errurl, e)) > - err.url = errurl > # this is probably wrong but ultimately this is what > happens > # we have a legit http code and a pycurl 'writer failed' > code > # which almost always means something aborted it from > outside > -- > 1.7.4.4 > > _______________________________________________ > Yum-devel mailing list > Yum-devel@lists.baseurl.org > http://lists.baseurl.org/mailman/listinfo/yum-devel > ACK
_______________________________________________ Yum-devel mailing list Yum-devel@lists.baseurl.org http://lists.baseurl.org/mailman/listinfo/yum-devel