diff --git a/app/controllers/dmsf_files_controller.rb b/app/controllers/dmsf_files_controller.rb index 491b114a..80d3f1a9 100644 --- a/app/controllers/dmsf_files_controller.rb +++ b/app/controllers/dmsf_files_controller.rb @@ -133,7 +133,7 @@ class DmsfFilesController < ApplicationController revision.size = upload.size revision.disk_filename = revision.new_storage_filename revision.mime_type = upload.mime_type - revision.digest = DmsfFileRevision.create_digest upload.disk_file + revision.digest = DmsfFileRevision.create_digest upload.tempfile_path end end @@ -149,7 +149,7 @@ class DmsfFilesController < ApplicationController if revision.save revision.assign_workflow(params[:dmsf_workflow_id]) if upload - FileUtils.mv(upload.disk_file, revision.disk_file) + FileUtils.mv(upload.tempfile_path, revision.disk_file) end if @file.locked? && !@file.locks.empty? begin diff --git a/app/controllers/dmsf_upload_controller.rb b/app/controllers/dmsf_upload_controller.rb index d2ec6dca..d6d27d5c 100644 --- a/app/controllers/dmsf_upload_controller.rb +++ b/app/controllers/dmsf_upload_controller.rb @@ -62,13 +62,17 @@ class DmsfUploadController < ApplicationController # async single file upload handling def upload_file - @tempfile = params[:file] - unless @tempfile.original_filename - render_404 - return + begin + @tempfile = params[:file] + unless @tempfile.original_filename + render_404 + return + end + @disk_filename = DmsfHelper.temp_filename(@tempfile.original_filename) + render :layout => false + ensure + @tempfile.close false end - @disk_filename = DmsfHelper.temp_filename(@tempfile.original_filename) - render :layout => false end # REST API document upload