return comp info in bytes (support for 16 bit images)

This commit is contained in:
Anaël Seghezzi 2017-11-24 13:44:39 +01:00
parent 9d9f75eb68
commit 9dfa8c7f31

View File

@ -4902,7 +4902,7 @@ static int stbi__png_info_raw(stbi__png *p, int *x, int *y, int *comp)
}
if (x) *x = p->s->img_x;
if (y) *y = p->s->img_y;
if (comp) *comp = p->s->img_n;
if (comp) *comp = p->s->img_n * p->depth / 8;
return 1;
}
@ -6667,7 +6667,7 @@ 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, dummy;
int channelCount, dummy, depth;
if (!x) x = &dummy;
if (!y) y = &dummy;
if (!comp) comp = &dummy;
@ -6687,7 +6687,8 @@ static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp)
}
*y = stbi__get32be(s);
*x = stbi__get32be(s);
if (stbi__get16be(s) != 8) {
depth = stbi__get16be(s);
if (depth != 8 && depth != 16) {
stbi__rewind( s );
return 0;
}
@ -6695,7 +6696,7 @@ static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp)
stbi__rewind( s );
return 0;
}
*comp = 4;
*comp = 4 * depth / 8;
return 1;
}
#endif