summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
authorThomas Bruederli <thomas@roundcube.net>2013-01-11 15:12:33 +0100
committerThomas Bruederli <thomas@roundcube.net>2013-01-11 15:12:33 +0100
commit64afb530a2c80ef54ff6495e427e86c7098df41a (patch)
treee31b9ff22eb1d5e7e10ed89824eb5e478dff8fed /program
parent9a6c38e14895bd093627e12f2fcf2c6ff1e3af3c (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
Diffstat (limited to 'program')
-rw-r--r--program/js/app.js7
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 {