diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java index 0984d7bb93..ac6b844c3e 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ImageGalleryController.java @@ -348,6 +348,7 @@ public final class ImageGalleryController { LOGGER.info("resetting ImageGalleryControler to initial state."); selectionModel.clearSelection(); setListeningEnabled(false); + ThumbnailCache.getDefault().clearCache(); Platform.runLater(() -> { historyManager.clear(); }); diff --git a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java index 0aab44e58c..ee7c74e981 100644 --- a/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java +++ b/ImageGallery/src/org/sleuthkit/autopsy/imagegallery/ThumbnailCache.java @@ -83,6 +83,13 @@ public enum ThumbnailCache { /** thread that saves generated thumbnails to disk for use later */ private final Executor imageSaver = Executors.newSingleThreadExecutor(new BasicThreadFactory.Builder().namingPattern("icon saver-%d").build()); + /** + * Clear out the cache between cases + */ + public final void clearCache() { + cache.invalidateAll(); + } + /** get the cached thumbnail for the given file or generate a new one if * needed *