From: <br...@us...> - 2012-04-23 07:40:17
|
Revision: 4250 http://openvrml.svn.sourceforge.net/openvrml/?rev=4250&view=rev Author: braden Date: 2012-04-23 07:40:06 +0000 (Mon, 23 Apr 2012) Log Message: ----------- libpng 1.5 removes direct access to struct members; use accessor functions instead. Modified Paths: -------------- branches/0.18/ChangeLog branches/0.18/src/node/vrml97/image_stream_listener.cpp branches/0.18/src/node/vrml97/image_stream_listener.h Property Changed: ---------------- branches/0.18/ Property changes on: branches/0.18 ___________________________________________________________________ Modified: svn:mergeinfo - /branches/0.17:3713,3717,3719,3721,3725,3730,3732,3743,3746,3748,3750,3752,3754,3757,3759-3760,3764,3766,3824,3828,3836 /branches/local:3677-3689 /branches/node-modules:3622-3623,3632-3635,3637-3638,3640-3641,3643-3644,3646-3647,3649-3650,3654-3655,3657-3658,3661-3662,3664-3665,3667-3668,3670-3671,3673-3674,3684-3685,3687-3688,3736-3801 /trunk:3958,3965,3967,3969,3971,3973,3975-3976,3979,3981,3983,3985,3987,3989,3991,3997,3999,4001,4003,4005,4011,4013-4014,4017,4019,4021,4024,4026,4028,4030,4032,4041,4043,4045,4053,4055,4057,4059,4061,4063,4065,4067,4069,4071,4073,4075,4077,4079,4081,4083,4085,4087,4089,4091,4093,4095,4097,4099,4101,4107-4108,4113,4115,4117,4119-4120,4122,4124,4129,4131,4133,4135,4137,4139,4141,4143,4145,4147-4148,4150,4156,4159-4160,4162,4164,4169,4171,4174,4178-4179,4181,4183,4186,4188,4190,4192,4194,4196,4198-4199,4201,4203,4206,4208,4210,4212,4214,4216,4218,4220,4222,4224,4226,4228,4230,4232,4236,4243,4245,4247 + /branches/0.17:3713,3717,3719,3721,3725,3730,3732,3743,3746,3748,3750,3752,3754,3757,3759-3760,3764,3766,3824,3828,3836 /branches/local:3677-3689 /branches/node-modules:3622-3623,3632-3635,3637-3638,3640-3641,3643-3644,3646-3647,3649-3650,3654-3655,3657-3658,3661-3662,3664-3665,3667-3668,3670-3671,3673-3674,3684-3685,3687-3688,3736-3801 /trunk:3958,3965,3967,3969,3971,3973,3975-3976,3979,3981,3983,3985,3987,3989,3991,3997,3999,4001,4003,4005,4011,4013-4014,4017,4019,4021,4024,4026,4028,4030,4032,4041,4043,4045,4053,4055,4057,4059,4061,4063,4065,4067,4069,4071,4073,4075,4077,4079,4081,4083,4085,4087,4089,4091,4093,4095,4097,4099,4101,4107-4108,4113,4115,4117,4119-4120,4122,4124,4129,4131,4133,4135,4137,4139,4141,4143,4145,4147-4148,4150,4156,4159-4160,4162,4164,4169,4171,4174,4178-4179,4181,4183,4186,4188,4190,4192,4194,4196,4198-4199,4201,4203,4206,4208,4210,4212,4214,4216,4218,4220,4222,4224,4226,4228,4230,4232,4236,4243,4245,4247,4249 Modified: branches/0.18/ChangeLog =================================================================== --- branches/0.18/ChangeLog 2012-04-23 07:37:06 UTC (rev 4249) +++ branches/0.18/ChangeLog 2012-04-23 07:40:06 UTC (rev 4250) @@ -1,7 +1,15 @@ +2012-04-23 Tom Callaway <tca...@re...> + + libpng 1.5 removes direct access to struct members; use accessor + functions instead. + + * src/node/vrml97/image_stream_listener.cpp + * src/node/vrml97/image_stream_listener.h + 2012-04-23 Braden McDaniel <br...@en...> - NP[P]_GetMIMEDescription returns const char * in recent variations of - NPAPI. + NP[P]_GetMIMEDescription returns const char * in recent variations + of NPAPI. * configure.ac * src/mozilla-plugin/openvrml.cpp Modified: branches/0.18/src/node/vrml97/image_stream_listener.cpp =================================================================== --- branches/0.18/src/node/vrml97/image_stream_listener.cpp 2012-04-23 07:37:06 UTC (rev 4249) +++ branches/0.18/src/node/vrml97/image_stream_listener.cpp 2012-04-23 07:40:06 UTC (rev 4250) @@ -136,7 +136,9 @@ png_read_update_info(png_ptr, info_ptr); - reader.old_row.resize(png_ptr->rowbytes); + reader.width = png_get_image_width(png_ptr, info_ptr); + reader.rowbytes = png_get_rowbytes(png_ptr, info_ptr); + reader.old_row.resize(reader.rowbytes); } void openvrml_png_row_callback(png_structp png_ptr, @@ -166,9 +168,7 @@ // openvrml::image pixels start at the bottom left. // const size_t image_row = (image.y() - 1) - row_num; - const size_t bytes_per_row = png_ptr->rowbytes; - const size_t image_width = png_ptr->width; - for (size_t pixel_index = 0, byte_index = 0; pixel_index < image_width; + for (size_t pixel_index = 0, byte_index = 0; pixel_index < reader.width; ++pixel_index) { using openvrml::int32; int32 pixel = 0x00000000; @@ -188,14 +188,14 @@ ++byte_index; } } - image.pixel(image_row * image_width + pixel_index, pixel); + image.pixel(image_row * reader.width + pixel_index, pixel); } reader.stream_listener.node_.modified(true); - assert(reader.old_row.size() >= bytes_per_row); + assert(reader.old_row.size() >= reader.rowbytes); - copy(new_row, new_row + bytes_per_row, reader.old_row.begin()); + copy(new_row, new_row + reader.rowbytes, reader.old_row.begin()); } void openvrml_png_end_callback(png_structp, png_infop) Modified: branches/0.18/src/node/vrml97/image_stream_listener.h =================================================================== --- branches/0.18/src/node/vrml97/image_stream_listener.h 2012-04-23 07:37:06 UTC (rev 4249) +++ branches/0.18/src/node/vrml97/image_stream_listener.h 2012-04-23 07:40:06 UTC (rev 4250) @@ -88,6 +88,8 @@ image_stream_listener & stream_listener; std::vector<png_byte> old_row; bool gray_palette; + png_uint_32 width; + png_size_t rowbytes; explicit png_reader(image_stream_listener & stream_listener); virtual ~png_reader() OPENVRML_NOTHROW; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |