You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ma...@apache.org on 2021/02/27 18:26:37 UTC

svn commit: r1886987 - in /poi/trunk/src: java/org/apache/poi/hssf/usermodel/ scratchpad/src/org/apache/poi/hslf/usermodel/ scratchpad/src/org/apache/poi/hwpf/model/

Author: mariusvolkhart
Date: Sat Feb 27 18:26:36 2021
New Revision: 1886987

URL: http://svn.apache.org/viewvc?rev=1886987&view=rev
Log:
Replace magic constant use of Escher Blip Start type ID with reference

Instead of referring to the magic constant 0xF018, reference the value in the EscherRecordTypes enum.

Modified:
    poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPictureData.java
    poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFPictureData.java
    poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowImpl.java
    poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/PICFAndOfficeArtData.java

Modified: poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPictureData.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPictureData.java?rev=1886987&r1=1886986&r2=1886987&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPictureData.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFPictureData.java Sat Feb 27 18:26:36 2021
@@ -72,7 +72,7 @@ public class HSSFPictureData implements
      * @see HSSFWorkbook#PICTURE_TYPE_PICT
      */
     public int getFormat(){
-        return blip.getRecordId() - (short)0xF018;
+        return blip.getRecordId() - EscherRecordTypes.BLIP_START.typeID;
     }
 
     /**

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFPictureData.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFPictureData.java?rev=1886987&r1=1886986&r2=1886987&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFPictureData.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFPictureData.java Sat Feb 27 18:26:36 2021
@@ -28,6 +28,7 @@ import java.util.Map;
 import java.util.function.Supplier;
 
 import org.apache.poi.common.usermodel.GenericRecord;
+import org.apache.poi.ddf.EscherRecordTypes;
 import org.apache.poi.hslf.blip.DIB;
 import org.apache.poi.hslf.blip.EMF;
 import org.apache.poi.hslf.blip.JPEG;
@@ -159,7 +160,7 @@ public abstract class HSLFPictureData im
 
         data = new byte[LittleEndianConsts.SHORT_SIZE];
         PictureType pt = getType();
-        LittleEndian.putUShort(data, 0, pt.nativeId + 0xF018);
+        LittleEndian.putUShort(data, 0, pt.nativeId + EscherRecordTypes.BLIP_START.typeID);
         out.write(data);
 
         byte[] rd = getRawData();

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowImpl.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowImpl.java?rev=1886987&r1=1886986&r2=1886987&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowImpl.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hslf/usermodel/HSLFSlideShowImpl.java Sat Feb 27 18:26:36 2021
@@ -381,7 +381,7 @@ public final class HSLFSlideShowImpl ext
 
                 // When parsing the BStoreDelay stream, [MS-ODRAW] says that we
                 //  should terminate if the type isn't 0xf007 or 0xf018->0xf117
-                if (!((type == EscherRecordTypes.BSE.typeID) || (type >= 0xf018 && type <= 0xf117))) {
+                if (!((type == EscherRecordTypes.BSE.typeID) || (type >= EscherRecordTypes.BLIP_START.typeID && type <= 0xf117))) {
                     break;
                 }
 
@@ -392,8 +392,8 @@ public final class HSLFSlideShowImpl ext
                     throw new CorruptPowerPointFileException("The file contains a picture, at position " + _pictures.size() + ", which has a negatively sized data length, so we can't trust any of the picture data");
                 }
 
-                // If they type (including the bonus 0xF018) is 0, skip it
-                PictureType pt = PictureType.forNativeID(type - 0xF018);
+                // If the type (including the bonus 0xF018) is 0, skip it
+                PictureType pt = PictureType.forNativeID(type - EscherRecordTypes.BLIP_START.typeID);
                 if (pt == null) {
                     LOG.atError().log("Problem reading picture: Invalid image type 0, on picture with length {}.\nYour document will probably become corrupted if you save it! Position: {}", box(imgsize),box(pos));
                 } else {

Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/PICFAndOfficeArtData.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/PICFAndOfficeArtData.java?rev=1886987&r1=1886986&r2=1886987&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/PICFAndOfficeArtData.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/model/PICFAndOfficeArtData.java Sat Feb 27 18:26:36 2021
@@ -73,7 +73,7 @@ public class PICFAndOfficeArtData
             EscherRecord nextRecord = escherRecordFactory.createRecord(
                     dataStream, offset );
             if ( nextRecord.getRecordId() != EscherRecordTypes.BSE.typeID
-                    && ( nextRecord.getRecordId() < (short) 0xF018 || nextRecord
+                    && ( nextRecord.getRecordId() < EscherRecordTypes.BLIP_START.typeID || nextRecord
                             .getRecordId() > (short) 0xF117 ) )
                 break;
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org