From 3cc87cff7755d8efdbdab661cc08b75a20da400a Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 1 Aug 2016 20:27:47 +1200 Subject: 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 --- layerindex/views.py | 3 +++ 1 file changed, 3 insertions(+) (limited to 'layerindex/views.py') diff --git a/layerindex/views.py b/layerindex/views.py index dfe445304e..62f5268405 100644 --- a/layerindex/views.py +++ b/layerindex/views.py @@ -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 -- cgit 1.2.3-korg