Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 286333 Details for
Bug 378467
media-gfx/metapixel fails to build with libpng-1.5
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Unworking patch
metapixel-1.0.2-libpng15.patch (text/plain), 4.69 KB, created by
Samuli Suominen (RETIRED)
on 2011-09-13 11:04:54 UTC
(
hide
)
Description:
Unworking patch
Filename:
MIME Type:
Creator:
Samuli Suominen (RETIRED)
Created:
2011-09-13 11:04:54 UTC
Size:
4.69 KB
patch
obsolete
>diff -ur metapixel-1.0.2.orig/rwimg/rwpng.c metapixel-1.0.2/rwimg/rwpng.c >--- metapixel-1.0.2.orig/rwimg/rwpng.c 2006-12-10 19:59:54.000000000 +0200 >+++ metapixel-1.0.2/rwimg/rwpng.c 2011-09-13 13:49:13.000000000 +0300 >@@ -57,19 +57,19 @@ > data->end_info = png_create_info_struct(data->png_ptr); > assert(data->end_info != 0); > >- if (setjmp(data->png_ptr->jmpbuf)) >+ if (setjmp(data->png_jmpbuf(png_ptr))) > assert(0); > > png_init_io(data->png_ptr, data->file); > > png_read_info(data->png_ptr, data->info_ptr); > >- *width = data->info_ptr->width; >- *height = data->info_ptr->height; >+ *width = data->png_get_image_width(png_ptr, info_ptr); >+ *height = data->png_get_image_height(png_ptr, info_ptr); > >- assert(data->info_ptr->bit_depth == 8 || data->info_ptr->bit_depth == 16); >- assert(data->info_ptr->color_type == PNG_COLOR_TYPE_RGB || data->info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA); >- assert(data->info_ptr->interlace_type == PNG_INTERLACE_NONE); >+ assert(data->png_get_bit_depth(png_ptr, info_ptr) == 8 || data->png_get_bit_depth(png_ptr, info_ptr) == 16); >+ assert(data->png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB || data->png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA); >+ assert(data->png_get_interlace_type(png_ptr, info_ptr) == PNG_INTERLACE_NONE); > > data->have_read = 0; > >@@ -84,29 +84,29 @@ > int bps, spp; > unsigned char *row; > >- if (setjmp(data->png_ptr->jmpbuf)) >+ if (setjmp(data->png_jmpbuf(png_ptr))) > assert(0); > >- if (data->info_ptr->color_type == PNG_COLOR_TYPE_RGB) >+ if (data->png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB) > spp = 3; > else > spp = 4; > >- if (data->info_ptr->bit_depth == 16) >+ if (data->png_get_bit_depth(png_ptr, info_ptr) == 16) > bps = 2; > else > bps = 1; > >- row = (unsigned char*)malloc(data->info_ptr->width * spp * bps); >+ row = (unsigned char*)malloc(data->png_get_image_width(png_ptr, info_ptr) * spp * bps); > > for (i = 0; i < num_lines; ++i) > { > int j, channel; > > png_read_row(data->png_ptr, (png_bytep)row, 0); >- for (j = 0; j < data->info_ptr->width; ++j) >+ for (j = 0; j < data->png_get_image_width(png_ptr, info_ptr); ++j) > for (channel = 0; channel < 3; ++channel) >- lines[i * data->info_ptr->width * 3 + j * 3 + channel] = row[j * spp * bps + channel * bps]; >+ lines[i * data->png_get_image_width(png_ptr, info_ptr) * 3 + j * 3 + channel] = row[j * spp * bps + channel * bps]; > } > > free(row); >@@ -119,7 +119,7 @@ > { > png_data_t *data = (png_data_t*)_data; > >- if (setjmp(data->png_ptr->jmpbuf)) >+ if (setjmp(data->png_jmpbuf(png_ptr))) > assert(0); > > if (data->have_read) >@@ -148,7 +148,7 @@ > data->info_ptr = png_create_info_struct(data->png_ptr); > assert(data->info_ptr != 0); > >- if (setjmp(data->png_ptr->jmpbuf)) >+ if (setjmp(data->png_jmpbuf(png_ptr))) > assert(0); > > if (pixel_stride == 4) >@@ -156,18 +156,24 @@ > > png_init_io(data->png_ptr, data->file); > >- data->info_ptr->width = width; >- data->info_ptr->height = height; >- data->info_ptr->valid = 0; >- data->info_ptr->rowbytes = width * 3; >- data->info_ptr->palette = 0; >- data->info_ptr->num_palette = 0; >- data->info_ptr->num_trans = 0; >- data->info_ptr->bit_depth = 8; >- data->info_ptr->color_type = PNG_COLOR_TYPE_RGB; >- data->info_ptr->compression_type = PNG_COMPRESSION_TYPE_DEFAULT; >- data->info_ptr->filter_type = PNG_FILTER_TYPE_DEFAULT; >- data->info_ptr->interlace_type = PNG_INTERLACE_NONE; >+ png_colorp palette; >+ int num_palette; >+ int num_trans; >+ int compression_type; >+ int filter_type; >+ >+ data->png_get_image_width(png_ptr, info_ptr) = width; >+ data->png_get_image_height(png_ptr, info_ptr) = height; >+ data->png_get_valid(png_ptr, info_ptr) = 0; >+ data->png_get_rowbytes(png_ptr, info_ptr) = width * 3; >+ data->palette = 0; >+ data->num_palette = 0; >+ data->num_trans = 0; >+ data->png_get_bit_depth(png_ptr, info_ptr) = 8; >+ data->png_get_color_type(png_ptr, info_ptr) = PNG_COLOR_TYPE_RGB; >+ data->compression_type = PNG_COMPRESSION_TYPE_DEFAULT; >+ data->filter_type = PNG_FILTER_TYPE_DEFAULT; >+ data->png_get_interlace_type(png_ptr, info_ptr) = PNG_INTERLACE_NONE; > > png_write_info(data->png_ptr, data->info_ptr); > >@@ -182,7 +188,7 @@ > png_data_t *data = (png_data_t*)_data; > int i; > >- if (setjmp(data->png_ptr->jmpbuf)) >+ if (setjmp(data->png_jmpbuf(png_ptr))) > assert(0); > > for (i = 0; i < num_lines; ++i) >@@ -194,7 +200,7 @@ > { > png_data_t *data = (png_data_t*)_data; > >- if (setjmp(data->png_ptr->jmpbuf)) >+ if (setjmp(data->png_jmpbuf(png_ptr))) > assert(0); > > png_write_end(data->png_ptr, data->info_ptr);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 378467
:
282663
|
286333