@ -5875,9 +5875,11 @@ static stbi_uc *stbi__pic_load_core(stbi__context *s,int width,int height,int *c
static void * stbi__pic_load ( stbi__context * s , int * px , int * py , int * comp , int req_comp , stbi__result_info * ri )
{
stbi_uc * result ;
int i , x , y ;
int i , x , y , internal_comp ;
STBI_NOTUSED ( ri ) ;
if ( ! comp ) comp = & internal_comp ;
for ( i = 0 ; i < 92 ; + + i )
stbi__get8 ( s ) ;
@ -6496,6 +6498,11 @@ static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp)
char buffer [ STBI__HDR_BUFLEN ] ;
char * token ;
int valid = 0 ;
int dummy ;
if ( ! x ) x = & dummy ;
if ( ! y ) y = & dummy ;
if ( ! comp ) comp = & dummy ;
if ( stbi__hdr_test ( s ) = = 0 ) {
stbi__rewind ( s ) ;
@ -6542,9 +6549,9 @@ static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp)
stbi__rewind ( s ) ;
if ( p = = NULL )
return 0 ;
* x = s - > img_x ;
* y = s - > img_y ;
* comp = info . ma ? 4 : 3 ;
if ( x ) * x = s - > img_x ;
if ( y ) * y = s - > img_y ;
if ( comp ) * comp = info . ma ? 4 : 3 ;
return 1 ;
}
# endif
@ -6552,7 +6559,10 @@ static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp)
# ifndef STBI_NO_PSD
static int stbi__psd_info ( stbi__context * s , int * x , int * y , int * comp )
{
int channelCount ;
int channelCount , dummy ;
if ( ! x ) x = & dummy ;
if ( ! y ) y = & dummy ;
if ( ! comp ) comp = & dummy ;
if ( stbi__get32be ( s ) ! = 0x38425053 ) {
stbi__rewind ( s ) ;
return 0 ;
@ -6585,9 +6595,13 @@ static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp)
# ifndef STBI_NO_PIC
static int stbi__pic_info ( stbi__context * s , int * x , int * y , int * comp )
{
int act_comp = 0 , num_packets = 0 , chained ;
int act_comp = 0 , num_packets = 0 , chained , dummy ;
stbi__pic_packet packets [ 10 ] ;
if ( ! x ) x = & dummy ;
if ( ! y ) y = & dummy ;
if ( ! comp ) comp = & dummy ;
if ( ! stbi__pic_is4 ( s , " \x53 \x80 \xF6 \x34 " ) ) {
stbi__rewind ( s ) ;
return 0 ;
@ -6673,7 +6687,7 @@ static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req
* x = s - > img_x ;
* y = s - > img_y ;
* comp = s - > img_n ;
if ( comp ) * comp = s - > img_n ;
if ( ! stbi__mad3sizes_valid ( s - > img_n , s - > img_x , s - > img_y , 0 ) )
return stbi__errpuc ( " too large " , " PNM too large " ) ;
@ -6727,16 +6741,20 @@ static int stbi__pnm_getinteger(stbi__context *s, char *c)
static int stbi__pnm_info ( stbi__context * s , int * x , int * y , int * comp )
{
int maxv ;
int maxv , dummy ;
char c , p , t ;
stbi__rewind ( s ) ;
if ( ! x ) x = & dummy ;
if ( ! y ) y = & dummy ;
if ( ! comp ) comp = & dummy ;
stbi__rewind ( s ) ;
// Get identifier
p = ( char ) stbi__get8 ( s ) ;
t = ( char ) stbi__get8 ( s ) ;
if ( p ! = ' P ' | | ( t ! = ' 5 ' & & t ! = ' 6 ' ) ) {
stbi__rewind ( s ) ;
stbi__rewind ( s ) ;
return 0 ;
}