deweese     2003/12/17 17:36:39

  Modified:    samples/tests/spec/color colorProfile.svg
               sources/org/apache/batik/css/parser Parser.java
               sources/org/apache/batik/ext/awt/image/spi
                        JPEGRegistryEntry.java
               sources/org/apache/batik/util ParsedURLData.java
  Log:
  1) Now supports CSS properties with the max negative 32bit int value
     (Bug #25251)
  2) Supports more JPEG types.
  3) Support deflate compressed streams in addtion to gzip.
  PR: 25251
  
  Revision  Changes    Path
  1.6       +2 -15     xml-batik/samples/tests/spec/color/colorProfile.svg
  
  Index: colorProfile.svg
  ===================================================================
  RCS file: /home/cvs/xml-batik/samples/tests/spec/color/colorProfile.svg,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- colorProfile.svg  8 Aug 2003 11:39:31 -0000       1.5
  +++ colorProfile.svg  18 Dec 2003 01:36:39 -0000      1.6
  @@ -101,19 +101,6 @@
                   <rect x="100" y="25" width="25" height="25" fill="rgb(255, 255, 
255)" />
               </g>
   
  -            <g id="testColorsICCAuto">
  -                <rect x="0" y="0" width="25" height="25" fill="rgb(179, 70, 25) 
icc-color(colorChange, 0.702, 0.2745, 0.098)" />
  -                <rect x="25" y="0" width="25" height="25" fill="rgb(138, 237, 76) 
icc-color(colorChange, 0.5412, 0.9294, 0.298)" />
  -                <rect x="50" y="0" width="25" height="25" fill="rgb(88, 35, 244) 
icc-color(colorChange, 0.3451, 0.1373, 0.9569)" />
  -                <rect x="75" y="0" width="25" height="25" fill="rgb(168, 241, 253) 
icc-color(colorChange, 0.6588, 0.9451, 0.9922)" />
  -                <rect x="100" y="0" width="25" height="25" fill="rgb(205, 81, 242) 
icc-color(colorChange, 0.8039, 0.3176, 0.949)" />
  -                <rect x="0" y="25" width="25" height="25" fill="rgb(234, 251, 82) 
icc-color(colorChange, 0.9176, 0.9843, 0.3216)" />
  -                <rect x="25" y="25" width="25" height="25" fill="rgb(0, 0, 0) 
icc-color(colorChange, 0.0, 0.0, 0.0)" />
  -                <rect x="50" y="25" width="25" height="25" fill="rgb(109, 109, 109) 
icc-color(colorChange, 0.4275, 0.4275, 0.4275)" />
  -                <rect x="75" y="25" width="25" height="25" fill="rgb(188, 188, 188) 
icc-color(colorChange, 0.7373, 0.7373, 0.7373)" />
  -                <rect x="100" y="25" width="25" height="25" fill="rgb(255, 255, 
255) icc-color(colorChange, 1.0, 1.0, 1.0)" />
  -            </g>
  -
                        <color-profile name="changeColorAuto" 
                              rendering-intent="auto"
                              xlink:href="../../resources/icc/changeColor.icm"/>
  @@ -280,7 +267,7 @@
               <rect x="75" y="0" width="25" height="25" fill="rgb(168, 241, 253) 
icc-color(changeColorAuto, 0.6588, 0.9451, 0.9922)" />
               <rect x="100" y="0" width="25" height="25" fill="rgb(205, 81, 242) 
icc-color(changeColorAuto, 0.8039, 0.3176, 0.949)" />
               <rect x="0" y="25" width="25" height="25" fill="rgb(234, 251, 82) 
icc-color(changeColorAuto, 0.9176, 0.9843, 0.3216)" />
  -            <rect x="25" y="25" width="25" height="25" fill="rgb(0, 0, 0) 
icc-color(changeColorAuto, 0.0, 0.0, 0.0)" />
  +            <rect x="25" y="25" width="25" height="25" fill="red 
icc-color(changeColorAuto, 0.0, 0.0, 0.0)" />
               <rect x="50" y="25" width="25" height="25" fill="rgb(109, 109, 109) 
icc-color(changeColorAuto, 0.4275, 0.4275, 0.4275)" />
               <rect x="75" y="25" width="25" height="25" fill="rgb(188, 188, 188) 
icc-color(changeColorAuto, 0.7373, 0.7373, 0.7373)" />
               <rect x="100" y="25" width="25" height="25" fill="rgb(255, 255, 255) 
