mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-23 18:03:17 +00:00
Merge pull request #3152 from aynsix/PHRAS-2741-api-leaves-temporary-file-41
PHRAS-2714 #comment merge of Port to 4.1 API leaves a copy of the file into the system temporary directory 4.1
This commit is contained in:
@@ -944,7 +944,7 @@ class V1Controller extends Controller
|
||||
}
|
||||
|
||||
$originalName = $pi['filename'] . '.' . $pi['extension'];
|
||||
$newPathname = $tempfile;
|
||||
$uploadedFilename = $newPathname = $tempfile;
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -956,8 +956,11 @@ class V1Controller extends Controller
|
||||
if (!$file->isValid()) {
|
||||
return $this->getBadRequestAction($request, 'Data corrupted, please try again');
|
||||
}
|
||||
|
||||
$uploadedFilename = $file->getPathname();
|
||||
$originalName = $file->getClientOriginalName();
|
||||
$newPathname = $file->getPathname() . '.' . $file->getClientOriginalExtension();
|
||||
|
||||
if (false === rename($file->getPathname(), $newPathname)) {
|
||||
return Result::createError($request, 403, 'Error while renaming file')->createResponse();
|
||||
}
|
||||
@@ -1010,6 +1013,11 @@ class V1Controller extends Controller
|
||||
$nosubdef = $request->get('nosubdefs') === '' || \p4field::isyes($request->get('nosubdefs'));
|
||||
$this->getBorderManager()->process($session, $Package, $callback, $behavior, $nosubdef);
|
||||
|
||||
// remove $newPathname on temporary directory
|
||||
if ($newPathname !== $uploadedFilename) {
|
||||
@rename($newPathname, $uploadedFilename);
|
||||
}
|
||||
|
||||
$ret = ['entity' => null];
|
||||
|
||||
if ($output instanceof \record_adapter) {
|
||||
@@ -1081,6 +1089,11 @@ class V1Controller extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
// remove $newPathname on temporary directory
|
||||
if ($renamedFilename !== $uploadedFilename) {
|
||||
@rename($renamedFilename, $uploadedFilename);
|
||||
}
|
||||
|
||||
return Result::create($request, $ret)->createResponse();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user