Index: chrome/browser/resources/settings/certificate_manager_page/ca_trust_edit_dialog.js |
diff --git a/chrome/browser/resources/settings/certificate_manager_page/ca_trust_edit_dialog.js b/chrome/browser/resources/settings/certificate_manager_page/ca_trust_edit_dialog.js |
index 08de7fa22f40107586c5e7665192649b8cabac23..42ebcf5fc6425fe060e8de1346561343e32064a7 100644 |
--- a/chrome/browser/resources/settings/certificate_manager_page/ca_trust_edit_dialog.js |
+++ b/chrome/browser/resources/settings/certificate_manager_page/ca_trust_edit_dialog.js |
@@ -42,11 +42,18 @@ Polymer({ |
this.browserProxy_.getCaCertificateTrust(this.model.id).then( |
/** @param {!CaTrustInfo} trustInfo */ |
function(trustInfo) { |
+ if (!this.isAttached) { |
+ // This element might have been detached from the DOM during the |
+ // async operation (happens in testing code). Do not attempt to |
+ // open the dialog in such case. |
+ return; |
Dan Beam
2016/07/26 23:36:12
shouldn't we propagate trustInfo_ though?
dpapad
2016/07/27 01:21:47
I ended up removing this completely, by making the
|
+ } |
+ |
this.trustInfo_ = trustInfo; |
- this.$.dialog.open(); |
+ this.$.dialog.showModal(); |
}.bind(this)); |
} else { |
- /** @type {!CrDialogElement} */ (this.$.dialog).open(); |
+ /** @type {!CrDialogElement} */ (this.$.dialog).showModal(); |
} |
}, |