Composer redirects to previous page #5593

Closed
heinrichmartin opened this Issue Jan 11, 2017 · 1 comment

Projects

None yet

1 participant

@heinrichmartin

Environment

RC 1.2.3
UA Mozilla/5.0 (Windows NT 6.1; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0
PHP ? (hosted)
Mail server ? (hosted)
logs ? (hosted)
Reproducible yes
Persisting w/o plugins ? (hosted)

Problem

The following behaviour started all of a sudden today. My provider did not change a thing. He cannot reproduce it either.

Symptoms

Whenever I open the composer (tasks compose or reply), it loads, but immediately navigates back to the previous page.

Requests

GET https://example.com/roundcube/?_task=mail&_mbox=INBOX&_action=compose -> 302 Moved Temporarily
GET https://example.com/roundcube/?_task=mail&_action=compose&_id=xxx -> 200 OK
GET assets [...] -> 200 OK (cached)
GET https://example.com/roundcube/?_task=mail&_mbox=INBOX -> 200 OK
[...]

Debug analysis

The last of the above requests is caused by https://example.com/roundcube/program/js/app.min.js?s=xxx (169:404:opener.history.back()). This might be https://github.com/roundcube/roundcubemail/blob/release-1.2/program/js/app.js#L3976.

Interpretation

I am quite puzzled about the code that says: If the action is "compose", then go back in history. The stack trace only shows this.init() from the if-branch (this.env.action == 'compose') as the calling function; so how would this ever work?
The code continues with "this.env.opened_extwin = true;", but I cannot recall that I ever composed messages in an external window. On the other hand, app.js is a static asset, so it can't depend on my settings, can it?

Open questions

Now, I am no longer sure whether this should be an issue or a forum thread - sorry if it feels wrong. As I am not familiar with the architecture of RC: What is the intention of the following code sequence? And how is it supposed to work?
if (this.env.action == 'compose') { if (opener_rc && opener_rc.env.action == 'compose') { setTimeout(function(){ opener.history.back(); }, 100); } } // stripped some code including the call to init_messageform()

@heinrichmartin

This issue vanished just as unexpectedly as it started - still puzzled.
Feel free to move the discussion to http://www.roundcubeforum.net/index.php/topic,23831.msg64570.html#msg64570.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment