wok-next rev 20211
Add cinepaint-stable (1.0-4)
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Sat Nov 04 16:41:54 2017 +0200 (2017-11-04) |
parents | d2f636276174 |
children | 650b75e18a32 |
files | cinepaint-stable/receipt cinepaint-stable/stuff/patches/cinepaint-1.4-png.patch cinepaint-stable/stuff/patches/series |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/cinepaint-stable/receipt Sat Nov 04 16:41:54 2017 +0200 1.3 @@ -0,0 +1,49 @@ 1.4 +# SliTaz package receipt v2. 1.5 + 1.6 +PACKAGE="cinepaint-stable" 1.7 +VERSION="1.0-4" 1.8 +CATEGORY="graphics" 1.9 +SHORT_DESC="For painting and retouching bitmap frames of films" 1.10 +MAINTAINER="slaxemulator@gmail.com" 1.11 +LICENSE="MIT GPL LGPL" 1.12 +WEB_SITE="http://www.cinepaint.org/" 1.13 + 1.14 +TARBALL="cinepaint-$VERSION.tar.gz" 1.15 +WGET_URL="$SF_MIRROR/cinepaint/$TARBALL" 1.16 + 1.17 +BUILD_DEPENDS="patch gtk+-dev gettext tiff-dev openexr-dev ilmbase-dev \ 1.18 +libjpeg-turbo-dev zlib-dev libpng16-dev lcms-dev xorg-libXmu-dev fltk-dev \ 1.19 +python" 1.20 +SPLIT="cinepaint-stable-dev" 1.21 + 1.22 +compile_rules() { 1.23 + chmod a+x ./install-sh 1.24 + 1.25 + ./configure \ 1.26 + --disable-print \ 1.27 + $CONFIGURE_ARGS && 1.28 + make && make install 1.29 +} 1.30 + 1.31 +genpkg_rules() { 1.32 + case $PACKAGE in 1.33 + cinepaint-stable) 1.34 + copy @std 1.35 + DEPENDS="atk bzlib cairo fltk fontconfig freetype gdk-pixbuf glib \ 1.36 + gtk+ ilmbase lcms libffi libharfbuzz libjpeg-turbo liblzma \ 1.37 + libpng16 libxml2 openexr pango pcre tiff util-linux-blkid \ 1.38 + util-linux-mount util-linux-uuid xorg-libICE xorg-libSM \ 1.39 + xorg-libX11 xorg-libXau xorg-libXdmcp xorg-libXextxorg-libXfixes \ 1.40 + xorg-libXft xorg-libXinerama xorg-libXmu xorg-libXrender \ 1.41 + xorg-libXt xorg-libxcb xorg-pixman zlib" 1.42 + ;; 1.43 + *-dev) 1.44 + copy @dev 1.45 + DEPENDS="cinepaint-stable fontconfig-dev freetype-dev glib-dev \ 1.46 + harfbuzz-dev libjpeg-turbo-dev libpng16-dev libxml2-dev pcre-dev \ 1.47 + xorg-libX11-dev xorg-libXau-dev xorg-libXdmcp-dev xorg-libXext-dev \ 1.48 + xorg-libXfixes xorg-libXft-dev xorg-libXinerama-dev \ 1.49 + xorg-libXrender-dev xorg-libxcb-dev xz-dev" 1.50 + ;; 1.51 + esac 1.52 +}
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/cinepaint-stable/stuff/patches/cinepaint-1.4-png.patch Sat Nov 04 16:41:54 2017 +0200 2.3 @@ -0,0 +1,418 @@ 2.4 +diff -ur cinepaint/plug-ins/png/png.c cinepaint-png15/plug-ins/png/png.c 2.5 +--- cinepaint/plug-ins/png/png.c 2006-11-24 15:52:55.000000000 -0500 2.6 ++++ cinepaint-png15/plug-ins/png/png.c 2013-03-02 03:37:33.304142225 -0500 2.7 +@@ -405,7 +405,7 @@ 2.8 + info = (png_infop)calloc(sizeof(png_info), 1); 2.9 + #endif /* PNG_LIBPNG_VER > 88 */ 2.10 + 2.11 +- if (setjmp (pp->jmpbuf)) 2.12 ++ if (setjmp (png_jmpbuf(pp))) 2.13 + { 2.14 + g_message ("%s\nPNG error. File corrupted?", filename); 2.15 + return image; 2.16 +@@ -448,15 +448,15 @@ 2.17 + */ 2.18 + 2.19 + #ifndef WORDS_BIGENDIAN 2.20 +- if(info->bit_depth == 16) 2.21 ++ if(png_get_bit_depth(pp,info) == 16) 2.22 + png_set_swap(pp); 2.23 + #endif 2.24 + 2.25 +- if (info->color_type == PNG_COLOR_TYPE_GRAY && info->bit_depth < 8) { 2.26 ++ if (png_get_color_type(pp,info) == PNG_COLOR_TYPE_GRAY && png_get_bit_depth(pp,info) < 8) { 2.27 + png_set_expand(pp); 2.28 + } 2.29 + 2.30 +- if (info->color_type == PNG_COLOR_TYPE_PALETTE && info->bit_depth < 8) { 2.31 ++ if (png_get_color_type(pp,info) == PNG_COLOR_TYPE_PALETTE && png_get_bit_depth(pp,info) < 8) { 2.32 + png_set_packing(pp); 2.33 + } 2.34 + 2.35 +@@ -464,8 +464,8 @@ 2.36 + * Expand G+tRNS to GA, RGB+tRNS to RGBA 2.37 + */ 2.38 + 2.39 +- if (info->color_type != PNG_COLOR_TYPE_PALETTE && 2.40 +- (info->valid & PNG_INFO_tRNS)) { 2.41 ++ if (png_get_color_type(pp,info) != PNG_COLOR_TYPE_PALETTE && 2.42 ++ (png_get_valid(pp,info,PNG_INFO_tRNS) & PNG_INFO_tRNS)) { 2.43 + png_set_expand(pp); 2.44 + } 2.45 + 2.46 +@@ -482,7 +482,7 @@ 2.47 + 2.48 + #if PNG_LIBPNG_VER > 99 2.49 + if (png_get_valid(pp, info, PNG_INFO_tRNS) && 2.50 +- info->color_type == PNG_COLOR_TYPE_PALETTE) 2.51 ++ png_get_color_type(pp, info) == PNG_COLOR_TYPE_PALETTE) 2.52 + { 2.53 + png_get_tRNS(pp, info, &alpha_ptr, &num, NULL); 2.54 + /* Copy the existing alpha values from the tRNS chunk */ 2.55 +@@ -505,9 +505,9 @@ 2.56 + 2.57 + png_read_update_info(pp, info); 2.58 + 2.59 +- if(info->bit_depth==16) 2.60 ++ if(png_get_bit_depth(pp,info)==16) 2.61 + { 2.62 +- switch (info->color_type) 2.63 ++ switch (png_get_color_type(pp, info)) 2.64 + { 2.65 + case PNG_COLOR_TYPE_RGB : /* RGB */ 2.66 + bpp = 6; 2.67 +@@ -545,7 +545,7 @@ 2.68 + } 2.69 + else 2.70 + { 2.71 +- switch (info->color_type) 2.72 ++ switch (png_get_color_type(pp, info)) 2.73 + { 2.74 + case PNG_COLOR_TYPE_RGB : /* RGB */ 2.75 + bpp = 3; 2.76 +@@ -582,7 +582,7 @@ 2.77 + }; 2.78 + } 2.79 + 2.80 +- image = gimp_image_new(info->width, info->height, image_type); 2.81 ++ image = gimp_image_new(png_get_image_width(pp,info), png_get_image_height(pp,info), image_type); 2.82 + if (image == -1) 2.83 + { 2.84 + g_message("Can't allocate new image\n%s", filename); 2.85 +@@ -595,7 +595,7 @@ 2.86 + * Create the "background" layer to hold the image... 2.87 + */ 2.88 + 2.89 +- layer = gimp_layer_new(image, _("Background"), info->width, info->height, 2.90 ++ layer = gimp_layer_new(image, _("Background"), png_get_image_width(pp,info), png_get_image_height(pp,info), 2.91 + layer_type, 100, NORMAL_MODE); 2.92 + gimp_image_add_layer(image, layer, 0); 2.93 + 2.94 +@@ -627,20 +627,23 @@ 2.95 + 2.96 + empty= 0; /* by default assume no full transparent palette entries */ 2.97 + 2.98 +- if (info->color_type & PNG_COLOR_MASK_PALETTE) { 2.99 ++ if (png_get_color_type(pp, info) & PNG_COLOR_MASK_PALETTE) { 2.100 ++ png_colorp palette; 2.101 ++ int num_palette; 2.102 ++ png_get_PLTE(pp, info, &palette, &num_palette); 2.103 ++ 2.104 + 2.105 + #if PNG_LIBPNG_VER > 99 2.106 + if (png_get_valid(pp, info, PNG_INFO_tRNS)) { 2.107 + for (empty= 0; empty < 256 && alpha[empty] == 0; ++empty); 2.108 + /* Calculates number of fully transparent "empty" entries */ 2.109 + 2.110 +- gimp_image_set_cmap(image, (guchar *) (info->palette + empty), 2.111 +- info->num_palette - empty); 2.112 ++ gimp_image_set_cmap(image, (guchar *) &palette + empty,num_palette - empty); 2.113 + } else { 2.114 +- gimp_image_set_cmap(image, (guchar *)info->palette, info->num_palette); 2.115 ++ gimp_image_set_cmap(image, (guchar *)&palette, num_palette); 2.116 + } 2.117 + #else 2.118 +- gimp_image_set_cmap(image, (guchar *)info->palette, info->num_palette); 2.119 ++ gimp_image_set_cmap(image, (guchar *)&palette, num_palette); 2.120 + #endif /* PNG_LIBPNG_VER > 99 */ 2.121 + 2.122 + } 2.123 +@@ -659,18 +662,18 @@ 2.124 + */ 2.125 + 2.126 + tile_height = gimp_tile_height (); 2.127 +- pixel = g_new(guchar, tile_height * info->width * bpp); 2.128 ++ pixel = g_new(guchar, tile_height * png_get_image_width(pp,info) * bpp); 2.129 + pixels = g_new(guchar *, tile_height); 2.130 + 2.131 +- if(info->bit_depth==16) 2.132 ++ if(png_get_bit_depth(pp,info)==16) 2.133 + { 2.134 + for (i = 0; i < tile_height; i ++) 2.135 +- pixels[i] = pixel + info->width * info->channels * i * 2; 2.136 ++ pixels[i] = pixel + png_get_image_width(pp,info) * png_get_channels(pp,info) * i * 2; 2.137 + } 2.138 + else 2.139 + { 2.140 + for (i = 0; i < tile_height; i ++) 2.141 +- pixels[i] = pixel + info->width * info->channels * i; 2.142 ++ pixels[i] = pixel + png_get_image_width(pp,info) * png_get_channels(pp,info) * i; 2.143 + } 2.144 + 2.145 + for (pass = 0; pass < num_passes; pass ++) 2.146 +@@ -680,11 +683,11 @@ 2.147 + */ 2.148 + 2.149 + for (begin = 0, end = tile_height; 2.150 +- begin < info->height; 2.151 ++ begin < png_get_image_height(pp,info); 2.152 + begin += tile_height, end += tile_height) 2.153 + { 2.154 +- if (end > info->height) 2.155 +- end = info->height; 2.156 ++ if (end > png_get_image_height(pp,info)) 2.157 ++ end = png_get_image_height(pp,info); 2.158 + 2.159 + num = end - begin; 2.160 + 2.161 +@@ -697,21 +700,24 @@ 2.162 + gimp_pixel_rgn_set_rect(&pixel_rgn, pixel, 0, begin, 2.163 + drawable->width, num); 2.164 + 2.165 +- gimp_progress_update(((double)pass + (double)end / (double)info->height) / 2.166 ++ gimp_progress_update(((double)pass + (double)end / (double)png_get_image_height(pp,info)) / 2.167 + (double)num_passes); 2.168 + }; 2.169 + }; 2.170 + 2.171 + #if defined(PNG_iCCP_SUPPORTED) 2.172 ++{ 2.173 + /* set icc profile */ 2.174 +- if (info->iccp_proflen > 0) { 2.175 +- gimp_image_set_icc_profile_by_mem (image, info->iccp_proflen, 2.176 +- info->iccp_profile, 2.177 +- ICC_IMAGE_PROFILE); 2.178 ++ png_charpp name; 2.179 ++ int ctype = PNG_COMPRESSION_TYPE_BASE; 2.180 ++ png_bytepp prof; 2.181 ++ png_uint_32 proflen; 2.182 ++ if (png_get_iCCP(pp,info,name,&ctype,prof,&proflen) > 0) { 2.183 ++ gimp_image_set_icc_profile_by_mem (image, proflen, prof, ICC_IMAGE_PROFILE); 2.184 + printf ("%s:%d %s() set embedded profile \"%s\"\n", 2.185 +- __FILE__,__LINE__,__func__, 2.186 +- info->iccp_name); 2.187 ++ __FILE__,__LINE__,__func__,(const char *)name); 2.188 + } 2.189 ++} 2.190 + #endif 2.191 + 2.192 + /* 2.193 +@@ -774,6 +780,8 @@ 2.194 + * 'save_image ()' - Save the specified image to a PNG file. 2.195 + */ 2.196 + 2.197 ++typedef png_info *png_infop; 2.198 ++ 2.199 + static gint 2.200 + save_image (gchar *filename, /* I - File to save to */ 2.201 + gint32 image_ID, /* I - Image to save */ 2.202 +@@ -794,7 +802,7 @@ 2.203 + GPixelRgn pixel_rgn; /* Pixel region for layer */ 2.204 + png_structp pp; /* PNG read pointer */ 2.205 + png_infop info; /* PNG info pointer */ 2.206 +- gint num_colors; /* Number of colors in colormap */ 2.207 ++ gint num_colors = 0; /* Number of colors in colormap */ 2.208 + gint offx, offy; /* Drawable offsets from origin */ 2.209 + guchar **pixels, /* Pixel rows */ 2.210 + *fixed, /* Fixed-up pixel data */ 2.211 +@@ -808,6 +816,7 @@ 2.212 + blue; /* Used for palette background */ 2.213 + time_t cutime; /* Time since epoch */ 2.214 + struct tm *gmt; /* GMT broken down */ 2.215 ++ int bit_depth,color_type; 2.216 + 2.217 + /* 2.218 + * PNG 0.89 and newer have a sane, forwards compatible constructor. 2.219 +@@ -824,7 +833,7 @@ 2.220 + info = (png_infop)calloc(sizeof(png_info), 1); 2.221 + #endif /* PNG_LIBPNG_VER > 88 */ 2.222 + 2.223 +- if (setjmp (pp->jmpbuf)) 2.224 ++ if (setjmp (png_jmpbuf(pp))) 2.225 + { 2.226 + g_message ("%s\nPNG error. Couldn't save image", filename); 2.227 + return 0; 2.228 +@@ -863,10 +872,6 @@ 2.229 + 2.230 + png_set_compression_level (pp, pngvals.compression_level); 2.231 + 2.232 +- info->width = drawable->width; 2.233 +- info->height = drawable->height; 2.234 +- info->interlace_type = pngvals.interlaced; 2.235 +- 2.236 + /* 2.237 + * Set color type and remember bytes per pixel count 2.238 + */ 2.239 +@@ -874,71 +879,69 @@ 2.240 + switch (type) 2.241 + { 2.242 + case RGB_IMAGE : 2.243 +- info->color_type = PNG_COLOR_TYPE_RGB; 2.244 +- info->bit_depth = 8; 2.245 ++ color_type = PNG_COLOR_TYPE_RGB; 2.246 ++ bit_depth = 8; 2.247 + bpp = 3; 2.248 + break; 2.249 + case RGBA_IMAGE : 2.250 +- info->color_type = PNG_COLOR_TYPE_RGB_ALPHA; 2.251 +- info->bit_depth = 8; 2.252 ++ color_type = PNG_COLOR_TYPE_RGB_ALPHA; 2.253 ++ bit_depth = 8; 2.254 + bpp = 4; 2.255 + break; 2.256 + case GRAY_IMAGE : 2.257 +- info->color_type = PNG_COLOR_TYPE_GRAY; 2.258 +- info->bit_depth = 8; 2.259 ++ color_type = PNG_COLOR_TYPE_GRAY; 2.260 ++ bit_depth = 8; 2.261 + bpp = 1; 2.262 + break; 2.263 + case GRAYA_IMAGE : 2.264 +- info->color_type = PNG_COLOR_TYPE_GRAY_ALPHA; 2.265 +- info->bit_depth = 8; 2.266 ++ color_type = PNG_COLOR_TYPE_GRAY_ALPHA; 2.267 ++ bit_depth = 8; 2.268 + bpp = 2; 2.269 + break; 2.270 + case INDEXED_IMAGE : 2.271 + bpp = 1; 2.272 +- info->bit_depth = 8; 2.273 +- info->color_type = PNG_COLOR_TYPE_PALETTE; 2.274 +- info->valid |= PNG_INFO_PLTE; 2.275 +- info->palette= (png_colorp) gimp_image_get_cmap(image_ID, &num_colors); 2.276 +- info->num_palette= num_colors; 2.277 ++ bit_depth = 8; 2.278 ++ color_type = PNG_COLOR_TYPE_PALETTE; 2.279 ++ void *plte = gimp_image_get_cmap(image_ID, &num_colors); 2.280 ++ png_set_PLTE(pp,info,plte,num_colors); 2.281 + break; 2.282 + case INDEXEDA_IMAGE : 2.283 + bpp = 2; 2.284 +- info->bit_depth = 8; 2.285 +- info->color_type = PNG_COLOR_TYPE_PALETTE; 2.286 ++ bit_depth = 8; 2.287 ++ color_type = PNG_COLOR_TYPE_PALETTE; 2.288 + respin_cmap (pp, info, image_ID); /* fix up transparency */ 2.289 + break; 2.290 + case U16_RGB_IMAGE : 2.291 +- info->color_type = PNG_COLOR_TYPE_RGB; 2.292 +- info->bit_depth = 16; 2.293 ++ color_type = PNG_COLOR_TYPE_RGB; 2.294 ++ bit_depth = 16; 2.295 + bpp = 6; 2.296 + break; 2.297 + case U16_RGBA_IMAGE : 2.298 +- info->color_type = PNG_COLOR_TYPE_RGB_ALPHA; 2.299 +- info->bit_depth = 16; 2.300 ++ color_type = PNG_COLOR_TYPE_RGB_ALPHA; 2.301 ++ bit_depth = 16; 2.302 + bpp = 8; 2.303 + break; 2.304 + case U16_GRAY_IMAGE : 2.305 +- info->color_type = PNG_COLOR_TYPE_GRAY; 2.306 +- info->bit_depth = 16; 2.307 ++ color_type = PNG_COLOR_TYPE_GRAY; 2.308 ++ bit_depth = 16; 2.309 + bpp = 2; 2.310 + break; 2.311 + case U16_GRAYA_IMAGE : 2.312 +- info->color_type = PNG_COLOR_TYPE_GRAY_ALPHA; 2.313 +- info->bit_depth = 16; 2.314 ++ color_type = PNG_COLOR_TYPE_GRAY_ALPHA; 2.315 ++ bit_depth = 16; 2.316 + bpp = 4; 2.317 + break; 2.318 +- case U16_INDEXED_IMAGE : 2.319 ++ case U16_INDEXED_IMAGE :{ 2.320 + bpp = 2; 2.321 +- info->bit_depth = 16; 2.322 +- info->color_type = PNG_COLOR_TYPE_PALETTE; 2.323 +- info->valid |= PNG_INFO_PLTE; 2.324 +- info->palette= (png_colorp) gimp_image_get_cmap(image_ID, &num_colors); 2.325 +- info->num_palette= num_colors; 2.326 ++ bit_depth = 16; 2.327 ++ color_type = PNG_COLOR_TYPE_PALETTE; 2.328 ++ void *plte = gimp_image_get_cmap(image_ID, &num_colors); 2.329 ++ png_set_PLTE(pp,info,plte,num_colors); 2.330 + break; 2.331 +- case U16_INDEXEDA_IMAGE : 2.332 ++ }case U16_INDEXEDA_IMAGE : 2.333 + bpp = 4; 2.334 +- info->bit_depth = 16; 2.335 +- info->color_type = PNG_COLOR_TYPE_PALETTE; 2.336 ++ bit_depth = 16; 2.337 ++ color_type = PNG_COLOR_TYPE_PALETTE; 2.338 + respin_cmap (pp, info, image_ID); /* fix up transparency */ 2.339 + break; 2.340 + default: 2.341 +@@ -950,16 +953,21 @@ 2.342 + * Fix bit depths for (possibly) smaller colormap images 2.343 + */ 2.344 + 2.345 +- if (info->valid & PNG_INFO_PLTE) { 2.346 +- if (info->num_palette <= 2) 2.347 +- info->bit_depth= 1; 2.348 +- else if (info->num_palette <= 4) 2.349 +- info->bit_depth= 2; 2.350 +- else if (info->num_palette <= 16) 2.351 +- info->bit_depth= 4; 2.352 ++ if (png_get_valid(pp,info,PNG_INFO_PLTE) & PNG_INFO_PLTE) { 2.353 ++ if (num_colors <= 2) 2.354 ++ bit_depth= 1; 2.355 ++ else if (num_colors <= 4) 2.356 ++ bit_depth= 2; 2.357 ++ else if (num_colors <= 16) 2.358 ++ bit_depth= 4; 2.359 + /* otherwise the default is fine */ 2.360 + } 2.361 + 2.362 ++ png_set_IHDR(pp,info,drawable->width,drawable->height, 2.363 ++ bit_depth,color_type,pngvals.interlaced, 2.364 ++ PNG_COMPRESSION_TYPE_DEFAULT, 2.365 ++ PNG_FILTER_TYPE_DEFAULT); 2.366 ++ 2.367 + // write icc profile 2.368 + #if defined(PNG_iCCP_SUPPORTED) 2.369 + if (gimp_image_has_icc_profile (image_ID, ICC_IMAGE_PROFILE)) { 2.370 +@@ -973,7 +981,7 @@ 2.371 + 0, buffer, size); 2.372 + printf ("%s:%d %s() embedd icc profile \"%s\"\n", 2.373 + __FILE__,__LINE__,__func__, 2.374 +- info->iccp_name); 2.375 ++ gimp_image_get_icc_profile_description (image_ID, ICC_IMAGE_PROFILE)); 2.376 + } 2.377 + #endif 2.378 + 2.379 +@@ -1039,13 +1047,13 @@ 2.380 + * Convert unpacked pixels to packed if necessary 2.381 + */ 2.382 + 2.383 +- if (info->color_type == PNG_COLOR_TYPE_PALETTE && info->bit_depth < 8) 2.384 ++ if (png_get_color_type(pp, info) == PNG_COLOR_TYPE_PALETTE && png_get_bit_depth(pp,info) < 8) 2.385 + png_set_packing(pp); 2.386 + 2.387 + /* Set swapping for 16 bit per sample images */ 2.388 + 2.389 + #ifndef WORDS_BIGENDIAN 2.390 +- if (info->bit_depth == 16) 2.391 ++ if (png_get_bit_depth(pp,info) == 16) 2.392 + png_set_swap(pp); 2.393 + #endif 2.394 + 2.395 +@@ -1077,7 +1085,7 @@ 2.396 + num = end - begin; 2.397 + 2.398 + gimp_pixel_rgn_get_rect (&pixel_rgn, pixel, 0, begin, drawable->width, num); 2.399 +- if (info->valid & PNG_INFO_tRNS) { 2.400 ++ if (png_get_valid(pp,info,PNG_INFO_tRNS) & PNG_INFO_tRNS) { 2.401 + for (i = 0; i < num; ++i) { 2.402 + fixed= pixels[i]; 2.403 + for (k = 0; k < drawable->width; ++k) { 2.404 +@@ -1085,7 +1093,7 @@ 2.405 + } 2.406 + } 2.407 + /* Forgot this case before, what if there are too many colors? */ 2.408 +- } else if (info->valid & PNG_INFO_PLTE && bpp == 2) { 2.409 ++ } else if (png_get_valid(pp,info,PNG_INFO_PLTE) & PNG_INFO_PLTE && bpp == 2) { 2.410 + for (i = 0; i < num; ++i) { 2.411 + fixed= pixels[i]; 2.412 + for (k = 0; k < drawable->width; ++k) { 2.413 +@@ -1097,7 +1105,7 @@ 2.414 + png_write_rows (pp, pixels, num); 2.415 + 2.416 + gimp_progress_update (((double)pass + (double)end / 2.417 +- (double)info->height) / (double)num_passes); 2.418 ++ (double)png_get_image_height(pp,info)) / (double)num_passes); 2.419 + }; 2.420 + }; 2.421 +