Fix output decoding/reporting for bulk change patch download

With Python 3 we need to take care of decoding the output so we can
treat it as a string. At the same time, it's more useful to see the
output string rather than the exception if there is some output.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
Paul Eggleton 2016-08-01 20:27:47 +12:00
parent 79d09a3f1b
commit 3cc87cff77

View File

@ -237,8 +237,11 @@ def bulk_change_patch_view(request, pk):
except Exception as e:
output = getattr(e, 'output', None)
if output:
output = output.decode('utf-8', errors="ignore")
if 'timeout' in output:
return HttpResponse('Failed to generate patches: timed out waiting for lock. Please try again shortly.', content_type='text/plain')
else:
return HttpResponse('Failed to generate patches: %s' % output, content_type='text/plain')
return HttpResponse('Failed to generate patches: %s' % e, content_type='text/plain')
# FIXME better error handling