parameter
- support UTF8 text with Freetype 1.x
- second parameter to SvPV() must be of type STRLEN
- - Doc pathces from cogent.
- - Fixed out of bounds access on bitmap for flood fills.
+ - Doc pathces from cogent.
+ - Fixed out of bounds access on bitmap for flood fills.
+ - some char * vs unsigned char * casts missing on OSF1 v4.0
+ - some enums had , on the last item in datatypes.h, which OSF1
+ didn't like
+ - Compaq C 6.4 (OSF1) claims to be C99 but doesn't provide
+ stdint.h, don't try to use it under OSF
+ - fix missing initialization in tags.c
+
=================================================================
For latest versions check the Imager-devel pages:
data = NULL;
tlength = io_slurp(ig, &data);
EXTEND(SP,1);
- PUSHs(sv_2mortal(newSVpv(data,tlength)));
+ PUSHs(sv_2mortal(newSVpv((char *)data,tlength)));
myfree(data);
Imager::ImgRaw im
PPCODE:
EXTEND(SP, 1);
- PUSHs(im->idata ? sv_2mortal(newSVpv(im->idata, im->bytes))
+ PUSHs(im->idata ?
+ sv_2mortal(newSVpv((char *)im->idata, im->bytes))
: &PL_sv_undef);
}
else {
EXTEND(SP, 1);
- PUSHs(sv_2mortal(newSVpv(work, count * sizeof(i_palidx))));
+ PUSHs(sv_2mortal(newSVpv((char *)work, count * sizeof(i_palidx))));
}
myfree(work);
}
}
else {
EXTEND(SP, 1);
- PUSHs(sv_2mortal(newSVpv(data, count * sizeof(i_sample_t))));
+ PUSHs(sv_2mortal(newSVpv((char *)data, count * sizeof(i_sample_t))));
}
myfree(data);
}
STRLEN len;
CODE:
if (SvOK(ST(4))) {
- cust_hatch = SvPV(ST(4), len);
+ cust_hatch = (unsigned char *)SvPV(ST(4), len);
}
else
cust_hatch = NULL;
STRLEN len;
CODE:
if (SvOK(ST(4))) {
- cust_hatch = SvPV(ST(4), len);
+ cust_hatch = (unsigned char *)SvPV(ST(4), len);
}
else
cust_hatch = NULL;
typedef enum {
i_direct_type, /* direct colour, keeps RGB values per pixel */
- i_palette_type, /* keeps a palette index per pixel */
+ i_palette_type /* keeps a palette index per pixel */
} i_img_type_t;
typedef enum {
/* a paletted image might have one bit per sample */
i_8_bits = 8,
i_16_bits = 16,
- i_double_bits = sizeof(double) * 8,
+ i_double_bits = sizeof(double) * 8
} i_img_bits_t;
typedef struct {
so we check for one otherwise we work by bytes directly
We do assume 8-bit char
+
+ "Compaq C V6.4-009 on Compaq Tru64 UNIX V5.1A (Rev. 1885)" says it
+ supports C99, but doesn't supply stdint.h, which is required for
+ both hosted and freestanding implementations. So guard against it.
*/
-#if __STDC_VERSION__ >= 199901L
+#if __STDC_VERSION__ >= 199901L && !defined(OS_dec_osf)
/* C99 should define something useful */
#include <stdint.h>
#ifdef UINT16_MAX
static int parse_long_list(char *data, char **end, int maxcount, long *out) {
int i;
+ i = 0;
while (i < maxcount-1) {
if (!parse_long(data, &data, out))
return 0;