Skip to content

Commit

Permalink
FIX: Ignore charset when checking mime types in LeftAndMain ajax resp…
Browse files Browse the repository at this point in the history
…onses.

This is partly a fix to #7574, although quite different from the work Ingo did on Content-length.  The text/json mime type occasionally gets a charset suffixed to it by the webserver, which broke everything.

A follow-on fix from this would be to get the PHP code to supply charsets more consistently, so that webservers don't have to make things up.

Additionally, the 2nd interpretation - which treats the response as text/html - should probably only happen if the response is text/html, and throw a more helpful error otherwise.
  • Loading branch information
Sam Minnee committed Sep 30, 2012
1 parent 1a1740e commit 28bd939
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion admin/javascript/LeftAndMain.js
Original file line number Diff line number Diff line change
Expand Up @@ -379,7 +379,8 @@ jQuery.noConflict();
if(title) document.title = title;

var newFragments = {}, newContentEls;
if(xhr.getResponseHeader('Content-Type') == 'text/json') {
// If content type is text/json (ignoring charset and other parameters)
if(xhr.getResponseHeader('Content-Type').match(/^text\/json[ \t]*;?/i)) {
newFragments = data;
} else {
// Fall back to replacing the content fragment if HTML is returned
Expand Down

0 comments on commit 28bd939

Please sign in to comment.