Browse Source

Be a bit more defensive of specs not existing.

Ian Rose 6 years ago
parent
commit
feaf44a217

+ 2 - 1
packages/filebrowser/src/listing.ts

@@ -781,7 +781,8 @@ export class DirListing extends Widget {
 
       node.classList.add(RUNNING_CLASS);
       if (specs) {
-        name = specs.kernelspecs[name].display_name;
+        const spec = specs.kernelspecs[name];
+        name = spec ? spec.display_name : 'unknown';
       }
       node.title = `${node.title}\nKernel: ${name}`;
     });

+ 3 - 0
packages/help-extension/src/index.tsx

@@ -207,6 +207,9 @@ function activate(
       // Add the kernel banner to the Help Menu.
       const bannerCommand = `help-menu-${name}:banner`;
       const spec = serviceManager.specs.kernelspecs[name];
+      if (!spec) {
+        return;
+      }
       const kernelName = spec.display_name;
       let kernelIconUrl = spec.resources['logo-64x64'];
       if (kernelIconUrl) {

+ 2 - 1
packages/running/src/index.tsx

@@ -267,7 +267,8 @@ function RunningSessionsComponent({
         labelTitle={m => {
           let kernelName = m.kernel.name;
           if (manager.specs) {
-            kernelName = manager.specs.kernelspecs[kernelName].display_name;
+            const spec = manager.specs.kernelspecs[kernelName];
+            kernelName = spec ? spec.display_name : 'unknown';
           }
           return `Path: ${m.path}\nKernel: ${kernelName}`;
         }}