}
void user_error_fn( png_structp png_ptr, png_const_charp error_msg ){
- g_FuncTable.m_pfnSysPrintf( "libpng error: %s\n", error_msg );
+ globalErrorStream() << "libpng error: " << error_msg << "\n";
- longjmp( png_jmpbuf( png_ptr ), 0 );
+ longjmp( png_jmpbuf(png_ptr), 0 );
}
void user_read_data( png_structp png_ptr, png_bytep data, png_uint_32 length ){
}
// configure the read function
- png_set_read_fn( png_ptr, ( void * ) & p_fbuffer, ( png_rw_ptr ) & user_read_data );
+ png_set_read_fn( png_ptr, ( png_voidp ) & p_fbuffer, ( png_rw_ptr ) & user_read_data );
- if ( setjmp( png_jmpbuf( png_ptr ) ) ) {
+ if ( setjmp( png_jmpbuf(png_ptr) ) ) {
png_destroy_read_struct( &png_ptr, &info_ptr,
&end_info );
- if ( *pic ) {
- g_free( *pic );
- free( row_pointers );
- }
- return;
+ return 0;
}
png_read_info( png_ptr, info_ptr );
static void LoadPNGBuffer( byte *buffer, int size, byte **pixels, int *width, int *height ){
png_struct *png;
png_info *info, *end;
- pngBuffer_t *pb = (pngBuffer_t*) png_get_io_ptr( png );
- int i, bitDepth, colorType, channels;
- png_uint_32 w, h;
+ pngBuffer_t pb;
++ //pngBuffer_t *pb = (pngBuffer_t*) png_get_io_ptr( png );
+ int bitDepth, colorType;
+ png_uint_32 w, h, i;
byte **rowPointers;
-
/* dummy check */
if ( buffer == NULL || size <= 0 || pixels == NULL || width == NULL || height == NULL ) {
return;