fixed bug in detecting mime type
This commit is contained in:
@@ -50,13 +50,14 @@ def process_file(request, input_file, input_name):
|
||||
MAX_SIZE = 10 * (1024 ** 2) # 10 Mb
|
||||
temp_folder = request.registry.settings['temp_folder']
|
||||
logfile_name = os.path.join(temp_folder, 'errors_log')
|
||||
input_encoding = 'utf-8'
|
||||
|
||||
# --- check the mime type
|
||||
mime = magic.from_buffer(input_file.read(), mime=True)
|
||||
if mime not in EXT_ALLOWED:
|
||||
message = "Le format du fichier n'est pas valide. Téléchargement refusé."
|
||||
add_error2log(logfile_name, input_name, message)
|
||||
return message
|
||||
return message, input_encoding
|
||||
|
||||
# get input_file size
|
||||
input_file.seek(0, 2) #seek to end
|
||||
@@ -66,7 +67,7 @@ def process_file(request, input_file, input_name):
|
||||
if filesize > MAX_SIZE:
|
||||
message = "La taille du fichier dépasse la limite autorisée. Téléchargement refusé."
|
||||
add_error2log(logfile_name, input_name, message)
|
||||
return message
|
||||
return message, input_encoding
|
||||
|
||||
# Finally write the data to a temporary file
|
||||
input_filename = os.path.join(temp_folder, input_name)
|
||||
@@ -91,7 +92,7 @@ def process_file(request, input_file, input_name):
|
||||
if input_buffer.find('<body') == -1 or input_buffer.find('</body>') == -1:
|
||||
message = "Le format du fichier n'est pas valide (absence de tag <body> ou </body>). Téléchargement refusé."
|
||||
add_error2log(logfile_name, input_name, message)
|
||||
return message
|
||||
return message, input_encoding
|
||||
|
||||
# --- convert input_file encoding to utf-8
|
||||
with open(input_filename, 'w', encoding='utf-8') as f:
|
||||
|
||||
Reference in New Issue
Block a user