Author: rfrovarp
Date: Thu Aug 30 12:35:18 2007
New Revision: 571280
URL: http://svn.apache.org/viewvc?rev=571280&view=rev
Log:
Translate image/pjpeg to image/jpeg for purposes of reading image dimensions. Fixes bug 43245.
Modified:
lenya/trunk/src/modules/resource/java/src/org/apache/lenya/cms/publication/ResourceWrapper.java
Modified: lenya/trunk/src/modules/resource/java/src/org/apache/lenya/cms/publication/ResourceWrapper.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules/resource/java/src/org/apache/lenya/cms/publication/ResourceWrapper.java?rev=571280&r1=571279&r2=571280&view=diff
==============================================================================
--- lenya/trunk/src/modules/resource/java/src/org/apache/lenya/cms/publication/ResourceWrapper.java (original)
+++ lenya/trunk/src/modules/resource/java/src/org/apache/lenya/cms/publication/ResourceWrapper.java Thu Aug 30 12:35:18 2007
@@ -48,6 +48,9 @@
private ServiceManager manager;
private Document document;
+ private static final String MIME_IMAGE_PJPEG = "image/pjpeg";
+ private static final String MIME_IMAGE_JPEG = "image/jpeg";
+
/**
* @param document The document to wrap.
* @param manager The service manager.
@@ -177,8 +180,22 @@
* @return A boolean value.
*/
public static boolean canReadMimeType(String mimeType) {
- Iterator iter = ImageIO.getImageReadersByMIMEType(mimeType);
+ Iterator iter = ImageIO.getImageReadersByMIMEType(translateMimeType(mimeType));
return iter.hasNext();
}
+ /**
+ * Translates the mime type if it can be read, but the tools don't think so.
+ * For example, all jpegs from IE are marked as image/pjpeg, which ImageIO
+ * doesn't return a ImageReader for, even though the one for image/jpeg
+ * works just fine, even for a real image/pjpeg.
+ * @param mimeType The mime type.
+ * @return The translated or original mime type if no translation was applied
+ */
+ private static String translateMimeType(String mimeType) {
+ if(mimeType.equals(MIME_IMAGE_PJPEG)) {
+ return MIME_IMAGE_JPEG;
+ }
+ return mimeType;
+ }
}
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.