]> source.dussan.org Git - poi.git/commitdiff
Replace magic constant use of EscherBSERecord type ID with reference
authorMarius Volkhart <mariusvolkhart@apache.org>
Sat, 27 Feb 2021 18:22:33 +0000 (18:22 +0000)
committerMarius Volkhart <mariusvolkhart@apache.org>
Sat, 27 Feb 2021 18:22:33 +0000 (18:22 +0000)
Instead of referring to the magic constant 0xF007, reference the value in the EscherRecordTypes enum.

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1886986 13f79535-47bb-0310-9956-ffa450edef68

src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowEncrypted.java
src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowImpl.java
src/scratchpad/src/org/apache/poi/hwpf/model/PICFAndOfficeArtData.java
src/scratchpad/src/org/apache/poi/hwpf/usermodel/Picture.java

index 42682f550d0ef12aa5ca8e6071480cc1253c002e..ba1aaf499535021b07ae39f2f1dcd15fafb69473 100644 (file)
@@ -28,6 +28,7 @@ import java.util.NavigableMap;
 import java.util.TreeMap;
 
 import org.apache.poi.EncryptedDocumentException;
+import org.apache.poi.ddf.EscherRecordTypes;
 import org.apache.poi.hslf.exceptions.CorruptPowerPointFileException;
 import org.apache.poi.hslf.exceptions.EncryptedPowerPointFileException;
 import org.apache.poi.hslf.record.DocumentEncryptionAtom;
