diff --git a/.cvsignore b/.cvsignore index 4be66cb..f7f1c2f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ -gimp-2.6.9.tar.bz2 -gimp-2.6.9-3-autoreconf.patch.bz2 +gimp-2.6.10-1-autoreconf.patch.bz2 +gimp-2.6.10.tar.bz2 diff --git a/gimp-2.6.10-script-fu-ipv6.patch b/gimp-2.6.10-script-fu-ipv6.patch new file mode 100644 index 0000000..856ffa4 --- /dev/null +++ b/gimp-2.6.10-script-fu-ipv6.patch @@ -0,0 +1,279 @@ +diff -up gimp-2.6.10/configure.in.script-fu-ipv6 gimp-2.6.10/configure.in +--- gimp-2.6.10/configure.in.script-fu-ipv6 2010-07-03 00:51:55.000000000 +0200 ++++ gimp-2.6.10/configure.in 2010-07-09 13:20:33.499983496 +0200 +@@ -602,14 +602,15 @@ AC_CHECK_FUNC(rint, AC_DEFINE(HAVE_RINT, + AC_DEFINE(HAVE_RINT)])]) + + +-###################################################### +-# Check for extra libs needed for inet_ntoa and socket +-###################################################### ++##################################################################### ++# Check for extra libs needed for getaddrinfo, getnameinfo and socket ++##################################################################### + + gimp_save_LIBS=$LIBS + LIBS="" + +-AC_CHECK_FUNCS(inet_ntoa, , AC_CHECK_LIB(nsl, inet_ntoa)) ++AC_CHECK_FUNCS(getaddrinfo, , AC_CHECK_LIB(nsl, getaddrinfo)) ++AC_CHECK_FUNCS(getnameinfo, , AC_CHECK_LIB(nsl, getnameinfo)) + AC_CHECK_LIB(socket, socket) + + SOCKET_LIBS="$LIBS" +diff -up gimp-2.6.10/plug-ins/script-fu/script-fu-server.c.script-fu-ipv6 gimp-2.6.10/plug-ins/script-fu/script-fu-server.c +--- gimp-2.6.10/plug-ins/script-fu/script-fu-server.c.script-fu-ipv6 2010-07-03 00:51:59.000000000 +0200 ++++ gimp-2.6.10/plug-ins/script-fu/script-fu-server.c 2010-07-09 13:20:33.500982656 +0200 +@@ -108,7 +108,7 @@ + #define RSP_LEN_L_BYTE 3 + + /* +- * Local Structures ++ * Local Types + */ + + typedef struct +@@ -129,6 +129,15 @@ typedef struct + gboolean run; + } ServerInterface; + ++typedef union ++{ ++ sa_family_t family; ++ struct sockaddr_storage ss; ++ struct sockaddr sa; ++ struct sockaddr_in sa_in; ++ struct sockaddr_in6 sa_in6; ++} sa_union; ++ + /* + * Local Functions + */ +@@ -137,7 +146,8 @@ static void server_start (gin + const gchar *logfile); + static gboolean execute_command (SFCommand *cmd); + static gint read_from_client (gint filedes); +-static gint make_socket (guint port); ++static gint make_socket (const struct addrinfo ++ *ai); + static void server_log (const gchar *format, + ...) G_GNUC_PRINTF (1, 2); + static void server_quit (void); +@@ -151,7 +161,10 @@ static void print_socket_api_error + /* + * Local variables + */ +-static gint server_sock; ++static gint server_socks[2], ++ server_socks_used = 0; ++static const gint server_socks_len = sizeof (server_socks) / ++ sizeof (server_socks[0]); + static GList *command_queue = NULL; + static gint queue_length = 0; + static gint request_no = 0; +@@ -285,6 +298,7 @@ script_fu_server_listen (gint timeout) + struct timeval tv; + struct timeval *tvp = NULL; + SELECT_MASK fds; ++ gint sockno; + + /* Set time struct */ + if (timeout) +@@ -295,7 +309,10 @@ script_fu_server_listen (gint timeout) + } + + FD_ZERO (&fds); +- FD_SET (server_sock, &fds); ++ for (sockno = 0; sockno < server_socks_used; sockno++) ++ { ++ FD_SET (server_socks[sockno], &fds); ++ } + g_hash_table_foreach (clients, script_fu_server_add_fd, &fds); + + /* Block until input arrives on one or more active sockets +@@ -307,15 +324,23 @@ script_fu_server_listen (gint timeout) + return; + } + +- /* Service the server socket if it has input pending. */ +- if (FD_ISSET (server_sock, &fds)) ++ /* Service the server sockets if any has input pending. */ ++ for (sockno = 0; sockno < server_socks_used; sockno++) + { +- struct sockaddr_in clientname; ++ sa_union client; ++ gchar clientname[NI_MAXHOST]; + + /* Connection request on original socket. */ +- guint size = sizeof (clientname); +- gint new = accept (server_sock, +- (struct sockaddr *) &clientname, &size); ++ guint size = sizeof (client); ++ gint new; ++ guint portno; ++ ++ if (! FD_ISSET (server_socks[sockno], &fds)) ++ { ++ continue; ++ } ++ ++ new = accept (server_socks[sockno], &(client.sa), &size); + + if (new < 0) + { +@@ -324,13 +349,32 @@ script_fu_server_listen (gint timeout) + } + + /* Associate the client address with the socket */ +- g_hash_table_insert (clients, +- GINT_TO_POINTER (new), +- g_strdup (inet_ntoa (clientname.sin_addr))); ++ ++ /* If all else fails ... */ ++ strncpy (clientname, "(error during host address lookup)", NI_MAXHOST-1); ++ ++ /* Lookup address */ ++ (void) getnameinfo (&(client.sa), size, clientname, sizeof (clientname), ++ NULL, 0, NI_NUMERICHOST); ++ ++ g_hash_table_insert (clients, GINT_TO_POINTER (new), ++ g_strdup (clientname)); ++ ++ /* Determine port number */ ++ switch (client.family) ++ { ++ case AF_INET: ++ portno = (guint) g_ntohs (client.sa_in.sin_port); ++ break; ++ case AF_INET6: ++ portno = (guint) g_ntohs (client.sa_in6.sin6_port); ++ break; ++ default: ++ portno = 0; ++ } + + server_log ("Server: connect from host %s, port %d.\n", +- inet_ntoa (clientname.sin_addr), +- (unsigned int) ntohs (clientname.sin_port)); ++ clientname, portno); + } + + /* Service the client sockets. */ +@@ -392,18 +436,46 @@ static void + server_start (gint port, + const gchar *logfile) + { +- const gchar *progress; +- +- /* First of all, create the socket and set it up to accept connections. */ +- /* This may fail if there's a server running on this port already. */ +- server_sock = make_socket (port); ++ struct addrinfo *ai, ++ *ai_curr; ++ struct addrinfo hints; ++ gint e, ++ sockno; ++ gchar *port_s; ++ ++ const gchar *progress; ++ ++ memset (&hints, 0, sizeof (hints)); ++ hints.ai_flags = AI_PASSIVE | AI_ADDRCONFIG; ++ hints.ai_socktype = SOCK_STREAM; ++ ++ port_s = g_strdup_printf ("%d", port); ++ e = getaddrinfo (NULL, port_s, &hints, &ai); ++ g_free (port_s); + +- if (listen (server_sock, 5) < 0) ++ if (e != 0) + { +- print_socket_api_error ("listen"); ++ g_printerr ("getaddrinfo: %s", gai_strerror (e)); + return; + } + ++ for (ai_curr = ai, sockno = 0; ++ ai_curr != NULL && sockno < server_socks_len; ++ ai_curr = ai_curr->ai_next, sockno++) ++ { ++ /* Create the socket and set it up to accept connections. */ ++ /* This may fail if there's a server running on this port already. */ ++ server_socks[sockno] = make_socket (ai_curr); ++ ++ if (listen (server_socks[sockno], 5) < 0) ++ { ++ print_socket_api_error ("listen"); ++ return; ++ } ++ } ++ ++ server_socks_used = sockno; ++ + /* Setup up the server log file */ + if (logfile && *logfile) + server_log_file = g_fopen (logfile, "a"); +@@ -592,11 +664,10 @@ read_from_client (gint filedes) + } + + static gint +-make_socket (guint port) ++make_socket (const struct addrinfo *ai) + { +- struct sockaddr_in name; +- gint sock; +- gint v = 1; ++ gint sock; ++ gint v = 1; + + /* Win32 needs the winsock library initialized. */ + #ifdef G_OS_WIN32 +@@ -620,7 +691,7 @@ make_socket (guint port) + #endif + + /* Create the socket. */ +- sock = socket (PF_INET, SOCK_STREAM, 0); ++ sock = socket (ai->ai_family, ai->ai_socktype, ai->ai_protocol); + if (sock < 0) + { + print_socket_api_error ("socket"); +@@ -629,12 +700,20 @@ make_socket (guint port) + + setsockopt (sock, SOL_SOCKET, SO_REUSEADDR, &v, sizeof(v)); + +- /* Give the socket a name. */ +- name.sin_family = AF_INET; +- name.sin_port = htons (port); +- name.sin_addr.s_addr = htonl (INADDR_ANY); ++#ifdef IPV6_V6ONLY ++ /* Only listen on IPv6 addresses, otherwise bind() will fail. */ ++ if (ai->ai_family == AF_INET6) ++ { ++ v = 1; ++ if (setsockopt (sock, IPPROTO_IPV6, IPV6_V6ONLY, &v, sizeof(v)) < 0) ++ { ++ print_socket_api_error ("setsockopt"); ++ gimp_quit(); ++ } ++ } ++#endif + +- if (bind (sock, (struct sockaddr *) &name, sizeof (name)) < 0) ++ if (bind (sock, ai->ai_addr, ai->ai_addrlen) < 0) + { + print_socket_api_error ("bind"); + gimp_quit (); +@@ -672,7 +751,12 @@ script_fu_server_shutdown_fd (gpointer k + static void + server_quit (void) + { +- CLOSESOCKET (server_sock); ++ gint sockno; ++ ++ for (sockno = 0; sockno < server_socks_used; sockno++) ++ { ++ CLOSESOCKET (server_socks[sockno]); ++ } + + if (clients) + { diff --git a/gimp-2.6.9-combo-popup.patch b/gimp-2.6.9-combo-popup.patch deleted file mode 100644 index b637865..0000000 --- a/gimp-2.6.9-combo-popup.patch +++ /dev/null @@ -1,44 +0,0 @@ -From ac799274bd9ac1f3cb24624853ad35ee5b860f62 Mon Sep 17 00:00:00 2001 -From: Nils Philippsen -Date: Fri, 25 Jun 2010 13:53:04 +0200 -Subject: [PATCH] patch: combo-popup - -Squashed commit of the following: - -commit 0d1a4fd3c9bdf86ab71951c63bdf6915b8befd05 -Author: Michael Natterer -Date: Thu Jun 24 21:56:41 2010 +0200 - - Bug 622608 - GIMP crashes when clicking any scroll bar from combo boxes - - Don't cancel the popup in grab_notify() if the popup's grab was - shadowed by one of the widgets in the popup, like the scrollbar. - (cherry picked from commit 991210c0f94ed8e88eab7ebf19438bad85931930) ---- - app/widgets/gimpcontainerpopup.c | 10 ++++++++-- - 1 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/app/widgets/gimpcontainerpopup.c b/app/widgets/gimpcontainerpopup.c -index 50624cc..40cdfce 100644 ---- a/app/widgets/gimpcontainerpopup.c -+++ b/app/widgets/gimpcontainerpopup.c -@@ -181,8 +181,14 @@ static void - gimp_container_popup_grab_notify (GtkWidget *widget, - gboolean was_grabbed) - { -- if (! was_grabbed) -- g_signal_emit (widget, popup_signals[CANCEL], 0); -+ if (was_grabbed) -+ return; -+ -+ /* ignore grabs on one of our children, like the scrollbar */ -+ if (gtk_widget_is_ancestor (gtk_grab_get_current (), widget)) -+ return; -+ -+ g_signal_emit (widget, popup_signals[CANCEL], 0); - } - - static gboolean --- -1.7.0.1 - diff --git a/gimp-2.6.9-script-fu-ipv6.patch b/gimp-2.6.9-script-fu-ipv6.patch deleted file mode 100644 index 6386414..0000000 --- a/gimp-2.6.9-script-fu-ipv6.patch +++ /dev/null @@ -1,257 +0,0 @@ -diff -up gimp-2.6.9/configure.in.script-fu-ipv6 gimp-2.6.9/configure.in ---- gimp-2.6.9/configure.in.script-fu-ipv6 2010-06-21 21:20:20.000000000 +0200 -+++ gimp-2.6.9/configure.in 2010-06-29 17:28:24.153566227 +0200 -@@ -602,14 +602,14 @@ AC_CHECK_FUNC(rint, AC_DEFINE(HAVE_RINT, - AC_DEFINE(HAVE_RINT)])]) - - --###################################################### --# Check for extra libs needed for inet_ntoa and socket --###################################################### -+######################################################## -+# Check for extra libs needed for getnameinfo and socket -+######################################################## - - gimp_save_LIBS=$LIBS - LIBS="" - --AC_CHECK_FUNCS(inet_ntoa, , AC_CHECK_LIB(nsl, inet_ntoa)) -+AC_CHECK_FUNCS(getnameinfo, , AC_CHECK_LIB(nsl, getnameinfo)) - AC_CHECK_LIB(socket, socket) - - SOCKET_LIBS="$LIBS" -diff -up gimp-2.6.9/plug-ins/script-fu/script-fu-server.c.script-fu-ipv6 gimp-2.6.9/plug-ins/script-fu/script-fu-server.c ---- gimp-2.6.9/plug-ins/script-fu/script-fu-server.c.script-fu-ipv6 2009-07-20 22:20:51.000000000 +0200 -+++ gimp-2.6.9/plug-ins/script-fu/script-fu-server.c 2010-06-29 17:28:24.154289648 +0200 -@@ -137,7 +137,8 @@ static void server_start (gin - const gchar *logfile); - static gboolean execute_command (SFCommand *cmd); - static gint read_from_client (gint filedes); --static gint make_socket (guint port); -+static gint make_socket (const struct addrinfo -+ *ai); - static void server_log (const gchar *format, - ...) G_GNUC_PRINTF (1, 2); - static void server_quit (void); -@@ -151,7 +152,10 @@ static void print_socket_api_error - /* - * Local variables - */ --static gint server_sock; -+static gint server_socks[2], -+ server_socks_used = 0; -+static const gint server_socks_len = sizeof (server_socks) / -+ sizeof (server_socks[0]); - static GList *command_queue = NULL; - static gint queue_length = 0; - static gint request_no = 0; -@@ -285,6 +289,7 @@ script_fu_server_listen (gint timeout) - struct timeval tv; - struct timeval *tvp = NULL; - SELECT_MASK fds; -+ gint sockno; - - /* Set time struct */ - if (timeout) -@@ -295,7 +300,10 @@ script_fu_server_listen (gint timeout) - } - - FD_ZERO (&fds); -- FD_SET (server_sock, &fds); -+ for (sockno = 0; sockno < server_socks_used; sockno++) -+ { -+ FD_SET (server_socks[sockno], &fds); -+ } - g_hash_table_foreach (clients, script_fu_server_add_fd, &fds); - - /* Block until input arrives on one or more active sockets -@@ -307,15 +315,25 @@ script_fu_server_listen (gint timeout) - return; - } - -- /* Service the server socket if it has input pending. */ -- if (FD_ISSET (server_sock, &fds)) -+ /* Service the server sockets if any has input pending. */ -+ for (sockno = 0; sockno < server_socks_used; sockno++) - { -- struct sockaddr_in clientname; -+ struct sockaddr_storage client; -+ struct sockaddr_in *client_in; -+ struct sockaddr_in6 *client_in6; -+ gchar clientname[NI_MAXHOST]; - - /* Connection request on original socket. */ -- guint size = sizeof (clientname); -- gint new = accept (server_sock, -- (struct sockaddr *) &clientname, &size); -+ guint size = sizeof (client); -+ gint new; -+ guint portno; -+ -+ if (! FD_ISSET (server_socks[sockno], &fds)) -+ { -+ continue; -+ } -+ -+ new = accept (server_socks[sockno], (struct sockaddr *) &client, &size); - - if (new < 0) - { -@@ -324,13 +342,34 @@ script_fu_server_listen (gint timeout) - } - - /* Associate the client address with the socket */ -- g_hash_table_insert (clients, -- GINT_TO_POINTER (new), -- g_strdup (inet_ntoa (clientname.sin_addr))); -+ -+ /* If all else fails ... */ -+ strncpy (clientname, "(error during host address lookup)", NI_MAXHOST-1); -+ -+ /* Lookup address */ -+ (void) getnameinfo ((struct sockaddr *) &client, size, clientname, -+ sizeof (clientname), NULL, 0, NI_NUMERICHOST); -+ -+ g_hash_table_insert (clients, GINT_TO_POINTER (new), -+ g_strdup (clientname)); -+ -+ /* Determine port number */ -+ switch (client.ss_family) -+ { -+ case AF_INET: -+ client_in = (struct sockaddr_in *) &client; -+ portno = (guint) g_ntohs (client_in->sin_port); -+ break; -+ case AF_INET6: -+ client_in6 = (struct sockaddr_in6 *) &client; -+ portno = (guint) g_ntohs (client_in6->sin6_port); -+ break; -+ default: -+ portno = 0; -+ } - - server_log ("Server: connect from host %s, port %d.\n", -- inet_ntoa (clientname.sin_addr), -- (unsigned int) ntohs (clientname.sin_port)); -+ clientname, portno); - } - - /* Service the client sockets. */ -@@ -392,18 +431,46 @@ static void - server_start (gint port, - const gchar *logfile) - { -- const gchar *progress; -- -- /* First of all, create the socket and set it up to accept connections. */ -- /* This may fail if there's a server running on this port already. */ -- server_sock = make_socket (port); -+ struct addrinfo *ai, -+ *ai_curr; -+ struct addrinfo hints; -+ gint e, -+ sockno; -+ gchar *port_s; -+ -+ const gchar *progress; -+ -+ memset (&hints, 0, sizeof (hints)); -+ hints.ai_flags = AI_PASSIVE | AI_ADDRCONFIG; -+ hints.ai_socktype = SOCK_STREAM; -+ -+ port_s = g_strdup_printf ("%d", port); -+ e = getaddrinfo (NULL, port_s, &hints, &ai); -+ g_free (port_s); - -- if (listen (server_sock, 5) < 0) -+ if (e != 0) - { -- print_socket_api_error ("listen"); -+ g_printerr ("getaddrinfo: %s", gai_strerror (e)); - return; - } - -+ for (ai_curr = ai, sockno = 0; -+ ai_curr != NULL && sockno < server_socks_len; -+ ai_curr = ai_curr->ai_next, sockno++) -+ { -+ /* Create the socket and set it up to accept connections. */ -+ /* This may fail if there's a server running on this port already. */ -+ server_socks[sockno] = make_socket (ai_curr); -+ -+ if (listen (server_socks[sockno], 5) < 0) -+ { -+ print_socket_api_error ("listen"); -+ return; -+ } -+ } -+ -+ server_socks_used = sockno; -+ - /* Setup up the server log file */ - if (logfile && *logfile) - server_log_file = g_fopen (logfile, "a"); -@@ -592,11 +659,10 @@ read_from_client (gint filedes) - } - - static gint --make_socket (guint port) -+make_socket (const struct addrinfo *ai) - { -- struct sockaddr_in name; -- gint sock; -- gint v = 1; -+ gint sock; -+ gint v = 1; - - /* Win32 needs the winsock library initialized. */ - #ifdef G_OS_WIN32 -@@ -620,7 +686,7 @@ make_socket (guint port) - #endif - - /* Create the socket. */ -- sock = socket (PF_INET, SOCK_STREAM, 0); -+ sock = socket (ai->ai_family, ai->ai_socktype, ai->ai_protocol); - if (sock < 0) - { - print_socket_api_error ("socket"); -@@ -629,12 +695,20 @@ make_socket (guint port) - - setsockopt (sock, SOL_SOCKET, SO_REUSEADDR, &v, sizeof(v)); - -- /* Give the socket a name. */ -- name.sin_family = AF_INET; -- name.sin_port = htons (port); -- name.sin_addr.s_addr = htonl (INADDR_ANY); -+#ifdef IPV6_V6ONLY -+ /* Only listen on IPv6 addresses, otherwise bind() will fail. */ -+ if (ai->ai_family == AF_INET6) -+ { -+ v = 1; -+ if (setsockopt (sock, IPPROTO_IPV6, IPV6_V6ONLY, &v, sizeof(v)) < 0) -+ { -+ print_socket_api_error ("setsockopt"); -+ gimp_quit(); -+ } -+ } -+#endif - -- if (bind (sock, (struct sockaddr *) &name, sizeof (name)) < 0) -+ if (bind (sock, ai->ai_addr, ai->ai_addrlen) < 0) - { - print_socket_api_error ("bind"); - gimp_quit (); -@@ -672,7 +746,12 @@ script_fu_server_shutdown_fd (gpointer k - static void - server_quit (void) - { -- CLOSESOCKET (server_sock); -+ gint sockno; -+ -+ for (sockno = 0; sockno < server_socks_used; sockno++) -+ { -+ CLOSESOCKET (server_socks[sockno]); -+ } - - if (clients) - { diff --git a/gimp.spec b/gimp.spec index 354ff23..d72c89b 100644 --- a/gimp.spec +++ b/gimp.spec @@ -30,8 +30,8 @@ Summary: GNU Image Manipulation Program Name: gimp Epoch: 2 -Version: 2.6.9 -Release: 4%{?dist} +Version: 2.6.10 +Release: 1%{?dist} %define binver 2.6 %define gimp_lang_ver 20 %define interfacever 2.0 @@ -127,14 +127,12 @@ Patch1: gimp-2.6.7-jpeg-units.patch Patch2: gimp-2.6.6-minimize-dialogs.patch # backport: fix building with "gold" linker Patch3: gimp-2.6.8-gold.patch -# backport: GIMP crashes when clicking any scroll bar from combo boxes -Patch4: gimp-2.6.9-combo-popup.patch # https://bugzilla.redhat.com/show_bug.cgi?id=198367 # https://bugzilla.gnome.org/show_bug.cgi?id=623045 # make script-fu logging IPv6 aware -Patch5: gimp-2.6.9-script-fu-ipv6.patch +Patch4: gimp-2.6.10-script-fu-ipv6.patch # files changed by autoreconf after applying the above -Patch10: gimp-2.6.9-3-autoreconf.patch.bz2 +Patch10: gimp-2.6.10-1-autoreconf.patch.bz2 %description GIMP (GNU Image Manipulation Program) is a powerful image composition and @@ -217,8 +215,7 @@ EOF %patch1 -p1 -b .jpeg-units %patch2 -p1 -b .minimize-dialogs %patch3 -p1 -b .gold -%patch4 -p1 -b .combo-popup -%patch5 -p1 -b .script-fu-ipv6 +%patch4 -p1 -b .script-fu-ipv6 %patch10 -p1 -b .autoreconf %build @@ -481,6 +478,35 @@ fi %{_libdir}/gimp/%{interfacever}/plug-ins/help-browser %changelog +* Fri Jul 09 2010 Nils Philippsen - 2:2.6.10-1 +- version 2.6.10 + + Overview of Changes from GIMP 2.6.9 to GIMP 2.6.10 + ================================================== + + * Bugs fixed: + + 613328 - TGA files saved with incorrect header yOrigin data + 623290 - Save As... does not save Windows Bitmap as default in dialog + 621363 - CMYK decompose broken + 595170 - brush - color from gradient works wrong in greyscale + 613838 - Error in gimp-hue-saturation PDB call + 622608 - GIMP crashes when clicking any scroll bar from combo boxes + 565459 - newly opened images are put into the background + + * Updated translations: + + German (de) + Italian (it) + Romanian (ro) + Portuguese (pt) + +- remove obsolete combo-popup patch +- update script-fu-ipv6 patch + +* Mon Jul 05 2010 Nils Philippsen - 2:2.6.9-5 +- rebuild against libwebkitgtk (instead of libwebkit) + * Tue Jun 29 2010 Nils Philippsen - 2:2.6.9-4 - script-fu: make rest of server IPv6-aware (#198367) diff --git a/import.log b/import.log index 0f4915d..653b76e 100644 --- a/import.log +++ b/import.log @@ -1 +1,2 @@ gimp-2_6_9-1_fc14:F-13:gimp-2.6.9-1.fc14.src.rpm:1277370842 +gimp-2_6_10-1_fc14:F-13:gimp-2.6.10-1.fc14.src.rpm:1278678066 diff --git a/sources b/sources index 57cc4c0..faa8984 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e5d0cc6f3ce127e51d7f3d3124b16a99 gimp-2.6.9.tar.bz2 -c9f1878af298871e0b0088583cc4ce13 gimp-2.6.9-3-autoreconf.patch.bz2 +557dfb72df30bea361d7feff4c6f2e26 gimp-2.6.10-1-autoreconf.patch.bz2 +b92710ad9f1b52fec98554d765473819 gimp-2.6.10.tar.bz2