From e1d9dfed5777ec96fbe7c8d235aef4885ce28cf7 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Mon, 03 Nov 2014 11:38:50 +0000
Subject: [PATCH] JPEGSyntaxImpl.java: In isValidJfif() and isValidExif(), fixed a bug: original code was buggy. In isValidJfif(), fixed the javadoc that I badly copied in r11231 :(
---
opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/JPEGSyntaxImpl.java | 13 ++++++-------
1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/JPEGSyntaxImpl.java b/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/JPEGSyntaxImpl.java
index 7f46346..a66b7bc 100644
--- a/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/JPEGSyntaxImpl.java
+++ b/opendj-core/src/main/java/org/forgerock/opendj/ldap/schema/JPEGSyntaxImpl.java
@@ -22,9 +22,8 @@
*
*
* Copyright 2009 Sun Microsystems, Inc.
- * Portions Copyright 2012 ForgeRock AS
+ * Portions Copyright 2012-2014 ForgeRock AS
*/
-
package org.forgerock.opendj.ldap.schema;
import org.forgerock.i18n.LocalizableMessageBuilder;
@@ -80,16 +79,16 @@
}
/**
- * Exif files (from most digital cameras) start:
+ * JFIF files start:
* <pre>
- * 0xff 0xd8 0xff 0xe1 LH LL 0x45 0x78 0x69 0x66 ...
- * SOI APP1 len "Exif"
+ * 0xff 0xd8 0xff 0xe0 LH LL 0x4a 0x46 0x49 0x46 ...
+ * SOI APP0 len "JFIF"
* </pre>
* So all legal values must be at least 10 bytes long
*/
private boolean isValidJfif(final ByteSequence value) {
return value.length() >= 10
- && value.byteAt(0) == (byte) 0xff || value.byteAt(1) == (byte) 0xd8
+ && value.byteAt(0) == (byte) 0xff && value.byteAt(1) == (byte) 0xd8
&& value.byteAt(2) == (byte) 0xff && value.byteAt(3) == (byte) 0xe0
&& value.byteAt(6) == 'J' && value.byteAt(7) == 'F'
&& value.byteAt(8) == 'I' && value.byteAt(9) == 'F';
@@ -105,7 +104,7 @@
*/
private boolean isValidExif(final ByteSequence value) {
return value.length() >= 10
- && value.byteAt(0) == (byte) 0xff || value.byteAt(1) == (byte) 0xd8
+ && value.byteAt(0) == (byte) 0xff && value.byteAt(1) == (byte) 0xd8
&& value.byteAt(2) == (byte) 0xff && value.byteAt(3) == (byte) 0xe1
&& value.byteAt(6) == 'E' && value.byteAt(7) == 'x'
&& value.byteAt(8) == 'i' && value.byteAt(9) == 'f';
--
Gitblit v1.10.0