From 319f030f3245c8eaa8ecfc7a74b7754be7320bc9 Mon Sep 17 00:00:00 2001 From: Erik Ziegler Date: Tue, 13 Jun 2017 14:19:33 +0200 Subject: [PATCH] Remove memory leak for thumbnail enabled elements --- .../studyBrowser/imageThumbnail/imageThumbnail.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Packages/ohif-viewerbase/client/components/studyBrowser/imageThumbnail/imageThumbnail.js b/Packages/ohif-viewerbase/client/components/studyBrowser/imageThumbnail/imageThumbnail.js index 8e2348c07..bf658f017 100644 --- a/Packages/ohif-viewerbase/client/components/studyBrowser/imageThumbnail/imageThumbnail.js +++ b/Packages/ohif-viewerbase/client/components/studyBrowser/imageThumbnail/imageThumbnail.js @@ -35,7 +35,6 @@ Template.imageThumbnail.onRendered(() => { const element = $element.get(0); instance.refreshImage = () => { - console.log('imageThumbnail refreshImage'); if (!element) { return; } @@ -43,13 +42,20 @@ Template.imageThumbnail.onRendered(() => { // Disable cornerstone for thumbnail element and remove its canvas cornerstone.disable(element); + // Enable cornerstone for thumbnail element again creating a new canvas + cornerstone.enable(element); + // Activate the loading state $loading.css('display', 'block'); // Define a handler for success on image load const loadSuccess = image => { - // Enable cornerstone for thumbnail element again creating a new canvas - cornerstone.enable(element); + // Check to make sure the element is enabled. + try { + var enabledElement = cornerstone.getEnabledElement(element); + } catch(error) { + return; + } cornerstone.displayImage(element, image); $loading.css('display', 'none'); @@ -85,7 +91,6 @@ Template.imageThumbnail.onRendered(() => { }); Template.imageThumbnail.onDestroyed(() => { - console.log('imagethumbnail onDestroyed'); const instance = Template.instance(); // Declare DOM and jQuery objects