Author: michiel
Date: 2010-05-17 14:49:31 +0200 (Mon, 17 May 2010)
New Revision: 42188
Modified:
mmbase/branches/MMBase-1_9/applications/resources/src/main/java/org/mmbase/module/builders/ImageCaches.java
Log:
MMB-1957
Modified:
mmbase/branches/MMBase-1_9/applications/resources/src/main/java/org/mmbase/module/builders/ImageCaches.java
===================================================================
---
mmbase/branches/MMBase-1_9/applications/resources/src/main/java/org/mmbase/module/builders/ImageCaches.java
2010-05-17 12:39:47 UTC (rev 42187)
+++
mmbase/branches/MMBase-1_9/applications/resources/src/main/java/org/mmbase/module/builders/ImageCaches.java
2010-05-17 12:49:31 UTC (rev 42188)
@@ -70,6 +70,19 @@
return getNode(node.getIntValue(FIELD_ID));
}
+ /**
+ * @since MMBase-1.9.4
+ */
+ protected void appendExtension(StringBuilder buf, String ext) {
+ int extensionIndex = buf.lastIndexOf(".");
+ if (extensionIndex > 0) {
+ buf.replace(extensionIndex + 1, buf.length(), ext);
+ } else {
+ buf.append('.').append(ext);
+ }
+ }
+
+ @Override
public StringBuilder getFileName(MMObjectNode node, StringBuilder buf) {
MMObjectNode originalImage = originalImage(node);
ImagesInterface images = (ImagesInterface) originalImage.getBuilder();
@@ -77,13 +90,14 @@
String ext = getImageFormat(node);
if (! (images instanceof Images) || ((Images)
images).storesImageType()) { // otherwise too expensive
if (! ext.equals(images.getImageFormat(originalImage))) {
- buf.append('.').append(ext);
+ appendExtension(buf, ext);
}
} else {
- buf.append('.').append(ext);
+ appendExtension(buf, ext);
}
return buf;
}
+
protected boolean addFileName(MMObjectNode node, String servlet) {
if (super.addFileName(node, servlet)) return true;
MMObjectNode originalImage = originalImage(node);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs