# HG changeset patch # User Björn Ricks # Date 1413446612 -7200 # Node ID 1dadc59c4b9a645ab2e56f31120999864e972628 # Parent 1dd40e13da7479c0644563dedf9f28498561d1fb Make the conversion more error prone diff -r 1dd40e13da74 -r 1dadc59c4b9a odfcast/convert.py --- a/odfcast/convert.py Tue Sep 30 16:38:08 2014 +0200 +++ b/odfcast/convert.py Thu Oct 16 10:03:32 2014 +0200 @@ -1,5 +1,6 @@ # -*- coding: utf-8 -*- +import logging import tempfile from flask import request, Response, json, render_template @@ -9,6 +10,7 @@ from PyPDF2 import PdfFileMerger +log = logging.getLogger(__name__) ALLOWED_FORMATS = ["pdf", "doc", "docx", "odt"] @@ -40,14 +42,22 @@ def post(self): ffile = request.files['file'] + if not ffile.filename: + return "Please upload a file for conversion", 401 + fformat = request.form['format'] - if not self.is_format_supported(fformat): return "Format %s not allowed" % fformat, 401 + mimetype = self.get_mimetype_for_format(fformat) + infile = self.save_form_file(ffile) - outfile = self.convert(infile, fformat) - mimetype = self.get_mimetype_for_format(fformat) + try: + outfile = self.convert(infile, fformat) + except: + log.exception("Conversion error") + return "Conversion error", 500 + return Response(outfile, mimetype=mimetype) def get(self):