Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 1.9.18, 2.2, 2.2.5, 2.3.2, 2.4
-
Component/s: Chat
-
Testing Instructions:
-
Affected Branches:MOODLE_19_STABLE, MOODLE_22_STABLE, MOODLE_23_STABLE, MOODLE_24_STABLE
-
Fixed Branches:MOODLE_22_STABLE, MOODLE_23_STABLE
-
Pull from Repository:
-
Pull Master Branch:
MDL-34068_master -
Pull Master Diff URL:
Description
When you run the chat daemon, which uses a frameset, the main chat area, (where messages appear, i.e., win=chat) does not send out a response header. Proper response headers are sent for the sidekick frames (message, beep, and user). The user sees the underlying html exposed in Firefox. Firefox treats the output in quirks mode and as text/plain not text/html. IE Chrome appear to be more forgiving.
I tracked this down using Fiddler, Firefox' Live Headers add-on and by looking at the Firefox cache (about:cache).
As a partial fix, I added an HTTP response block beginning on line 532 of chatd.php. However, this may cause some of the sidebars to send the header response twice.
chatd.php |
$this->dismiss_half($sessionid, false);
|
|
// new block begins here
|
|
$header = "HTTP/1.1 200 OK\n";
|
$header .= "Date: ".date('r')."\n";
|
$header .= "Server: Moodle\n";
|
$header .= "Content-Type: text/html; charset=utf-8\n";
|
$header .= "Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT\n";
|
$header .= "Cache-Control: no-cache, must-revalidate\n";
|
$header .= "Expires: Wed, 4 Oct 1978 09:32:45 GMT\n";
|
$header .= "\n";
|
$this->write_data($this->conn_sets[$sessionid][CHAT_CONNECTION_CHANNEL], $header);
|
|
// new block ends here
|
|
$this->write_data($this->conn_sets[$sessionid][CHAT_CONNECTION_CHANNEL], $CHAT_HTMLHEAD_JS);
|
Attachments
Issue Links
- is blocked by
-
MDL-27398 Chat daemon doesn't run properly
-
- Closed
-