You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2010/04/10 10:04:34 UTC

svn commit: r932675 - /camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java

Author: davsclaus
Date: Sat Apr 10 08:04:34 2010
New Revision: 932675

URL: http://svn.apache.org/viewvc?rev=932675&view=rev
Log:
Fixing camel-crypto running on JBM JDK 1.6

Modified:
    camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java

Modified: camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java?rev=932675&r1=932674&r2=932675&view=diff
==============================================================================
--- camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java (original)
+++ camel/trunk/components/camel-crypto/src/main/java/org/apache/camel/converter/crypto/CryptoDataFormat.java Sat Apr 10 08:04:34 2010
@@ -133,7 +133,11 @@ public class CryptoDataFormat implements
                     cipherStream.flush();
                     hmac.encryptUpdate(buffer, read);
                 }
-                cipherStream.write(hmac.getCalculatedMac());
+                // only write if there is data to write (IBM JDK throws exception if no data)
+                byte[] mac = hmac.getCalculatedMac();
+                if (mac != null && mac.length > 0) {
+                    cipherStream.write(mac);
+                }
             } finally {
                 ObjectHelper.close(cipherStream, "cipher", LOG);
             }