]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
VideoThumbnails shouldn't have to recreate the thumbnail all the time
authorMikael Nordfeldth <mmn@hethane.se>
Wed, 20 Jul 2016 22:24:05 +0000 (00:24 +0200)
committerMikael Nordfeldth <mmn@hethane.se>
Wed, 20 Jul 2016 22:24:05 +0000 (00:24 +0200)
plugins/VideoThumbnails/VideoThumbnailsPlugin.php

index fc3925375f8e33b0704fefc61f9c7114c7e8925b..30b62677ee73af57cdbbe9d730494ada4ebe1b73 100644 (file)
@@ -55,6 +55,21 @@ class VideoThumbnailsPlugin extends Plugin
             return true;
         }
 
+        try {
+            // Exception thrown if no thumbnail found
+            $thumb = File_thumbnail::byFile($file, false);
+            // If getPath doesn't throw an exception, we have a working locally stored thumbnail
+            return $thumb->getPath();
+        } catch (NoResultException $e) {
+            // Alright, no thumbnail found, so let's create one.
+        } catch (InvalidFilenameException $e) {
+            // I guess this means $thumb->filename is null? Shouldn't happen because $file->filename is not null, so delete it
+            $thumb->delete();
+        } catch (FileNotFoundException $e) {
+            // Thumb file was not found, let's delete it.
+            $thumb->delete();
+        }
+
         // Let's save our frame to a temporary file. If we fail, remove it.
         $tmp_imgPath = tempnam(sys_get_temp_dir(), 'socialthumb-');