icc-color(changeColorAuto, 1.0, 1.0, 1.0)" />
  
  
  
  1.26      +4 -3      xml-batik/sources/org/apache/batik/css/parser/Parser.java
  
  Index: Parser.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/css/parser/Parser.java,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- Parser.java       20 Nov 2003 10:58:49 -0000      1.25
  +++ Parser.java       18 Dec 2003 01:36:39 -0000      1.26
  @@ -978,8 +978,9 @@
           default:
               switch (current) {
               case LexicalUnits.INTEGER:
  -                int s = (plus) ? 1 : -1;
  -                int val = s * Integer.parseInt(scanner.getStringValue());
  +                String sval = scanner.getStringValue();
  +                if (!plus) sval = "-"+sval;
  +                int val = Integer.parseInt(sval);
                   nextIgnoreSpaces();
                   return CSSLexicalUnit.createInteger(val, prev);
               case LexicalUnits.REAL:
  
  
  
  1.14      +3 -6      
xml-batik/sources/org/apache/batik/ext/awt/image/spi/JPEGRegistryEntry.java
  
  Index: JPEGRegistryEntry.java
  ===================================================================
  RCS file: 
/home/cvs/xml-batik/sources/org/apache/batik/ext/awt/image/spi/JPEGRegistryEntry.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- JPEGRegistryEntry.java    8 Aug 2003 11:39:09 -0000       1.13
  +++ JPEGRegistryEntry.java    18 Dec 2003 01:36:39 -0000      1.14
  @@ -73,15 +73,12 @@
   public class JPEGRegistryEntry 
       extends MagicNumberRegistryEntry {
   
  -    static final byte [] sigJFIF   = {(byte)0xFF, (byte)0xd8, 
  -                                      (byte)0xFF, (byte)0xe0};
  -    static final byte [] sigEXIF   = {(byte)0xFF, (byte)0xd8, 
  -                                      (byte)0xFF, (byte)0xe1};
  +    static final byte [] sigJPEG   = {(byte)0xFF, (byte)0xd8, 
  +                                      (byte)0xFF};
       static final String [] exts      = {"jpeg", "jpg" };
       static final String [] mimeTypes = {"image/jpeg", "image/jpg" };
       static final MagicNumber [] magicNumbers = {
  -        new MagicNumber(0, sigJFIF),
  -        new MagicNumber(0, sigEXIF)
  +        new MagicNumber(0, sigJPEG)
       };
   
       public JPEGRegistryEntry() {
  
  
  
  1.14      +30 -1     xml-batik/sources/org/apache/batik/util/ParsedURLData.java
  
  Index: ParsedURLData.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/util/ParsedURLData.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- ParsedURLData.java        16 Sep 2003 01:12:53 -0000      1.13
  +++ ParsedURLData.java        18 Dec 2003 01:36:39 -0000      1.14
  @@ -61,6 +61,8 @@
   import java.util.LinkedList;
   import java.util.List;
   import java.util.zip.GZIPInputStream;
  +import java.util.zip.InflaterInputStream;
  +import java.util.zip.ZipException;
   
   /**
    * Holds the data for more URL's
  @@ -111,6 +113,33 @@
           if ((data[0] == GZIP_MAGIC[0]) &&
               (data[1] == GZIP_MAGIC[1]))
               return new GZIPInputStream(is);
  +
  +        if (((data[0]&0x0F)  == 8) &&
  +            ((data[0]>>>4)   <= 7)) {
  +            // Check for a zlib (deflate) stream 
  +            int chk = ((((int)data[0])&0xFF)*256+
  +                       (((int)data[1])&0xFF));
  +            if ((chk %31)  == 0) {
  +                try {
  +                    // I'm not really as certain of this check
  +                    // as I would like so I want to force it
  +                    // to decode part of the stream.
  +                    is.mark(100);
  +                    InputStream ret = new InflaterInputStream(is);
  +                    if (!ret.markSupported())
  +                        ret = new BufferedInputStream(ret);
  +                    ret.mark(2);
  +                    ret.read(data);
  +                    is.reset();
  +                    ret = new InflaterInputStream(is);
  +                    return ret;
  +                } catch (ZipException ze) {
  +                    is.reset();
  +                    return is;
  +                }
  +            }
  +        }
  +        
           return is;
       }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to