From 371f2beade9438f87300fe1e17ad0e0d5bc0f615 Mon Sep 17 00:00:00 2001 From: Victor Dubiniuk Date: Fri, 16 Feb 2018 21:05:40 +0300 Subject: [PATCH 1/2] Free resources in preview providers --- lib/private/Preview/Bitmap.php | 3 ++- lib/private/Preview/SVG.php | 4 +++- lib/private/Preview/TXT.php | 5 +++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/private/Preview/Bitmap.php b/lib/private/Preview/Bitmap.php index b63c5fe86783..23694afd4c25 100644 --- a/lib/private/Preview/Bitmap.php +++ b/lib/private/Preview/Bitmap.php @@ -49,9 +49,10 @@ public function getThumbnail(File $file, $maxX, $maxY, $scalingUp) { } catch (\Exception $e) { Util::writeLog('core', 'ImageMagick says: ' . $e->getmessage(), Util::ERROR); return false; + } finally { + fclose($stream); } - fclose($stream); //new bitmap image object $image = new \OC_Image(); diff --git a/lib/private/Preview/SVG.php b/lib/private/Preview/SVG.php index ae1e85264182..e860588a6416 100644 --- a/lib/private/Preview/SVG.php +++ b/lib/private/Preview/SVG.php @@ -42,10 +42,12 @@ public function getThumbnail(File $file, $maxX, $maxY, $scalingUp) { $svg = new \Imagick(); $svg->setBackgroundColor(new \ImagickPixel('transparent')); - $content = stream_get_contents($file->fopen('r')); + $stream = $file->fopen('r'); + $content = stream_get_contents($stream); if (substr($content, 0, 5) !== '' . $content; } + fclose($stream); // Do not parse SVG files with references if (stripos($content, 'xlink:href') !== false) { diff --git a/lib/private/Preview/TXT.php b/lib/private/Preview/TXT.php index a996d1ffe279..a07ca5864fd1 100644 --- a/lib/private/Preview/TXT.php +++ b/lib/private/Preview/TXT.php @@ -40,8 +40,9 @@ public function getMimeType() { * {@inheritDoc} */ public function getThumbnail(File $file, $maxX, $maxY, $scalingUp) { - $content = $file->fopen('r'); - $content = stream_get_contents($content,3000); + $stream = $file->fopen('r'); + $content = stream_get_contents($stream,3000); + fclose($stream); //don't create previews of empty text files if(trim($content) === '') { From 05b43dfb0bb1b59afc6dc1c3863190f2516e1032 Mon Sep 17 00:00:00 2001 From: Phil Davis Date: Sat, 17 Feb 2018 08:24:54 +0545 Subject: [PATCH 2/2] Run upload suite many times --- .drone.yml | 138 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 129 insertions(+), 9 deletions(-) diff --git a/.drone.yml b/.drone.yml index 7d09e39b4616..146174a637f4 100644 --- a/.drone.yml +++ b/.drone.yml @@ -350,56 +350,56 @@ matrix: - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: other + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: files + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: moveFilesFolders + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: renameFiles + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: renameFolders + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: trashbin + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: sharingInternalGroupsUsers + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: sharingExternalOther + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true USE_FEDERATED_SERVER: true - PHP_VERSION: 7.1 TEST_SUITE: selenium - BEHAT_SUITE: restrictSharing + BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true @@ -408,3 +408,123 @@ matrix: BEHAT_SUITE: upload DB_TYPE: mariadb USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true + + - PHP_VERSION: 7.1 + TEST_SUITE: selenium + BEHAT_SUITE: upload + DB_TYPE: mariadb + USE_SERVER: true