Diff for /embedaddon/php/ext/standard/image.c between versions 1.1.1.2 and 1.1.1.5

version 1.1.1.2, 2012/05/29 12:34:43 version 1.1.1.5, 2014/06/15 20:03:57
Line 2 Line 2
    +----------------------------------------------------------------------+     +----------------------------------------------------------------------+
    | PHP Version 5                                                        |     | PHP Version 5                                                        |
    +----------------------------------------------------------------------+     +----------------------------------------------------------------------+
   | Copyright (c) 1997-2012 The PHP Group                                |   | Copyright (c) 1997-2014 The PHP Group                                |
    +----------------------------------------------------------------------+     +----------------------------------------------------------------------+
    | This source file is subject to version 3.01 of the PHP license,      |     | This source file is subject to version 3.01 of the PHP license,      |
    | that is bundled with this package in the file LICENSE, and is        |     | that is bundled with this package in the file LICENSE, and is        |
Line 30 Line 30
 #include <unistd.h>  #include <unistd.h>
 #endif  #endif
 #include "php_image.h"  #include "php_image.h"
   #ifdef PHP_WIN32
   #include "win32/php_stdint.h"
   #endif
   
   #if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
 #include "zlib.h"  #include "zlib.h"
   #endif
   
 /* file type markers */  /* file type markers */
 PHPAPI const char php_sig_gif[3] = {'G', 'I', 'F'};  PHPAPI const char php_sig_gif[3] = {'G', 'I', 'F'};
Line 79  PHP_MINIT_FUNCTION(imagetypes) Line 84  PHP_MINIT_FUNCTION(imagetypes)
         REGISTER_LONG_CONSTANT("IMAGETYPE_JP2",     IMAGE_FILETYPE_JP2,     CONST_CS | CONST_PERSISTENT);          REGISTER_LONG_CONSTANT("IMAGETYPE_JP2",     IMAGE_FILETYPE_JP2,     CONST_CS | CONST_PERSISTENT);
         REGISTER_LONG_CONSTANT("IMAGETYPE_JPX",     IMAGE_FILETYPE_JPX,     CONST_CS | CONST_PERSISTENT);          REGISTER_LONG_CONSTANT("IMAGETYPE_JPX",     IMAGE_FILETYPE_JPX,     CONST_CS | CONST_PERSISTENT);
         REGISTER_LONG_CONSTANT("IMAGETYPE_JB2",     IMAGE_FILETYPE_JB2,     CONST_CS | CONST_PERSISTENT);          REGISTER_LONG_CONSTANT("IMAGETYPE_JB2",     IMAGE_FILETYPE_JB2,     CONST_CS | CONST_PERSISTENT);
   #if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
         REGISTER_LONG_CONSTANT("IMAGETYPE_SWC",     IMAGE_FILETYPE_SWC,     CONST_CS | CONST_PERSISTENT);          REGISTER_LONG_CONSTANT("IMAGETYPE_SWC",     IMAGE_FILETYPE_SWC,     CONST_CS | CONST_PERSISTENT);
   #endif  
         REGISTER_LONG_CONSTANT("IMAGETYPE_IFF",     IMAGE_FILETYPE_IFF,     CONST_CS | CONST_PERSISTENT);          REGISTER_LONG_CONSTANT("IMAGETYPE_IFF",     IMAGE_FILETYPE_IFF,     CONST_CS | CONST_PERSISTENT);
         REGISTER_LONG_CONSTANT("IMAGETYPE_WBMP",    IMAGE_FILETYPE_WBMP,    CONST_CS | CONST_PERSISTENT);          REGISTER_LONG_CONSTANT("IMAGETYPE_WBMP",    IMAGE_FILETYPE_WBMP,    CONST_CS | CONST_PERSISTENT);
         REGISTER_LONG_CONSTANT("IMAGETYPE_JPEG2000",IMAGE_FILETYPE_JPC,     CONST_CS | CONST_PERSISTENT); /* keep alias */          REGISTER_LONG_CONSTANT("IMAGETYPE_JPEG2000",IMAGE_FILETYPE_JPC,     CONST_CS | CONST_PERSISTENT); /* keep alias */
Line 108  static struct gfxinfo *php_handle_gif (php_stream * st Line 115  static struct gfxinfo *php_handle_gif (php_stream * st
         result->width    = (unsigned int)dim[0] | (((unsigned int)dim[1])<<8);          result->width    = (unsigned int)dim[0] | (((unsigned int)dim[1])<<8);
         result->height   = (unsigned int)dim[2] | (((unsigned int)dim[3])<<8);          result->height   = (unsigned int)dim[2] | (((unsigned int)dim[3])<<8);
         result->bits     = dim[4]&0x80 ? ((((unsigned int)dim[4])&0x07) + 1) : 0;          result->bits     = dim[4]&0x80 ? ((((unsigned int)dim[4])&0x07) + 1) : 0;
        result->channels = 3; /* allways */        result->channels = 3; /* always */
   
         return result;          return result;
 }  }
