Browse Source

bug fix for plugin cache

Raanan Weber 7 years ago
parent
commit
5557242633
1 changed files with 15 additions and 13 deletions
  1. 15 13
      Viewer/src/loader/plugins/index.ts

+ 15 - 13
Viewer/src/loader/plugins/index.ts

@@ -7,19 +7,21 @@ import { ExtendedMaterialLoaderPlugin } from './extendedMaterialLoaderPlugin';
 const pluginCache: { [key: string]: ILoaderPlugin } = {};
 
 export function getLoaderPluginByName(name: string) {
-    switch (name) {
-        case 'telemetry':
-            pluginCache[name] = new TelemetryLoaderPlugin();
-            break;
-        case 'msftLod':
-            pluginCache[name] = new MSFTLodLoaderPlugin();
-            break;
-        case 'minecraft':
-            pluginCache[name] = new MSFTLodLoaderPlugin();
-            break;
-        case 'extendedMaterial':
-            pluginCache[name] = new ExtendedMaterialLoaderPlugin();
-            break;
+    if (!pluginCache[name]) {
+        switch (name) {
+            case 'telemetry':
+                pluginCache[name] = new TelemetryLoaderPlugin();
+                break;
+            case 'msftLod':
+                pluginCache[name] = new MSFTLodLoaderPlugin();
+                break;
+            case 'minecraft':
+                pluginCache[name] = new MSFTLodLoaderPlugin();
+                break;
+            case 'extendedMaterial':
+                pluginCache[name] = new ExtendedMaterialLoaderPlugin();
+                break;
+        }
     }
 
     return pluginCache[name];