浏览代码

rendermime: Don't stop if error in canRender

In rendermime, if an error occured when the canRender() function is
called, the notebook should not stop and break. Rather it should
continue and attempt others.
AbdealiJK 8 年之前
父节点
当前提交
2805abdf02
共有 1 个文件被更改,包括 8 次插入1 次删除
  1. 8 1
      src/rendermime/rendermime.ts

+ 8 - 1
src/rendermime/rendermime.ts

@@ -146,7 +146,14 @@ class RenderMime {
       if (model.data.has(mimeType)) {
       if (model.data.has(mimeType)) {
         let options = { mimeType, model, sanitizer };
         let options = { mimeType, model, sanitizer };
         let renderer = this._renderers[mimeType];
         let renderer = this._renderers[mimeType];
-        if (renderer.canRender(options)) {
+        let canRender = false;
+        try {
+          canRender = renderer.canRender(options);
+        } catch (err) {
+          console.error(
+            `Got an error when checking the renderer for the mimeType '${mimeType}'\n`, err);
+        }
+        if (canRender) {
           return true;
           return true;
         }
         }
       }
       }