diff options
author | Thomas Bruederli <thomas@roundcube.net> | 2013-01-11 15:12:33 +0100 |
---|---|---|
committer | Thomas Bruederli <thomas@roundcube.net> | 2013-01-11 15:12:33 +0100 |
commit | 64afb530a2c80ef54ff6495e427e86c7098df41a (patch) | |
tree | e31b9ff22eb1d5e7e10ed89824eb5e478dff8fed | |
parent | 9a6c38e14895bd093627e12f2fcf2c6ff1e3af3c (diff) |
Fix opener check in extwin (avoid JS errors in IE when opener is gone); always close extwin, even if opener isn't available anymore
-rw-r--r-- | program/js/app.js | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/program/js/app.js b/program/js/app.js index 2804e88df..de0d2b71a 100644 --- a/program/js/app.js +++ b/program/js/app.js @@ -3043,7 +3043,7 @@ function rcube_webmail() ac_props; // close compose step in opener - if (window.opener && opener.rcmail && opener.rcmail.env.action == 'compose') { + if (window.opener && !window.opener.closed && opener.rcmail && opener.rcmail.env.action == 'compose') { setTimeout(function(){ opener.history.back(); }, 100); this.env.opened_extwin = true; } @@ -3713,9 +3713,10 @@ function rcube_webmail() { this.display_message(msg, type); - if (this.env.extwin && window.opener && opener.rcmail) { + if (this.env.extwin) { this.lock_form(this.gui_objects.messageform); - opener.rcmail.display_message(msg, type); + if (window.opener && !window.opener.closed && opener.rcmail) + opener.rcmail.display_message(msg, type); setTimeout(function(){ window.close() }, 1000); } else { |