@@ -220,7 +221,7 @@ public class HSLFSlideShowEncrypted implements Closeable {
             offset += 8;
             int endOffset = offset + rlen;
 
-            if (recType == 0xF007) {
+            if (recType == EscherRecordTypes.BSE.typeID) {
                 // TOOD: get a real example file ... to actual test the FBSE entry
                 // not sure where the foDelay block is
 
@@ -298,7 +299,7 @@ public class HSLFSlideShowEncrypted implements Closeable {
             offset += 8;
             int endOffset = offset + rlen;
 
-            if (recType == 0xF007) {
+            if (recType == EscherRecordTypes.BSE.typeID) {
                 // TOOD: get a real example file ... to actual test the FBSE entry
                 // not sure where the foDelay block is
 
index 4295712b89fb3f80bcdc31c6d77bd47c30a1e71c..98b62bfb8333d52d9935300ce0e91fe8f42d3922 100644 (file)
@@ -40,6 +40,7 @@ import java.util.TreeMap;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 import org.apache.poi.POIDocument;
+import org.apache.poi.ddf.EscherRecordTypes;
 import org.apache.poi.hpsf.PropertySet;
 import org.apache.poi.hslf.exceptions.CorruptPowerPointFileException;
 import org.apache.poi.hslf.exceptions.HSLFException;
@@ -380,7 +381,7 @@ public final class HSLFSlideShowImpl extends POIDocument implements Closeable {
 
                 // When parsing the BStoreDelay stream, [MS-ODRAW] says that we
                 //  should terminate if the type isn't 0xf007 or 0xf018->0xf117
-                if (!((type == 0xf007) || (type >= 0xf018 && type <= 0xf117))) {
+                if (!((type == EscherRecordTypes.BSE.typeID) || (type >= 0xf018 && type <= 0xf117))) {
                     break;
                 }
 
index 85205b7bb1a4302b4d3d51858a7f82877736edd5..fdf0a12857bd5f4a590592692223a45cd2c021b1 100644 (file)
@@ -22,6 +22,7 @@ import java.util.List;
 import org.apache.poi.ddf.DefaultEscherRecordFactory;
 import org.apache.poi.ddf.EscherContainerRecord;
 import org.apache.poi.ddf.EscherRecord;
+import org.apache.poi.ddf.EscherRecordTypes;
 import org.apache.poi.hwpf.model.types.PICFAbstractType;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.Internal;
@@ -71,7 +72,7 @@ public class PICFAndOfficeArtData
         {
             EscherRecord nextRecord = escherRecordFactory.createRecord(
                     dataStream, offset );
-            if ( nextRecord.getRecordId() != (short) 0xF007
+            if ( nextRecord.getRecordId() != EscherRecordTypes.BSE.typeID
                     && ( nextRecord.getRecordId() < (short) 0xF018 || nextRecord
                             .getRecordId() > (short) 0xF117 ) )
                 break;
index 315e0be4755b90f6dcc269ec47b392a454af9cfd..528df95f1823403c0b54f2503aa85252b75f88d9 100644 (file)
@@ -34,6 +34,7 @@ import org.apache.poi.ddf.EscherOptRecord;
 import org.apache.poi.ddf.EscherProperty;
 import org.apache.poi.ddf.EscherPropertyTypes;
 import org.apache.poi.ddf.EscherRecord;
+import org.apache.poi.ddf.EscherRecordTypes;
 import org.apache.poi.hwpf.model.PICF;
 import org.apache.poi.hwpf.model.PICFAndOfficeArtData;
 import org.apache.poi.sl.image.ImageHeaderPNG;
@@ -512,56 +513,51 @@ public final class Picture {
         }
 
         EscherRecord escherRecord = _blipRecords.get( 0 );
-        switch ( escherRecord.getRecordId() )
-        {
-        case (short) 0xF007:
-        {
+        short recordId = escherRecord.getRecordId();
+        if (recordId == EscherRecordTypes.BSE.typeID) {
             EscherBSERecord bseRecord = (EscherBSERecord) escherRecord;
-            switch ( bseRecord.getBlipTypeWin32() )
-            {
-            case 0x00:
-                return PictureType.UNKNOWN;
-            case 0x01:
-                return PictureType.UNKNOWN;
-            case 0x02:
-                return PictureType.EMF;
-            case 0x03:
-                return PictureType.WMF;
-            case 0x04:
-                return PictureType.PICT;
-            case 0x05:
-                return PictureType.JPEG;
-            case 0x06:
-                return PictureType.PNG;
-            case 0x07:
-                return PictureType.BMP;
-            case 0x11:
-                return PictureType.TIFF;
-            case 0x12:
-                return PictureType.JPEG;
-            default:
-                return PictureType.UNKNOWN;
+            switch (bseRecord.getBlipTypeWin32()) {
+                case 0x00:
+                    return PictureType.UNKNOWN;
+                case 0x01:
+                    return PictureType.UNKNOWN;
+                case 0x02:
+                    return PictureType.EMF;
+                case 0x03:
+                    return PictureType.WMF;
+                case 0x04:
+                    return PictureType.PICT;
+                case 0x05:
+                    return PictureType.JPEG;
+                case 0x06:
+                    return PictureType.PNG;
+                case 0x07:
+                    return PictureType.BMP;
+                case 0x11:
+                    return PictureType.TIFF;
+                case 0x12:
+                    return PictureType.JPEG;
+                default:
+                    return PictureType.UNKNOWN;
             }
-        }
-        case (short) 0xF01A:
+        } else if (recordId == (short) 0xF01A) {
             return PictureType.EMF;
-        case (short) 0xF01B:
+        } else if (recordId == (short) 0xF01B) {
             return PictureType.WMF;
-        case (short) 0xF01C:
+        } else if (recordId == (short) 0xF01C) {
             return PictureType.PICT;
-        case (short) 0xF01D:
+        } else if (recordId == (short) 0xF01D) {
             return PictureType.JPEG;
-        case (short) 0xF01E:
+        } else if (recordId == (short) 0xF01E) {
             return PictureType.PNG;
-        case (short) 0xF01F:
+        } else if (recordId == (short) 0xF01F) {
             return PictureType.BMP;
-        case (short) 0xF029:
+        } else if (recordId == (short) 0xF029) {
             return PictureType.TIFF;
-        case (short) 0xF02A:
+        } else if (recordId == (short) 0xF02A) {
             return PictureType.JPEG;
-        default:
-            return PictureType.UNKNOWN;
         }
+        return PictureType.UNKNOWN;
     }
 
     /**