archrelease: copy trunk to community-any
[ArchLinux/community.git] / imlib / trunk / imlib-1.9.15-libpng15.patch
blob7837cd488cf23dd190ab5e809e4d57c553b8120a
1 --- gdk_imlib/io-png.c
2 +++ gdk_imlib/io-png.c
3 @@ -40,13 +40,13 @@
4 return NULL;
7 - if (setjmp(png_ptr->jmpbuf))
8 + if (setjmp(png_jmpbuf(png_ptr)))
10 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
11 return NULL;
14 - if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
15 + if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
17 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
18 return NULL;
19 @@ -275,13 +275,13 @@
20 return NULL;
23 - if (setjmp(png_ptr->jmpbuf))
24 + if (setjmp(png_jmpbuf(png_ptr)))
26 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
27 return NULL;
30 - if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
31 + if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
33 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
34 return NULL;
35 @@ -301,6 +301,9 @@
36 /* Setup Translators */
37 if (color_type == PNG_COLOR_TYPE_PALETTE)
38 png_set_expand(png_ptr);
39 + if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
40 + png_set_expand(png_ptr);
42 png_set_strip_16(png_ptr);
43 png_set_packing(png_ptr);
44 if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
45 @@ -440,13 +443,13 @@
46 return NULL;
49 - if (setjmp(png_ptr->jmpbuf))
50 + if (setjmp(png_jmpbuf(png_ptr)))
52 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
53 return NULL;
56 - if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
57 + if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
59 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
60 return NULL;
61 @@ -635,7 +638,7 @@
62 png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
63 return 0;
65 - if (setjmp(png_ptr->jmpbuf))
66 + if (setjmp(png_jmpbuf(png_ptr)))
68 fclose(f);
69 png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
70 --- Imlib/load.c
71 +++ Imlib/load.c
72 @@ -197,12 +197,12 @@
73 png_destroy_read_struct(&png_ptr, NULL, NULL);
74 return NULL;
76 - if (setjmp(png_ptr->jmpbuf))
77 + if (setjmp(png_jmpbuf(png_ptr)))
79 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
80 return NULL;
82 - if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
83 + if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
85 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
86 return NULL;
87 @@ -260,7 +260,8 @@
88 png_read_image(png_ptr, lines);
89 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
90 ptr = data;
91 - if (color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
92 + if (color_type == PNG_COLOR_TYPE_GRAY
93 + || color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
95 for (y = 0; y < *h; y++)
97 @@ -285,6 +286,7 @@
101 +#if 0
102 else if (color_type == PNG_COLOR_TYPE_GRAY)
104 for (y = 0; y < *h; y++)
105 @@ -300,6 +302,7 @@
109 +#endif
110 else
112 for (y = 0; y < *h; y++)
113 --- Imlib/save.c
114 +++ Imlib/save.c
115 @@ -342,7 +342,7 @@
116 png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
117 return 0;
119 - if (setjmp(png_ptr->jmpbuf))
120 + if (setjmp(png_jmpbuf(png_ptr)))
122 fclose(f);
123 png_destroy_write_struct(&png_ptr, (png_infopp) NULL);
124 --- Imlib/utils.c
125 +++ Imlib/utils.c
126 @@ -1981,14 +1981,13 @@
127 png_destroy_read_struct(&png_ptr, NULL, NULL);
128 return NULL;
131 - if (setjmp(png_ptr->jmpbuf))
132 + if (setjmp(png_jmpbuf(png_ptr)))
134 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
135 return NULL;
138 - if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
139 + if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
141 png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
142 return NULL;