Line 155  static struct gfxinfo *php_handle_bmp (php_stream * st Line 162  static struct gfxinfo *php_handle_bmp (php_stream * st
                 result->width    =  (((unsigned int)dim[ 5]) << 8) + ((unsigned int) dim[ 4]);                  result->width    =  (((unsigned int)dim[ 5]) << 8) + ((unsigned int) dim[ 4]);
                 result->height   =  (((unsigned int)dim[ 7]) << 8) + ((unsigned int) dim[ 6]);                  result->height   =  (((unsigned int)dim[ 7]) << 8) + ((unsigned int) dim[ 6]);
                 result->bits     =  ((unsigned int)dim[11]);                  result->bits     =  ((unsigned int)dim[11]);
        } else if (size > 12 && (size <= 64 || size == 108)) {        } else if (size > 12 && (size <= 64 || size == 108 || size == 124)) {
                 result = (struct gfxinfo *) ecalloc (1, sizeof(struct gfxinfo));                  result = (struct gfxinfo *) ecalloc (1, sizeof(struct gfxinfo));
                 result->width    =  (((unsigned int)dim[ 7]) << 24) + (((unsigned int)dim[ 6]) << 16) + (((unsigned int)dim[ 5]) << 8) + ((unsigned int) dim[ 4]);                  result->width    =  (((unsigned int)dim[ 7]) << 24) + (((unsigned int)dim[ 6]) << 16) + (((unsigned int)dim[ 5]) << 8) + ((unsigned int) dim[ 4]);
                 result->height   =  (((unsigned int)dim[11]) << 24) + (((unsigned int)dim[10]) << 16) + (((unsigned int)dim[ 9]) << 8) + ((unsigned int) dim[ 8]);                  result->height   =  (((unsigned int)dim[11]) << 24) + (((unsigned int)dim[10]) << 16) + (((unsigned int)dim[ 9]) << 8) + ((unsigned int) dim[ 8]);
                   result->height   =  abs((int32_t)result->height);
                 result->bits     =  (((unsigned int)dim[15]) <<  8) +  ((unsigned int)dim[14]);                  result->bits     =  (((unsigned int)dim[15]) <<  8) +  ((unsigned int)dim[14]);
         } else {          } else {
                 return NULL;                  return NULL;
Line 184  static unsigned long int php_swf_get_bits (unsigned ch Line 192  static unsigned long int php_swf_get_bits (unsigned ch
 }  }
 /* }}} */  /* }}} */
   
   #if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
 /* {{{ php_handle_swc  /* {{{ php_handle_swc
  */   */
 static struct gfxinfo *php_handle_swc(php_stream * stream TSRMLS_DC)  static struct gfxinfo *php_handle_swc(php_stream * stream TSRMLS_DC)
Line 254  static struct gfxinfo *php_handle_swc(php_stream * str Line 263  static struct gfxinfo *php_handle_swc(php_stream * str
         return result;          return result;
 }  }
 /* }}} */  /* }}} */
   #endif
   
 /* {{{ php_handle_swf  /* {{{ php_handle_swf
  */   */
Line 600  static struct gfxinfo *php_handle_jpc(php_stream * str Line 610  static struct gfxinfo *php_handle_jpc(php_stream * str
   
         /* JPEG 2000 components can be vastly different from one another.          /* JPEG 2000 components can be vastly different from one another.
            Each component can be sampled at a different resolution, use             Each component can be sampled at a different resolution, use
           a different colour space, have a seperate colour depth, and           a different colour space, have a separate colour depth, and
            be compressed totally differently! This makes giving a single             be compressed totally differently! This makes giving a single
            "bit depth" answer somewhat problematic. For this implementation             "bit depth" answer somewhat problematic. For this implementation
            we'll use the highest depth encountered. */             we'll use the highest depth encountered. */
Line 1312  static void php_getimagesize_from_stream(php_stream *s Line 1322  static void php_getimagesize_from_stream(php_stream *s
                         result = php_handle_swf(stream TSRMLS_CC);                          result = php_handle_swf(stream TSRMLS_CC);
                         break;                          break;
                 case IMAGE_FILETYPE_SWC:                  case IMAGE_FILETYPE_SWC:
   #if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB)
                         result = php_handle_swc(stream TSRMLS_CC);                          result = php_handle_swc(stream TSRMLS_CC);
   #else
                           php_error_docref(NULL TSRMLS_CC, E_NOTICE, "The image is a compressed SWF file, but you do not have a static version of the zlib extension enabled");
   #endif
                         break;                          break;
                 case IMAGE_FILETYPE_PSD:                  case IMAGE_FILETYPE_PSD:
                         result = php_handle_psd(stream TSRMLS_CC);                          result = php_handle_psd(stream TSRMLS_CC);

Removed from v.1.1.1.2  
changed lines
  Added in v.1.1.1.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>