Gentoo Archives: gentoo-commits

From: Sebastian Pipping <sping@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/gimp/files/
Date: Wed, 25 Oct 2017 23:02:41
Message-Id: 1508972524.5f22ead69f053210fc9106d5f76914e6e24bc069.sping@gentoo
1 commit: 5f22ead69f053210fc9106d5f76914e6e24bc069
2 Author: Sebastian Pipping <sping <AT> gentoo <DOT> org>
3 AuthorDate: Wed Oct 25 23:02:04 2017 +0000
4 Commit: Sebastian Pipping <sping <AT> gentoo <DOT> org>
5 CommitDate: Wed Oct 25 23:02:04 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f22ead6
7
8 media-gfx/gimp: Remove unused patches
9
10 Package-Manager: Portage-2.3.10, Repoman-2.3.3
11
12 media-gfx/gimp/files/gimp-2.8.6-uclibc.patch | 45 ----
13 .../gimp/files/gimp-2.9.2-CVE-2016-4994.patch | 88 -------
14 media-gfx/gimp/files/gimp-2.9.2-gegl-0.3.8.patch | 54 ----
15 .../gimp/files/gimp-2.9.2-no-deprecation.patch | 50 ----
16 media-gfx/gimp/files/gimp-2.9.2-version.patch | 28 --
17 .../gimp/files/gimp-2.9.4-CVE-2007-3126.patch | 291 ---------------------
18 media-gfx/gimp/files/gimp-2.9.4-gegl-bin.patch | 28 --
19 .../gimp/files/gimp-2.9.4-mkdir-makefile.patch | 36 ---
20 8 files changed, 620 deletions(-)
21
22 diff --git a/media-gfx/gimp/files/gimp-2.8.6-uclibc.patch b/media-gfx/gimp/files/gimp-2.8.6-uclibc.patch
23 deleted file mode 100644
24 index 855e9872f4b..00000000000
25 --- a/media-gfx/gimp/files/gimp-2.8.6-uclibc.patch
26 +++ /dev/null
27 @@ -1,45 +0,0 @@
28 -From 4fb7a436bca3e11abfda8bc23818af0f09714b9d Mon Sep 17 00:00:00 2001
29 -From: Michael Natterer <mitch@××××.org>
30 -Date: Fri, 02 Aug 2013 14:50:00 +0000
31 -Subject: Bug 704980 - uclibc - base-utils.c: execinfo.h: No such file or directory
32 -
33 -Apply patch from Amadeusz Slawinski that checks for execinfo.h and
34 -builds the code that needs it conditionally.
35 ----
36 -diff --git a/app/base/base-utils.c b/app/base/base-utils.c
37 -index 757f58d..44a9e89 100644
38 ---- a/app/base/base-utils.c
39 -+++ b/app/base/base-utils.c
40 -@@ -29,7 +29,7 @@
41 - #include <process.h>
42 - #endif
43 -
44 --#ifdef G_OS_UNIX
45 -+#if defined(G_OS_UNIX) && defined(HAVE_EXECINFO_H)
46 - /* For get_backtrace() */
47 - #include <stdlib.h>
48 - #include <string.h>
49 -@@ -112,7 +112,7 @@ get_physical_memory_size (void)
50 - char *
51 - get_backtrace (void)
52 - {
53 --#ifdef G_OS_UNIX
54 -+#if defined(G_OS_UNIX) && defined(HAVE_EXECINFO_H)
55 - void *functions[MAX_FUNC];
56 - char **function_names;
57 - int n_functions;
58 -diff --git a/configure.ac b/configure.ac
59 -index 0bbcbc7..15c7cc6 100644
60 ---- a/configure.ac
61 -+++ b/configure.ac
62 -@@ -416,7 +416,7 @@ AC_HEADER_STDC
63 - AC_HEADER_SYS_WAIT
64 - AC_HEADER_TIME
65 -
66 --AC_CHECK_HEADERS(sys/param.h sys/time.h sys/times.h sys/wait.h unistd.h)
67 -+AC_CHECK_HEADERS(execinfo.h sys/param.h sys/time.h sys/times.h sys/wait.h unistd.h)
68 -
69 - AC_TYPE_PID_T
70 - AC_FUNC_VPRINTF
71 ---
72 -cgit v0.9.2
73
74 diff --git a/media-gfx/gimp/files/gimp-2.9.2-CVE-2016-4994.patch b/media-gfx/gimp/files/gimp-2.9.2-CVE-2016-4994.patch
75 deleted file mode 100644
76 index 846318b4214..00000000000
77 --- a/media-gfx/gimp/files/gimp-2.9.2-CVE-2016-4994.patch
78 +++ /dev/null
79 @@ -1,88 +0,0 @@
80 -From 6d804bf9ae77bc86a0a97f9b944a129844df9395 Mon Sep 17 00:00:00 2001
81 -From: Shmuel H <shmuelgimp@×××××.com>
82 -Date: Mon, 20 Jun 2016 17:14:41 +0300
83 -Subject: Bug 767873 - (CVE-2016-4994) Multiple Use-After-Free when parsing...
84 -
85 -...XCF channel and layer properties
86 -
87 -The properties PROP_ACTIVE_LAYER, PROP_FLOATING_SELECTION,
88 -PROP_ACTIVE_CHANNEL saves the current object pointer the @info
89 -structure. Others like PROP_SELECTION (for channel) and
90 -PROP_GROUP_ITEM (for layer) will delete the current object and create
91 -a new object, leaving the pointers in @info invalid (dangling).
92 -
93 -Therefore, if a property from the first type will come before the
94 -second, the result will be an UaF in the last lines of xcf_load_image
95 -(when it actually using the pointers from @info).
96 -
97 -I wasn't able to exploit this bug because that
98 -g_object_instance->c_class gets cleared by the last g_object_unref and
99 -GIMP_IS_{LAYER,CHANNEL} detects that and return FALSE.
100 ----
101 - app/xcf/xcf-load.c | 29 +++++++++++++++++++++++++++++
102 - 1 file changed, 29 insertions(+)
103 -
104 -diff --git a/app/xcf/xcf-load.c b/app/xcf/xcf-load.c
105 -index f48558a..244d5c2 100644
106 ---- a/app/xcf/xcf-load.c
107 -+++ b/app/xcf/xcf-load.c
108 -@@ -1141,6 +1141,18 @@ xcf_load_layer_props (XcfInfo *info,
109 - case PROP_GROUP_ITEM:
110 - {
111 - GimpLayer *group;
112 -+ gboolean is_active_layer;
113 -+
114 -+ /* We're going to delete *layer, Don't leave its pointers
115 -+ * in @info. After that, we'll restore them back with the
116 -+ * new pointer. See bug #767873.
117 -+ */
118 -+ is_active_layer = (*layer == info->active_layer);
119 -+ if (is_active_layer)
120 -+ info->active_layer = NULL;
121 -+
122 -+ if (*layer == info->floating_sel)
123 -+ info->floating_sel = NULL;
124 -
125 - group = gimp_group_layer_new (image);
126 -
127 -@@ -1150,6 +1162,13 @@ xcf_load_layer_props (XcfInfo *info,
128 - g_object_ref_sink (*layer);
129 - g_object_unref (*layer);
130 - *layer = group;
131 -+
132 -+ if (is_active_layer)
133 -+ info->active_layer = *layer;
134 -+
135 -+ /* Don't restore info->floating_sel because group layers
136 -+ * can't be floating selections
137 -+ */
138 - }
139 - break;
140 -
141 -@@ -1220,6 +1239,12 @@ xcf_load_channel_props (XcfInfo *info,
142 - {
143 - GimpChannel *mask;
144 -
145 -+ /* We're going to delete *channel, Don't leave its pointer
146 -+ * in @info. See bug #767873.
147 -+ */
148 -+ if (*channel == info->active_channel)
149 -+ info->active_channel = NULL;
150 -+
151 - mask =
152 - gimp_selection_new (image,
153 - gimp_item_get_width (GIMP_ITEM (*channel)),
154 -@@ -1234,6 +1259,10 @@ xcf_load_channel_props (XcfInfo *info,
155 - *channel = mask;
156 - (*channel)->boundary_known = FALSE;
157 - (*channel)->bounds_known = FALSE;
158 -+
159 -+ /* Don't restore info->active_channel because the
160 -+ * selection can't be the active channel
161 -+ */
162 - }
163 - break;
164 -
165 ---
166 -cgit v0.12
167 -
168
169 diff --git a/media-gfx/gimp/files/gimp-2.9.2-gegl-0.3.8.patch b/media-gfx/gimp/files/gimp-2.9.2-gegl-0.3.8.patch
170 deleted file mode 100644
171 index a3aa236542b..00000000000
172 --- a/media-gfx/gimp/files/gimp-2.9.2-gegl-0.3.8.patch
173 +++ /dev/null
174 @@ -1,54 +0,0 @@
175 -https://bugs.gentoo.org/586828
176 -
177 -Backported from:
178 -https://git.gnome.org/browse/gimp/commit/?id=2e4685013123c584354bc38612527593a815c38b
179 -
180 ---- gimp-2.9.2/app/core/gimpparamspecs-duplicate.c
181 -+++ gimp-2.9.2/app/core/gimpparamspecs-duplicate.c
182 -@@ -66,23 +66,11 @@
183 - }
184 - else
185 - {
186 --
187 - copy = g_param_spec_string (pspec->name,
188 - g_param_spec_get_nick (pspec),
189 - g_param_spec_get_blurb (pspec),
190 - spec->default_value,
191 - flags);
192 --
193 -- if (GEGL_IS_PARAM_SPEC_MULTILINE (pspec))
194 -- {
195 -- static GQuark multiline_quark = 0;
196 --
197 -- if (! multiline_quark)
198 -- multiline_quark = g_quark_from_static_string ("multiline");
199 --
200 -- g_param_spec_set_qdata (copy, multiline_quark,
201 -- GINT_TO_POINTER (TRUE));
202 -- }
203 - }
204 - }
205 - else if (G_IS_PARAM_SPEC_BOOLEAN (pspec))
206 ---- gimp-2.9.2/app/widgets/gimppropgui.c
207 -+++ gimp-2.9.2/app/widgets/gimppropgui.c
208 -@@ -227,11 +227,6 @@
209 - }
210 - else if (G_IS_PARAM_SPEC_STRING (pspec))
211 - {
212 -- static GQuark multiline_quark = 0;
213 --
214 -- if (! multiline_quark)
215 -- multiline_quark = g_quark_from_static_string ("multiline");
216 --
217 - if (GIMP_IS_PARAM_SPEC_CONFIG_PATH (pspec))
218 - {
219 - widget =
220 -@@ -239,7 +234,7 @@
221 - g_param_spec_get_nick (pspec),
222 - GTK_FILE_CHOOSER_ACTION_OPEN);
223 - }
224 -- else if (g_param_spec_get_qdata (pspec, multiline_quark))
225 -+ else if (HAS_KEY (pspec, "multiline", "true"))
226 - {
227 - GtkTextBuffer *buffer;
228 - GtkWidget *view;
229
230 diff --git a/media-gfx/gimp/files/gimp-2.9.2-no-deprecation.patch b/media-gfx/gimp/files/gimp-2.9.2-no-deprecation.patch
231 deleted file mode 100644
232 index 441298a08fd..00000000000
233 --- a/media-gfx/gimp/files/gimp-2.9.2-no-deprecation.patch
234 +++ /dev/null
235 @@ -1,50 +0,0 @@
236 -From 81d7607e5159275a9b693a170f7767ffcb548a1b Mon Sep 17 00:00:00 2001
237 -From: Sebastian Pipping <sebastian@×××××××.org>
238 -Date: Sat, 5 Dec 2015 01:14:37 +0100
239 -Subject: [PATCH] Do not disable deprecated APIs
240 -
241 ----
242 - configure.ac | 27 ---------------------------
243 - 1 file changed, 27 deletions(-)
244 -
245 -diff --git a/configure.ac b/configure.ac
246 -index 4de6e53..8528e87 100644
247 ---- a/configure.ac
248 -+++ b/configure.ac
249 -@@ -2111,33 +2111,6 @@ MIME_TYPES="$MIME_TYPES;"
250 - AC_SUBST(MIME_TYPES)
251 -
252 -
253 --#########################
254 --# Disable deprecated APIs
255 --#########################
256 --
257 --CPPFLAGS="${CPPFLAGS} -DGIMP_DISABLE_DEPRECATED -DBABL_DISABLE_DEPRECATED -DGSEAL_ENABLE"
258 --
259 --# Make sure not to disable deprecated APIs for unreleased versions.
260 --# We must build without problems with future releases of libraries
261 --# and disabling deprecated API risks breaking the build
262 --
263 --if test "x$have_glib_2_43" != "xyes"; then
264 -- CPPFLAGS="${CPPFLAGS} -DG_DISABLE_DEPRECATED"
265 --fi
266 --
267 --if test "x$have_gtk_2_26" != "xyes"; then
268 -- CPPFLAGS="${CPPFLAGS} -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
269 --fi
270 --
271 --if test "x$have_gdk_pixbuf_2_31" != "xyes"; then
272 -- CPPFLAGS="${CPPFLAGS} -DGDK_PIXBUF_DISABLE_DEPRECATED"
273 --fi
274 --
275 --if test "x$have_pango_1_32" != "xyes"; then
276 -- CPPFLAGS="${CPPFLAGS} -DPANGO_DISABLE_DEPRECATED"
277 --fi
278 --
279 --
280 - ############################
281 - # Require multihead safe API
282 - ############################
283 ---
284 -2.6.3
285 -
286
287 diff --git a/media-gfx/gimp/files/gimp-2.9.2-version.patch b/media-gfx/gimp/files/gimp-2.9.2-version.patch
288 deleted file mode 100644
289 index e4861445557..00000000000
290 --- a/media-gfx/gimp/files/gimp-2.9.2-version.patch
291 +++ /dev/null
292 @@ -1,28 +0,0 @@
293 -From f2f7a29ba5aceaa38a285f15c3fe8b481d05b357 Mon Sep 17 00:00:00 2001
294 -From: Sebastian Pipping <sebastian@×××××××.org>
295 -Date: Sat, 5 Dec 2015 01:15:22 +0100
296 -Subject: [PATCH] Sync version string
297 -
298 -.. with
299 -m4_define([gimp_micro_version], [2])
300 -above
301 ----
302 - configure.ac | 2 +-
303 - 1 file changed, 1 insertion(+), 1 deletion(-)
304 -
305 -diff --git a/configure.ac b/configure.ac
306 -index 8528e87..21d86a3 100644
307 ---- a/configure.ac
308 -+++ b/configure.ac
309 -@@ -20,7 +20,7 @@ m4_define([gimp_binary_age],
310 - [m4_eval(100 * gimp_minor_version + gimp_micro_version)])
311 -
312 - # For overriding the version string. Comment out if not needed.
313 --# m4_define([gimp_version], [2.9.1])
314 -+# m4_define([gimp_version], [2.9.2])
315 -
316 - # This is the X.Y used in -lgimp-X.Y
317 - m4_define([gimp_api_version], [2.0])
318 ---
319 -2.6.3
320 -
321
322 diff --git a/media-gfx/gimp/files/gimp-2.9.4-CVE-2007-3126.patch b/media-gfx/gimp/files/gimp-2.9.4-CVE-2007-3126.patch
323 deleted file mode 100644
324 index 6c515173d9c..00000000000
325 --- a/media-gfx/gimp/files/gimp-2.9.4-CVE-2007-3126.patch
326 +++ /dev/null
327 @@ -1,291 +0,0 @@
328 -From 46bcd82800e37b0f5aead76184430ef2fe802748 Mon Sep 17 00:00:00 2001
329 -From: Michael Natterer <mitch@××××.org>
330 -Date: Sun, 6 Nov 2016 21:34:43 +0100
331 -Subject: Bug 773233 - CVE-2007-3126 - Gimp 2.3.14 allows context-dependent
332 - attackers...
333 -
334 -...to cause a denial of service (crash) via an ICO file with an
335 -InfoHeader containing a Height of zero
336 -
337 -Add some error handling to ico-load.c and bail out on zero width or height
338 -icons. Also some formatting cleanup.
339 ----
340 - plug-ins/file-ico/ico-load.c | 103 ++++++++++++++++++++++++++-----------------
341 - 1 file changed, 62 insertions(+), 41 deletions(-)
342 -
343 -diff --git a/plug-ins/file-ico/ico-load.c b/plug-ins/file-ico/ico-load.c
344 -index c8091d3..8cce94f 100644
345 ---- a/plug-ins/file-ico/ico-load.c
346 -+++ b/plug-ins/file-ico/ico-load.c
347 -@@ -124,15 +124,17 @@ static guint32
348 - ico_read_init (FILE *fp)
349 - {
350 - IcoFileHeader header;
351 -+
352 - /* read and check file header */
353 -- if (!ico_read_int16 (fp, &header.reserved, 1)
354 -- || !ico_read_int16 (fp, &header.resource_type, 1)
355 -- || !ico_read_int16 (fp, &header.icon_count, 1)
356 -- || header.reserved != 0
357 -- || header.resource_type != 1)
358 -+ if (! ico_read_int16 (fp, &header.reserved, 1) ||
359 -+ ! ico_read_int16 (fp, &header.resource_type, 1) ||
360 -+ ! ico_read_int16 (fp, &header.icon_count, 1) ||
361 -+ header.reserved != 0 ||
362 -+ header.resource_type != 1)
363 - {
364 - return 0;
365 - }
366 -+
367 - return header.icon_count;
368 - }
369 -
370 -@@ -148,22 +150,25 @@ ico_read_size (FILE *fp,
371 - gint32 color_type;
372 - guint32 magic;
373 -
374 -- if ( fseek (fp, info->offset, SEEK_SET) < 0 )
375 -+ if (fseek (fp, info->offset, SEEK_SET) < 0)
376 - return FALSE;
377 -
378 - ico_read_int32 (fp, &magic, 1);
379 -+
380 - if (magic == ICO_PNG_MAGIC)
381 - {
382 - png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL,
383 - NULL);
384 -- if (! png_ptr )
385 -+ if (! png_ptr)
386 - return FALSE;
387 -+
388 - info_ptr = png_create_info_struct (png_ptr);
389 -- if (! info_ptr )
390 -+ if (! info_ptr)
391 - {
392 - png_destroy_read_struct (&png_ptr, NULL, NULL);
393 - return FALSE;
394 - }
395 -+
396 - if (setjmp (png_jmpbuf (png_ptr)))
397 - {
398 - png_destroy_read_struct (&png_ptr, NULL, NULL);
399 -@@ -182,8 +187,8 @@ ico_read_size (FILE *fp,
400 - }
401 - else if (magic == 40)
402 - {
403 -- if (ico_read_int32 (fp, &info->width, 1)
404 -- && ico_read_int32 (fp, &info->height, 1))
405 -+ if (ico_read_int32 (fp, &info->width, 1) &&
406 -+ ico_read_int32 (fp, &info->height, 1))
407 - {
408 - info->height /= 2;
409 - D(("ico_read_size: ICO: %ix%i\n", info->width, info->height));
410 -@@ -200,8 +205,9 @@ ico_read_size (FILE *fp,
411 - }
412 -
413 - static IcoLoadInfo*
414 --ico_read_info (FILE *fp,
415 -- gint icon_count)
416 -+ico_read_info (FILE *fp,
417 -+ gint icon_count,
418 -+ GError **error)
419 - {
420 - gint i;
421 - IcoFileEntry *entries;
422 -@@ -209,8 +215,11 @@ ico_read_info (FILE *fp,
423 -
424 - /* read icon entries */
425 - entries = g_new (IcoFileEntry, icon_count);
426 -- if ( fread (entries, sizeof(IcoFileEntry), icon_count, fp) <= 0 )
427 -+ if (fread (entries, sizeof (IcoFileEntry), icon_count, fp) <= 0)
428 - {
429 -+ g_set_error (error, G_FILE_ERROR, 0,
430 -+ _("Could not read '%lu' bytes"),
431 -+ sizeof (IcoFileEntry));
432 - g_free (entries);
433 - return NULL;
434 - }
435 -@@ -218,23 +227,33 @@ ico_read_info (FILE *fp,
436 - info = g_new (IcoLoadInfo, icon_count);
437 - for (i = 0; i < icon_count; i++)
438 - {
439 -- info[i].width = entries[i].width;
440 -+ info[i].width = entries[i].width;
441 - info[i].height = entries[i].height;
442 -- info[i].bpp = GUINT16_FROM_LE (entries[i].bpp);
443 -- info[i].size = GUINT32_FROM_LE (entries[i].size);
444 -+ info[i].bpp = GUINT16_FROM_LE (entries[i].bpp);
445 -+ info[i].size = GUINT32_FROM_LE (entries[i].size);
446 - info[i].offset = GUINT32_FROM_LE (entries[i].offset);
447 -
448 - if (info[i].width == 0 || info[i].height == 0)
449 - {
450 -- ico_read_size (fp, info+i);
451 -+ ico_read_size (fp, info + i);
452 - }
453 -
454 - D(("ico_read_info: %ix%i (%i bits, size: %i, offset: %i)\n",
455 - info[i].width, info[i].height, info[i].bpp,
456 - info[i].size, info[i].offset));
457 -+
458 -+ if (info[i].width == 0 || info[i].height == 0)
459 -+ {
460 -+ g_set_error (error, G_FILE_ERROR, 0,
461 -+ _("Icon #%d has zero width or height"), i);
462 -+ g_free (info);
463 -+ g_free (entries);
464 -+ return NULL;
465 -+ }
466 - }
467 -
468 - g_free (entries);
469 -+
470 - return info;
471 - }
472 -
473 -@@ -256,10 +275,10 @@ ico_read_png (FILE *fp,
474 - gint i;
475 -
476 - png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
477 -- if (! png_ptr )
478 -+ if (! png_ptr)
479 - return FALSE;
480 - info = png_create_info_struct (png_ptr);
481 -- if (! info )
482 -+ if (! info)
483 - {
484 - png_destroy_read_struct (&png_ptr, NULL, NULL);
485 - return FALSE;
486 -@@ -287,14 +306,14 @@ ico_read_png (FILE *fp,
487 - {
488 - case PNG_COLOR_TYPE_GRAY:
489 - png_set_expand_gray_1_2_4_to_8 (png_ptr);
490 -- if ( bit_depth == 16 )
491 -+ if (bit_depth == 16)
492 - png_set_strip_16 (png_ptr);
493 - png_set_gray_to_rgb (png_ptr);
494 - png_set_add_alpha (png_ptr, 0xff, PNG_FILLER_AFTER);
495 - break;
496 - case PNG_COLOR_TYPE_GRAY_ALPHA:
497 - png_set_expand_gray_1_2_4_to_8 (png_ptr);
498 -- if ( bit_depth == 16 )
499 -+ if (bit_depth == 16)
500 - png_set_strip_16 (png_ptr);
501 - png_set_gray_to_rgb (png_ptr);
502 - break;
503 -@@ -427,16 +446,18 @@ ico_read_icon (FILE *fp,
504 - data.planes, data.image_size, data.bpp,
505 - data.used_clrs, data.important_clrs));
506 -
507 -- if (data.planes != 1
508 -- || data.compression != 0)
509 -+ if (data.planes != 1 ||
510 -+ data.compression != 0)
511 - {
512 - D(("skipping image: invalid header\n"));
513 - return FALSE;
514 - }
515 -
516 -- if (data.bpp != 1 && data.bpp != 4
517 -- && data.bpp != 8 && data.bpp != 24
518 -- && data.bpp != 32)
519 -+ if (data.bpp != 1 &&
520 -+ data.bpp != 4 &&
521 -+ data.bpp != 8 &&
522 -+ data.bpp != 24 &&
523 -+ data.bpp != 32)
524 - {
525 - D(("skipping image: invalid depth: %i\n", data.bpp));
526 - return FALSE;
527 -@@ -590,8 +611,8 @@ ico_load_layer (FILE *fp,
528 - GeglBuffer *buffer;
529 - gchar name[ICO_MAXBUF];
530 -
531 -- if ( fseek (fp, info->offset, SEEK_SET) < 0
532 -- || !ico_read_int32 (fp, &first_bytes, 1) )
533 -+ if (fseek (fp, info->offset, SEEK_SET) < 0 ||
534 -+ ! ico_read_int32 (fp, &first_bytes, 1))
535 - return -1;
536 -
537 - if (first_bytes == ICO_PNG_MAGIC)
538 -@@ -643,7 +664,7 @@ ico_load_image (const gchar *filename,
539 - gimp_filename_to_utf8 (filename));
540 -
541 - fp = g_fopen (filename, "rb");
542 -- if (! fp )
543 -+ if (! fp)
544 - {
545 - g_set_error (error, G_FILE_ERROR, g_file_error_from_errno (errno),
546 - _("Could not open '%s' for reading: %s"),
547 -@@ -658,8 +679,8 @@ ico_load_image (const gchar *filename,
548 - return -1;
549 - }
550 -
551 -- info = ico_read_info (fp, icon_count);
552 -- if (!info)
553 -+ info = ico_read_info (fp, icon_count, error);
554 -+ if (! info)
555 - {
556 - fclose (fp);
557 - return -1;
558 -@@ -670,12 +691,12 @@ ico_load_image (const gchar *filename,
559 - max_height = 0;
560 - for (i = 0; i < icon_count; i++)
561 - {
562 -- if ( info[i].width > max_width )
563 -+ if (info[i].width > max_width)
564 - max_width = info[i].width;
565 -- if ( info[i].height > max_height )
566 -+ if (info[i].height > max_height)
567 - max_height = info[i].height;
568 - }
569 -- if ( max_width <= 0 || max_height <= 0 )
570 -+ if (max_width <= 0 || max_height <= 0)
571 - {
572 - g_free (info);
573 - fclose (fp);
574 -@@ -721,7 +742,7 @@ ico_load_thumbnail_image (const gchar *filename,
575 - gimp_filename_to_utf8 (filename));
576 -
577 - fp = g_fopen (filename, "rb");
578 -- if (! fp )
579 -+ if (! fp)
580 - {
581 - g_set_error (error, G_FILE_ERROR, g_file_error_from_errno (errno),
582 - _("Could not open '%s' for reading: %s"),
583 -@@ -730,7 +751,7 @@ ico_load_thumbnail_image (const gchar *filename,
584 - }
585 -
586 - icon_count = ico_read_init (fp);
587 -- if (! icon_count )
588 -+ if (! icon_count)
589 - {
590 - fclose (fp);
591 - return -1;
592 -@@ -739,8 +760,8 @@ ico_load_thumbnail_image (const gchar *filename,
593 - D(("*** %s: Microsoft icon file, containing %i icon(s)\n",
594 - filename, icon_count));
595 -
596 -- info = ico_read_info (fp, icon_count);
597 -- if (! info )
598 -+ info = ico_read_info (fp, icon_count, error);
599 -+ if (! info)
600 - {
601 - fclose (fp);
602 - return -1;
603 -@@ -758,9 +779,9 @@ ico_load_thumbnail_image (const gchar *filename,
604 -
605 - match = i;
606 - }
607 -- else if ( w == info[i].width
608 -- && h == info[i].height
609 -- && info[i].bpp > bpp )
610 -+ else if (w == info[i].width &&
611 -+ h == info[i].height &&
612 -+ info[i].bpp > bpp)
613 - {
614 - /* better quality */
615 - bpp = info[i].bpp;
616 ---
617 -cgit v0.12
618 -
619
620 diff --git a/media-gfx/gimp/files/gimp-2.9.4-gegl-bin.patch b/media-gfx/gimp/files/gimp-2.9.4-gegl-bin.patch
621 deleted file mode 100644
622 index 31057b5796d..00000000000
623 --- a/media-gfx/gimp/files/gimp-2.9.4-gegl-bin.patch
624 +++ /dev/null
625 @@ -1,28 +0,0 @@
626 -From 8d5de5ce62cd0410c9bccaa77725d0cad051faad Mon Sep 17 00:00:00 2001
627 -From: Sebastian Pipping <sebastian@×××××××.org>
628 -Date: Mon, 18 Jul 2016 17:42:45 +0200
629 -Subject: [PATCH] Fix gegl executable name to check for
630 -
631 ----
632 - configure.ac | 4 ++--
633 - 1 file changed, 2 insertions(+), 2 deletions(-)
634 -
635 -diff --git a/configure.ac b/configure.ac
636 -index 45b31b1..0e5be99 100644
637 ---- a/configure.ac
638 -+++ b/configure.ac
639 -@@ -674,9 +674,9 @@ else
640 - fi
641 - AC_MSG_RESULT($have_glib_2_43)
642 -
643 --AC_PATH_PROG(GEGL, gegl, no)
644 -+AC_PATH_PROG(GEGL, gegl-0.3, no)
645 - if test "x$GEGL" = xno; then
646 -- add_deps_error([gegl], [Could not find gegl in your PATH.])
647 -+ add_deps_error([gegl], [Could not find gegl-0.3 in your PATH.])
648 - fi
649 -
650 -
651 ---
652 -2.9.2
653 -
654
655 diff --git a/media-gfx/gimp/files/gimp-2.9.4-mkdir-makefile.patch b/media-gfx/gimp/files/gimp-2.9.4-mkdir-makefile.patch
656 deleted file mode 100644
657 index 661ad699f5d..00000000000
658 --- a/media-gfx/gimp/files/gimp-2.9.4-mkdir-makefile.patch
659 +++ /dev/null
660 @@ -1,36 +0,0 @@
661 -From c081a26345ad1c5bdf6f4ffec27bca517de6d594 Mon Sep 17 00:00:00 2001
662 -From: Sebastian Pipping <sebastian@×××××××.org>
663 -Date: Sat, 23 Jul 2016 01:02:10 +0200
664 -Subject: [PATCH] Fix creation of output directories
665 -
666 -https://bugs.gentoo.org/show_bug.cgi?id=589394
667 ----
668 - icons/Symbolic-Inverted/Makefile.am | 8 ++++----
669 - 1 file changed, 4 insertions(+), 4 deletions(-)
670 -
671 -diff --git a/icons/Symbolic-Inverted/Makefile.am b/icons/Symbolic-Inverted/Makefile.am
672 -index 2981cfc..f3fe6a5 100644
673 ---- a/icons/Symbolic-Inverted/Makefile.am
674 -+++ b/icons/Symbolic-Inverted/Makefile.am
675 -@@ -10,14 +10,14 @@ include $(top_srcdir)/icons/icon-list.mk
676 - # As exceptions, we do not want to invert some icons.
677 - # Just use these as-is: gimp-default-colors, gimp-toilet-paper.png.
678 - 12/gimp-default-colors.png: $(top_srcdir)/icons/Symbolic/12/gimp-default-colors.png
679 -- mkdir -p `dirname $<` && cp -f $< $@
680 -+ mkdir -p `dirname $@` && cp -f $< $@
681 - scalable/gimp-default-colors.svg: ../Symbolic/scalable/gimp-default-colors.svg
682 -- mkdir -p `dirname $<` && cp -f $< $@
683 -+ mkdir -p `dirname $@` && cp -f $< $@
684 -
685 - %/gimp-toilet-paper.png: $(top_srcdir)/icons/Symbolic/$(@D)/gimp-toilet-paper.png
686 -- mkdir -p `dirname $<` && cp -f $< $@
687 -+ mkdir -p `dirname $@` && cp -f $< $@
688 - scalable/gimp-toilet-paper.svg: ../Symbolic/scalable/gimp-toilet-paper.svg
689 -- mkdir -p `dirname $<` && cp -f $< $@
690 -+ mkdir -p `dirname $@` && cp -f $< $@
691 -
692 - # Other exceptions: inverted gimp-color-picker-white|black are generated
693 - # from each other.
694 ---
695 -2.9.2
696 -