X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=svrt.git;a=blobdiff_plain;f=rgb_image.cc;h=f9b01c4bb8f5c446351e38abcc1160c54825be5e;hp=edb28eb93726303ba9d55c63a6d177b0b2e57ece;hb=HEAD;hpb=710261483c33cac17ebe246c3092ea52e883c1a3 diff --git a/rgb_image.cc b/rgb_image.cc index edb28eb..f9b01c4 100644 --- a/rgb_image.cc +++ b/rgb_image.cc @@ -25,7 +25,7 @@ #include #include -#include +#include #include "jpeg_misc.h" #include "rgb_image.h" @@ -145,13 +145,13 @@ void RGBImage::read_png(const char *name) { png_set_sig_bytes(png_ptr, header_size); png_read_info(png_ptr, info_ptr); - _width = info_ptr->width; - _height = info_ptr->height; + _width = png_get_image_width(png_ptr, info_ptr); + _height = png_get_image_height(png_ptr, info_ptr); png_byte bit_depth, color_type, channels; - color_type = info_ptr->color_type; - bit_depth = info_ptr->bit_depth; - channels = info_ptr->channels; + color_type = png_get_color_type(png_ptr, info_ptr); + bit_depth = png_get_bit_depth(png_ptr, info_ptr); + channels = png_get_channels(png_ptr, info_ptr); if(bit_depth != 8) { cerr << "Can only read 8-bits PNG images." << endl; @@ -161,7 +161,7 @@ void RGBImage::read_png(const char *name) { // allocate image pointer row_pointers = (png_bytep*) malloc(sizeof(png_bytep) * _height); for (int y = 0; y < _height; y++) - row_pointers[y] = (png_byte*) malloc(info_ptr->rowbytes); + row_pointers[y] = (png_byte*) malloc(png_get_rowbytes(png_ptr, info_ptr)); allocate(); @@ -266,7 +266,7 @@ void RGBImage::write_png(const char *name) { // allocate memory row_pointers = (png_bytep*) malloc(sizeof(png_bytep) * _height); for (int y = 0; y < _height; y++) - row_pointers[y] = (png_byte*) malloc(info_ptr->rowbytes); + row_pointers[y] = (png_byte*) malloc(png_get_rowbytes(png_ptr, info_ptr)); int k; for (int y = 0; y < _height; y++) {