Merge pull request #13654 from oparoz/tmpfile-with-extension
Keep the extension in temp files
This commit is contained in:
commit
746be98e03
|
@ -45,12 +45,16 @@ abstract class Office extends Provider {
|
|||
shell_exec($exec);
|
||||
|
||||
//create imagick object from pdf
|
||||
$pdfPreview = null;
|
||||
try{
|
||||
$pdf = new \imagick($absPath . '.pdf' . '[0]');
|
||||
list( $dirname, , , $filename ) = array_values( pathinfo($absPath) );
|
||||
$pdfPreview = $dirname . '/' . $filename . '.pdf';
|
||||
|
||||
$pdf = new \imagick($pdfPreview . '[0]');
|
||||
$pdf->setImageFormat('jpg');
|
||||
} catch (\Exception $e) {
|
||||
unlink($absPath);
|
||||
unlink($absPath . '.pdf');
|
||||
unlink($pdfPreview);
|
||||
\OC_Log::write('core', $e->getmessage(), \OC_Log::ERROR);
|
||||
return false;
|
||||
}
|
||||
|
@ -59,7 +63,7 @@ abstract class Office extends Provider {
|
|||
$image->loadFromData($pdf);
|
||||
|
||||
unlink($absPath);
|
||||
unlink($absPath . '.pdf');
|
||||
unlink($pdfPreview);
|
||||
|
||||
return $image->valid() ? $image : false;
|
||||
}
|
||||
|
|
|
@ -55,6 +55,9 @@ class TempManager implements ITempManager {
|
|||
}
|
||||
|
||||
protected function generatePath($postFix) {
|
||||
if ($postFix) {
|
||||
$postFix = '.' . ltrim($postFix, '.');
|
||||
}
|
||||
return $this->tmpBaseDir . '/oc_tmp_' . md5(time() . rand()) . $postFix;
|
||||
}
|
||||
|
||||
|
|
|
@ -51,7 +51,7 @@ class TempManager extends \Test\TestCase {
|
|||
|
||||
public function testGetFile() {
|
||||
$manager = $this->getManager();
|
||||
$file = $manager->getTemporaryFile('.txt');
|
||||
$file = $manager->getTemporaryFile('txt');
|
||||
$this->assertStringEndsWith('.txt', $file);
|
||||
$this->assertTrue(is_file($file));
|
||||
$this->assertTrue(is_writable($file));
|
||||
|
@ -73,8 +73,8 @@ class TempManager extends \Test\TestCase {
|
|||
|
||||
public function testCleanFiles() {
|
||||
$manager = $this->getManager();
|
||||
$file1 = $manager->getTemporaryFile('.txt');
|
||||
$file2 = $manager->getTemporaryFile('.txt');
|
||||
$file1 = $manager->getTemporaryFile('txt');
|
||||
$file2 = $manager->getTemporaryFile('txt');
|
||||
$this->assertTrue(file_exists($file1));
|
||||
$this->assertTrue(file_exists($file2));
|
||||
|
||||
|
@ -105,8 +105,8 @@ class TempManager extends \Test\TestCase {
|
|||
|
||||
public function testCleanOld() {
|
||||
$manager = $this->getManager();
|
||||
$oldFile = $manager->getTemporaryFile('.txt');
|
||||
$newFile = $manager->getTemporaryFile('.txt');
|
||||
$oldFile = $manager->getTemporaryFile('txt');
|
||||
$newFile = $manager->getTemporaryFile('txt');
|
||||
$folder = $manager->getTemporaryFolder();
|
||||
$nonOcFile = $this->baseDir . '/foo.txt';
|
||||
file_put_contents($nonOcFile, 'bar');
|
||||
|
@ -135,7 +135,7 @@ class TempManager extends \Test\TestCase {
|
|||
$logger->expects($this->once())
|
||||
->method('warning')
|
||||
->with($this->stringContains('Can not create a temporary file in directory'));
|
||||
$this->assertFalse($manager->getTemporaryFile('.txt'));
|
||||
$this->assertFalse($manager->getTemporaryFile('txt'));
|
||||
}
|
||||
|
||||
public function testLogCantCreateFolder() {
|
||||
|
|
Loading…
Reference in New Issue