summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Patrick Scott <phanna@android.com> 2009-04-28 11:21:28 -0400
committer Patrick Scott <phanna@android.com> 2009-04-28 11:47:11 -0400
commitf0c70a83562a27c424554f609eb1d4cdebf06df4 (patch)
treed79d3ed2b8f70c437a6d25d81073ce89308f1a30
parentb4ec40108552b5fd9c48c0c7f5a61addeaae797c (diff)
Treat application/xhtml+xml as xhtml+xml instead of text/html.
Previously we had converted application/xhtml+xml to text/html because of bad server data. Now we need to treat xhtml as xhtml to get svg to be interpreted correctly.
-rw-r--r--core/java/android/webkit/LoadListener.java22
-rw-r--r--core/java/android/webkit/MimeTypeMap.java1
2 files changed, 5 insertions, 18 deletions
diff --git a/core/java/android/webkit/LoadListener.java b/core/java/android/webkit/LoadListener.java
index 716d504570f3..36aa14b06146 100644
--- a/core/java/android/webkit/LoadListener.java
+++ b/core/java/android/webkit/LoadListener.java
@@ -324,13 +324,10 @@ class LoadListener extends Handler implements EventHandler {
// As we don't support wml, render it as plain text
mMimeType = "text/plain";
} else {
- // XXX: Until the servers send us either correct xhtml or
- // text/html, treat application/xhtml+xml as text/html.
// It seems that xhtml+xml and vnd.wap.xhtml+xml mime
// subtypes are used interchangeably. So treat them the same.
- if (mMimeType.equals("application/xhtml+xml") ||
- mMimeType.equals("application/vnd.wap.xhtml+xml")) {
- mMimeType = "text/html";
+ if (mMimeType.equals("application/vnd.wap.xhtml+xml")) {
+ mMimeType = "application/xhtml+xml";
}
}
} else {
@@ -1396,19 +1393,8 @@ class LoadListener extends Handler implements EventHandler {
Log.v(LOGTAG, "guessMimeTypeFromExtension: mURL = " + mUrl);
}
- String mimeType =
- MimeTypeMap.getSingleton().getMimeTypeFromExtension(
- MimeTypeMap.getFileExtensionFromUrl(mUrl));
-
- if (mimeType != null) {
- // XXX: Until the servers send us either correct xhtml or
- // text/html, treat application/xhtml+xml as text/html.
- if (mimeType.equals("application/xhtml+xml")) {
- mimeType = "text/html";
- }
- }
-
- return mimeType;
+ return MimeTypeMap.getSingleton().getMimeTypeFromExtension(
+ MimeTypeMap.getFileExtensionFromUrl(mUrl));
}
/**
diff --git a/core/java/android/webkit/MimeTypeMap.java b/core/java/android/webkit/MimeTypeMap.java
index 85c2275df991..096f38add65b 100644
--- a/core/java/android/webkit/MimeTypeMap.java
+++ b/core/java/android/webkit/MimeTypeMap.java
@@ -358,6 +358,7 @@ public /* package */ class MimeTypeMap {
sMimeTypeMap.loadEntry("application/x-x509-ca-cert", "crt", false);
sMimeTypeMap.loadEntry("application/x-xcf", "xcf", false);
sMimeTypeMap.loadEntry("application/x-xfig", "fig", false);
+ sMimeTypeMap.loadEntry("application/xhtml+xml", "xhtml", false);
sMimeTypeMap.loadEntry("audio/basic", "snd", false);
sMimeTypeMap.loadEntry("audio/midi", "mid", false);
sMimeTypeMap.loadEntry("audio/midi", "midi", false);