Accepting request 102529 from GNOME:Apps
Update to 2.6.12 (forwarded request 102347 from vuntz) OBS-URL: https://build.opensuse.org/request/show/102529 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gimp?expand=0&rev=74
This commit is contained in:
parent
67dbebd0df
commit
c89b1f9fcc
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:9b6d08d0803b3912ea596d1b77b9c21ee13778c23388a225c004b8c1587cb0a1
|
||||
size 16473561
|
3
gimp-2.6.12.tar.bz2
Normal file
3
gimp-2.6.12.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d553c9f1c07f59fa7b7ce9cc5f84ce59bf4e9dfb5b6ee4bd8718b74b947aec62
|
||||
size 16745411
|
@ -1,129 +0,0 @@
|
||||
From 7fb0300e1cfdb98a3bde54dbc73a0f3eda375162 Mon Sep 17 00:00:00 2001
|
||||
From: Simon Budig <simon@budig.de>
|
||||
Date: Tue, 11 Jan 2011 22:28:16 +0000
|
||||
Subject: fixes for some buffer overflow problems (see bug #639203)
|
||||
|
||||
---
|
||||
diff --git a/plug-ins/common/sphere-designer.c b/plug-ins/common/sphere-designer.c
|
||||
index 4e5b982..6dea871 100644
|
||||
--- a/plug-ins/common/sphere-designer.c
|
||||
+++ b/plug-ins/common/sphere-designer.c
|
||||
@@ -1993,6 +1993,7 @@ loadit (const gchar * fn)
|
||||
gchar endbuf[21 * (G_ASCII_DTOSTR_BUF_SIZE + 1)];
|
||||
gchar *end = endbuf;
|
||||
gchar line[1024];
|
||||
+ gchar fmt_str[16];
|
||||
gint i;
|
||||
texture *t;
|
||||
gint majtype, type;
|
||||
@@ -2017,6 +2018,8 @@ loadit (const gchar * fn)
|
||||
|
||||
s.com.numtexture = 0;
|
||||
|
||||
+ snprintf (fmt_str, sizeof (fmt_str), "%%d %%d %%%lds", sizeof (endbuf) - 1);
|
||||
+
|
||||
while (!feof (f))
|
||||
{
|
||||
|
||||
@@ -2027,7 +2030,7 @@ loadit (const gchar * fn)
|
||||
t = &s.com.texture[i];
|
||||
setdefaults (t);
|
||||
|
||||
- if (sscanf (line, "%d %d %s", &t->majtype, &t->type, end) != 3)
|
||||
+ if (sscanf (line, fmt_str, &t->majtype, &t->type, end) != 3)
|
||||
t->color1.x = g_ascii_strtod (end, &end);
|
||||
if (end && errno != ERANGE)
|
||||
t->color1.y = g_ascii_strtod (end, &end);
|
||||
diff --git a/plug-ins/gfig/gfig-style.c b/plug-ins/gfig/gfig-style.c
|
||||
index ee1c7b2..eae78f8 100644
|
||||
--- a/plug-ins/gfig/gfig-style.c
|
||||
+++ b/plug-ins/gfig/gfig-style.c
|
||||
@@ -164,6 +164,7 @@ gfig_read_parameter_gimp_rgb (gchar **text,
|
||||
gchar *ptr;
|
||||
gchar *tmpstr;
|
||||
gchar *endptr;
|
||||
+ gchar fmt_str[32];
|
||||
gchar colorstr_r[G_ASCII_DTOSTR_BUF_SIZE];
|
||||
gchar colorstr_g[G_ASCII_DTOSTR_BUF_SIZE];
|
||||
gchar colorstr_b[G_ASCII_DTOSTR_BUF_SIZE];
|
||||
@@ -171,6 +172,10 @@ gfig_read_parameter_gimp_rgb (gchar **text,
|
||||
|
||||
style_entry->r = style_entry->g = style_entry->b = style_entry->a = 0.;
|
||||
|
||||
+ snprintf (fmt_str, sizeof (fmt_str), "%%%lds %%%lds %%%lds %%%lds",
|
||||
+ sizeof (colorstr_r) - 1, sizeof (colorstr_g) - 1,
|
||||
+ sizeof (colorstr_b) - 1, sizeof (colorstr_a) - 1);
|
||||
+
|
||||
while (n < nitems)
|
||||
{
|
||||
ptr = strchr (text[n], ':');
|
||||
@@ -180,7 +185,8 @@ gfig_read_parameter_gimp_rgb (gchar **text,
|
||||
ptr++;
|
||||
if (!strcmp (tmpstr, name))
|
||||
{
|
||||
- sscanf (ptr, "%s %s %s %s", colorstr_r, colorstr_g, colorstr_b, colorstr_a);
|
||||
+ sscanf (ptr, fmt_str,
|
||||
+ colorstr_r, colorstr_g, colorstr_b, colorstr_a);
|
||||
style_entry->r = g_ascii_strtod (colorstr_r, &endptr);
|
||||
style_entry->g = g_ascii_strtod (colorstr_g, &endptr);
|
||||
style_entry->b = g_ascii_strtod (colorstr_b, &endptr);
|
||||
diff --git a/plug-ins/lighting/lighting-ui.c b/plug-ins/lighting/lighting-ui.c
|
||||
index 99fb348..126f6e2 100644
|
||||
--- a/plug-ins/lighting/lighting-ui.c
|
||||
+++ b/plug-ins/lighting/lighting-ui.c
|
||||
@@ -1345,6 +1345,7 @@ load_preset_response (GtkFileChooser *chooser,
|
||||
gchar buffer3[G_ASCII_DTOSTR_BUF_SIZE];
|
||||
gchar type_label[21];
|
||||
gchar *endptr;
|
||||
+ gchar fmt_str[32];
|
||||
|
||||
if (response_id == GTK_RESPONSE_OK)
|
||||
{
|
||||
@@ -1384,23 +1385,41 @@ load_preset_response (GtkFileChooser *chooser,
|
||||
return;
|
||||
}
|
||||
|
||||
- fscanf (fp, " Position: %s %s %s", buffer1, buffer2, buffer3);
|
||||
+ snprintf (fmt_str, sizeof (fmt_str),
|
||||
+ " Position: %%%lds %%%lds %%%lds",
|
||||
+ sizeof (buffer1) - 1,
|
||||
+ sizeof (buffer2) - 1,
|
||||
+ sizeof (buffer3) - 1);
|
||||
+ fscanf (fp, fmt_str, buffer1, buffer2, buffer3);
|
||||
source->position.x = g_ascii_strtod (buffer1, &endptr);
|
||||
source->position.y = g_ascii_strtod (buffer2, &endptr);
|
||||
source->position.z = g_ascii_strtod (buffer3, &endptr);
|
||||
|
||||
- fscanf (fp, " Direction: %s %s %s", buffer1, buffer2, buffer3);
|
||||
+ snprintf (fmt_str, sizeof (fmt_str),
|
||||
+ " Direction: %%%lds %%%lds %%%lds",
|
||||
+ sizeof (buffer1) - 1,
|
||||
+ sizeof (buffer2) - 1,
|
||||
+ sizeof (buffer3) - 1);
|
||||
+ fscanf (fp, fmt_str, buffer1, buffer2, buffer3);
|
||||
source->direction.x = g_ascii_strtod (buffer1, &endptr);
|
||||
source->direction.y = g_ascii_strtod (buffer2, &endptr);
|
||||
source->direction.z = g_ascii_strtod (buffer3, &endptr);
|
||||
|
||||
- fscanf (fp, " Color: %s %s %s", buffer1, buffer2, buffer3);
|
||||
+ snprintf (fmt_str, sizeof (fmt_str),
|
||||
+ " Color: %%%lds %%%lds %%%lds",
|
||||
+ sizeof (buffer1) - 1,
|
||||
+ sizeof (buffer2) - 1,
|
||||
+ sizeof (buffer3) - 1);
|
||||
+ fscanf (fp, fmt_str, buffer1, buffer2, buffer3);
|
||||
source->color.r = g_ascii_strtod (buffer1, &endptr);
|
||||
source->color.g = g_ascii_strtod (buffer2, &endptr);
|
||||
source->color.b = g_ascii_strtod (buffer3, &endptr);
|
||||
source->color.a = 1.0;
|
||||
|
||||
- fscanf (fp, " Intensity: %s", buffer1);
|
||||
+ snprintf (fmt_str, sizeof (fmt_str),
|
||||
+ " Intensity: %%%lds",
|
||||
+ sizeof (buffer1) - 1);
|
||||
+ fscanf (fp, fmt_str, buffer1);
|
||||
source->intensity = g_ascii_strtod (buffer1, &endptr);
|
||||
|
||||
}
|
||||
--
|
||||
cgit v0.8.3.1
|
@ -1,23 +0,0 @@
|
||||
From 48ec15890e1751dede061f6d1f469b6508c13439 Mon Sep 17 00:00:00 2001
|
||||
From: Simon Budig <simon@budig.de>
|
||||
Date: Mon, 14 Feb 2011 20:46:31 +0000
|
||||
Subject: file-psp: fix for bogus input data. Fixes bug #639203
|
||||
|
||||
---
|
||||
diff --git a/plug-ins/common/file-psp.c b/plug-ins/common/file-psp.c
|
||||
index ef39d5b..04897d5 100644
|
||||
--- a/plug-ins/common/file-psp.c
|
||||
+++ b/plug-ins/common/file-psp.c
|
||||
@@ -1197,6 +1197,10 @@ read_channel_data (FILE *f,
|
||||
}
|
||||
else
|
||||
fread (buf, runcount, 1, f);
|
||||
+
|
||||
+ /* prevent buffer overflow for bogus data */
|
||||
+ runcount = MIN (runcount, endq - q);
|
||||
+
|
||||
if (bytespp == 1)
|
||||
{
|
||||
memmove (q, buf, runcount);
|
||||
--
|
||||
cgit v0.8.3.1
|
@ -1,109 +0,0 @@
|
||||
From 0eae221c7c6eb84591d718587a17ea90c8852d5b Mon Sep 17 00:00:00 2001
|
||||
From: Nils Philippsen <nils@redhat.com>
|
||||
Date: Thu, 04 Aug 2011 10:47:44 +0000
|
||||
Subject: file-gif-load: ensure return value of LZWReadByte() is <= 255
|
||||
|
||||
(cherry picked from commit b1a3de761362db982c0ddfaff60ab4a3c4267f32)
|
||||
---
|
||||
diff --git a/plug-ins/common/file-gif-load.c b/plug-ins/common/file-gif-load.c
|
||||
index 9a0720b..a4d98fc 100644
|
||||
--- a/plug-ins/common/file-gif-load.c
|
||||
+++ b/plug-ins/common/file-gif-load.c
|
||||
@@ -743,11 +743,11 @@ LZWReadByte (FILE *fd,
|
||||
}
|
||||
while (firstcode == clear_code);
|
||||
|
||||
- return firstcode;
|
||||
+ return firstcode & 255;
|
||||
}
|
||||
|
||||
if (sp > stack)
|
||||
- return *--sp;
|
||||
+ return (*--sp) & 255;
|
||||
|
||||
while ((code = GetCode (fd, code_size, FALSE)) >= 0)
|
||||
{
|
||||
@@ -770,7 +770,7 @@ LZWReadByte (FILE *fd,
|
||||
sp = stack;
|
||||
firstcode = oldcode = GetCode (fd, code_size, FALSE);
|
||||
|
||||
- return firstcode;
|
||||
+ return firstcode & 255;
|
||||
}
|
||||
else if (code == end_code)
|
||||
{
|
||||
@@ -826,10 +826,10 @@ LZWReadByte (FILE *fd,
|
||||
oldcode = incode;
|
||||
|
||||
if (sp > stack)
|
||||
- return *--sp;
|
||||
+ return (*--sp) & 255;
|
||||
}
|
||||
|
||||
- return code;
|
||||
+ return code & 255;
|
||||
}
|
||||
|
||||
static gint32
|
||||
--
|
||||
cgit v0.9.0.2
|
||||
From 62718f821b7c79a6860b8b25f0a21a91daa6e22d Mon Sep 17 00:00:00 2001
|
||||
From: Nils Philippsen <nils@redhat.com>
|
||||
Date: Thu, 04 Aug 2011 10:51:42 +0000
|
||||
Subject: file-gif-load: fix heap corruption and buffer overflow (CVE-2011-2896)
|
||||
|
||||
(cherry picked from commit 376ad788c1a1c31d40f18494889c383f6909ebfc)
|
||||
---
|
||||
diff --git a/plug-ins/common/file-gif-load.c b/plug-ins/common/file-gif-load.c
|
||||
index a4d98fc..8460ec0 100644
|
||||
--- a/plug-ins/common/file-gif-load.c
|
||||
+++ b/plug-ins/common/file-gif-load.c
|
||||
@@ -697,7 +697,8 @@ LZWReadByte (FILE *fd,
|
||||
static gint firstcode, oldcode;
|
||||
static gint clear_code, end_code;
|
||||
static gint table[2][(1 << MAX_LZW_BITS)];
|
||||
- static gint stack[(1 << (MAX_LZW_BITS)) * 2], *sp;
|
||||
+#define STACK_SIZE ((1 << (MAX_LZW_BITS)) * 2)
|
||||
+ static gint stack[STACK_SIZE], *sp;
|
||||
gint i;
|
||||
|
||||
if (just_reset_LZW)
|
||||
@@ -772,7 +773,7 @@ LZWReadByte (FILE *fd,
|
||||
|
||||
return firstcode & 255;
|
||||
}
|
||||
- else if (code == end_code)
|
||||
+ else if (code == end_code || code > max_code)
|
||||
{
|
||||
gint count;
|
||||
guchar buf[260];
|
||||
@@ -791,13 +792,14 @@ LZWReadByte (FILE *fd,
|
||||
|
||||
incode = code;
|
||||
|
||||
- if (code >= max_code)
|
||||
+ if (code == max_code)
|
||||
{
|
||||
- *sp++ = firstcode;
|
||||
+ if (sp < &(stack[STACK_SIZE]))
|
||||
+ *sp++ = firstcode;
|
||||
code = oldcode;
|
||||
}
|
||||
|
||||
- while (code >= clear_code)
|
||||
+ while (code >= clear_code && sp < &(stack[STACK_SIZE]))
|
||||
{
|
||||
*sp++ = table[1][code];
|
||||
if (code == table[0][code])
|
||||
@@ -808,7 +810,8 @@ LZWReadByte (FILE *fd,
|
||||
code = table[0][code];
|
||||
}
|
||||
|
||||
- *sp++ = firstcode = table[1][code];
|
||||
+ if (sp < &(stack[STACK_SIZE]))
|
||||
+ *sp++ = firstcode = table[1][code];
|
||||
|
||||
if ((code = max_code) < (1 << MAX_LZW_BITS))
|
||||
{
|
||||
--
|
||||
cgit v0.9.0.2
|
@ -1,39 +0,0 @@
|
||||
From 582cb0f14eb9f145bd2a2f5c9fda12309ae0229f Mon Sep 17 00:00:00 2001
|
||||
From: Manish Singh <yosh@gimp.org>
|
||||
Date: Sun, 24 May 2009 17:42:39 +0000
|
||||
Subject: Explicitly specify library dependencies at link time, so we can use gold.
|
||||
|
||||
---
|
||||
(limited to 'libgimpthumb/Makefile.am')
|
||||
|
||||
diff --git a/libgimpthumb/Makefile.am b/libgimpthumb/Makefile.am
|
||||
index a78a83a..98acd24 100644
|
||||
--- a/libgimpthumb/Makefile.am
|
||||
+++ b/libgimpthumb/Makefile.am
|
||||
@@ -86,7 +86,10 @@ noinst_PROGRAMS = gimp-thumbnail-list
|
||||
|
||||
gimp_thumbnail_list_SOURCES = gimp-thumbnail-list.c
|
||||
|
||||
-gimp_thumbnail_list_LDADD = libgimpthumb-$(GIMP_API_VERSION).la
|
||||
+gimp_thumbnail_list_LDADD = \
|
||||
+ libgimpthumb-$(GIMP_API_VERSION).la \
|
||||
+ $(GDK_PIXBUF_LIBS) \
|
||||
+ $(GLIB_LIBS)
|
||||
|
||||
|
||||
install-data-local: install-ms-lib install-libtool-import-lib
|
||||
--
|
||||
cgit v0.9.0.2
|
||||
Index: gimp-2.6.11/plug-ins/script-fu/Makefile.am
|
||||
===================================================================
|
||||
--- gimp-2.6.11.orig/plug-ins/script-fu/Makefile.am
|
||||
+++ gimp-2.6.11/plug-ins/script-fu/Makefile.am
|
||||
@@ -8,7 +8,7 @@ libgimpbase = $(top_builddir)/libgimpbas
|
||||
libgimpconfig = $(top_builddir)/libgimpconfig/libgimpconfig-$(GIMP_API_VERSION).la
|
||||
libgimpmath = $(top_builddir)/libgimpmath/libgimpmath-$(GIMP_API_VERSION).la
|
||||
|
||||
-libtinyscheme=tinyscheme/libtinyscheme.a
|
||||
+libtinyscheme=tinyscheme/libtinyscheme.a -lm
|
||||
libftx=ftx/libftx.a
|
||||
|
||||
if OS_WIN32
|
@ -1,476 +0,0 @@
|
||||
From 69f69eed816b89be9a01a48a1f0643d1fd496118 Mon Sep 17 00:00:00 2001
|
||||
From: Nils Philippsen <nils@redhat.com>
|
||||
Date: Fri, 6 May 2011 11:58:44 +0200
|
||||
Subject: [PATCH] patch: poppler-0.17
|
||||
|
||||
Squashed commit of the following:
|
||||
|
||||
commit 529d940222dfc352d41fbf72de29134421aa4002
|
||||
Author: Nils Philippsen <nils@redhat.com>
|
||||
Date: Fri May 6 11:50:30 2011 +0200
|
||||
|
||||
use code based on pixbufs instead of cairo surfaces
|
||||
|
||||
this is done to avoid adding to libgimp, thanks to Mukund Sivaraman for
|
||||
hints how to do this
|
||||
|
||||
commit f8671d8767d4cdab830dc06310e96c63a88ec0fd
|
||||
Author: Mukund Sivaraman <muks@banu.com>
|
||||
Date: Thu Apr 21 13:57:13 2011 +0530
|
||||
|
||||
file-pdf-load: Update attribution, removing bogus copyright
|
||||
(cherry picked from commit e999122e0b20b6ccd6bde3ce039bb64068fc0019)
|
||||
|
||||
commit 89a78f2590d298dac2f42e6d9a3016fc5d672c70
|
||||
Author: Nils Philippsen <nils@redhat.com>
|
||||
Date: Thu Apr 21 13:52:18 2011 +0200
|
||||
|
||||
file-pdf-load: Use better API + cleanups
|
||||
|
||||
* fixes issues with poppler 0.17 completely
|
||||
* uses new libgimp API to pass surfaces instead of pixbufs
|
||||
* uses GTK+ 3 API to convert surfaces to pixbufs where available
|
||||
(backported from commit 7bdadd80ba479d6ff904e276d805e16f6b940ee2)
|
||||
|
||||
commit 4e92302c4a14a961f112587a0ad86696c88da2f8
|
||||
Author: Nils Philippsen <nils@redhat.com>
|
||||
Date: Thu Apr 21 13:38:08 2011 +0200
|
||||
|
||||
file-pdf-load: Don't use deprecated API (bug #646947)
|
||||
|
||||
(cherry picked from commit 9b3e1c91fd2eac69da6947ec9c7fbf10096ba237)
|
||||
|
||||
Conflicts:
|
||||
|
||||
plug-ins/common/file-pdf.c
|
||||
---
|
||||
plug-ins/common/file-pdf.c | 323 ++++++++++++++++++++++++++++++++++++++------
|
||||
1 files changed, 283 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/plug-ins/common/file-pdf.c b/plug-ins/common/file-pdf.c
|
||||
index a43b459..43c2b7d 100644
|
||||
--- a/plug-ins/common/file-pdf.c
|
||||
+++ b/plug-ins/common/file-pdf.c
|
||||
@@ -4,6 +4,9 @@
|
||||
*
|
||||
* Copyright (C) 2005 Nathan Summers
|
||||
*
|
||||
+ * Some code in render_page_to_surface() borrowed from
|
||||
+ * poppler.git/glib/poppler-page.cc.
|
||||
+ *
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
@@ -80,16 +83,20 @@ static gboolean load_dialog (PopplerDocument *doc,
|
||||
static PopplerDocument * open_document (const gchar *filename,
|
||||
GError **error);
|
||||
|
||||
-static GdkPixbuf * get_thumbnail (PopplerDocument *doc,
|
||||
+static cairo_surface_t * get_thumb_surface (PopplerDocument *doc,
|
||||
+ gint page,
|
||||
+ gint preferred_size);
|
||||
+
|
||||
+static GdkPixbuf * get_thumb_pixbuf (PopplerDocument *doc,
|
||||
gint page,
|
||||
gint preferred_size);
|
||||
|
||||
static gint32 layer_from_pixbuf (gint32 image,
|
||||
- const gchar *layer_name,
|
||||
- gint position,
|
||||
- GdkPixbuf *buf,
|
||||
- gdouble progress_start,
|
||||
- gdouble progress_scale);
|
||||
+ const gchar *layer_name,
|
||||
+ gint position,
|
||||
+ GdkPixbuf *pixbuf,
|
||||
+ gdouble progress_start,
|
||||
+ gdouble progress_scale);
|
||||
|
||||
/**
|
||||
** the following was formerly part of
|
||||
@@ -433,11 +440,12 @@ run (const gchar *name,
|
||||
}
|
||||
else
|
||||
{
|
||||
- gdouble width = 0;
|
||||
- gdouble height = 0;
|
||||
- gdouble scale;
|
||||
- gint32 image = -1;
|
||||
- GdkPixbuf *pixbuf = NULL;
|
||||
+ gdouble width = 0;
|
||||
+ gdouble height = 0;
|
||||
+ gdouble scale;
|
||||
+ gint32 image = -1;
|
||||
+ gint num_pages = 0;
|
||||
+ GdkPixbuf *pixbuf = NULL;
|
||||
|
||||
/* Possibly retrieve last settings */
|
||||
gimp_get_data (LOAD_PROC, &loadvals);
|
||||
@@ -455,7 +463,10 @@ run (const gchar *name,
|
||||
g_object_unref (page);
|
||||
}
|
||||
|
||||
- pixbuf = get_thumbnail (doc, 0, param[1].data.d_int32);
|
||||
+ num_pages = poppler_document_get_n_pages (doc);
|
||||
+
|
||||
+ pixbuf = get_thumb_pixbuf (doc, 0, param[1].data.d_int32);
|
||||
+
|
||||
g_object_unref (doc);
|
||||
}
|
||||
|
||||
@@ -548,6 +559,187 @@ open_document (const gchar *filename,
|
||||
return doc;
|
||||
}
|
||||
|
||||
+/* FIXME: Remove this someday when we depend fully on GTK+ >= 3 */
|
||||
+
|
||||
+#if (!GTK_CHECK_VERSION (3, 0, 0))
|
||||
+
|
||||
+static cairo_format_t
|
||||
+gdk_cairo_format_for_content (cairo_content_t content)
|
||||
+{
|
||||
+ switch (content)
|
||||
+ {
|
||||
+ case CAIRO_CONTENT_COLOR:
|
||||
+ return CAIRO_FORMAT_RGB24;
|
||||
+ case CAIRO_CONTENT_ALPHA:
|
||||
+ return CAIRO_FORMAT_A8;
|
||||
+ case CAIRO_CONTENT_COLOR_ALPHA:
|
||||
+ default:
|
||||
+ return CAIRO_FORMAT_ARGB32;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static cairo_surface_t *
|
||||
+gdk_cairo_surface_coerce_to_image (cairo_surface_t *surface,
|
||||
+ cairo_content_t content,
|
||||
+ int src_x,
|
||||
+ int src_y,
|
||||
+ int width,
|
||||
+ int height)
|
||||
+{
|
||||
+ cairo_surface_t *copy;
|
||||
+ cairo_t *cr;
|
||||
+
|
||||
+ copy = cairo_image_surface_create (gdk_cairo_format_for_content (content),
|
||||
+ width,
|
||||
+ height);
|
||||
+
|
||||
+ cr = cairo_create (copy);
|
||||
+ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
|
||||
+ cairo_set_source_surface (cr, surface, -src_x, -src_y);
|
||||
+ cairo_paint (cr);
|
||||
+ cairo_destroy (cr);
|
||||
+
|
||||
+ return copy;
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+convert_alpha (guchar *dest_data,
|
||||
+ int dest_stride,
|
||||
+ guchar *src_data,
|
||||
+ int src_stride,
|
||||
+ int src_x,
|
||||
+ int src_y,
|
||||
+ int width,
|
||||
+ int height)
|
||||
+{
|
||||
+ int x, y;
|
||||
+
|
||||
+ src_data += src_stride * src_y + src_x * 4;
|
||||
+
|
||||
+ for (y = 0; y < height; y++) {
|
||||
+ guint32 *src = (guint32 *) src_data;
|
||||
+
|
||||
+ for (x = 0; x < width; x++) {
|
||||
+ guint alpha = src[x] >> 24;
|
||||
+
|
||||
+ if (alpha == 0)
|
||||
+ {
|
||||
+ dest_data[x * 4 + 0] = 0;
|
||||
+ dest_data[x * 4 + 1] = 0;
|
||||
+ dest_data[x * 4 + 2] = 0;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ dest_data[x * 4 + 0] = (((src[x] & 0xff0000) >> 16) * 255 + alpha / 2) / alpha;
|
||||
+ dest_data[x * 4 + 1] = (((src[x] & 0x00ff00) >> 8) * 255 + alpha / 2) / alpha;
|
||||
+ dest_data[x * 4 + 2] = (((src[x] & 0x0000ff) >> 0) * 255 + alpha / 2) / alpha;
|
||||
+ }
|
||||
+ dest_data[x * 4 + 3] = alpha;
|
||||
+ }
|
||||
+
|
||||
+ src_data += src_stride;
|
||||
+ dest_data += dest_stride;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+convert_no_alpha (guchar *dest_data,
|
||||
+ int dest_stride,
|
||||
+ guchar *src_data,
|
||||
+ int src_stride,
|
||||
+ int src_x,
|
||||
+ int src_y,
|
||||
+ int width,
|
||||
+ int height)
|
||||
+{
|
||||
+ int x, y;
|
||||
+
|
||||
+ src_data += src_stride * src_y + src_x * 4;
|
||||
+
|
||||
+ for (y = 0; y < height; y++) {
|
||||
+ guint32 *src = (guint32 *) src_data;
|
||||
+
|
||||
+ for (x = 0; x < width; x++) {
|
||||
+ dest_data[x * 3 + 0] = src[x] >> 16;
|
||||
+ dest_data[x * 3 + 1] = src[x] >> 8;
|
||||
+ dest_data[x * 3 + 2] = src[x];
|
||||
+ }
|
||||
+
|
||||
+ src_data += src_stride;
|
||||
+ dest_data += dest_stride;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+/**
|
||||
+ * gdk_pixbuf_get_from_surface:
|
||||
+ * @surface: surface to copy from
|
||||
+ * @src_x: Source X coordinate within @surface
|
||||
+ * @src_y: Source Y coordinate within @surface
|
||||
+ * @width: Width in pixels of region to get
|
||||
+ * @height: Height in pixels of region to get
|
||||
+ *
|
||||
+ * Transfers image data from a #cairo_surface_t and converts it to an RGB(A)
|
||||
+ * representation inside a #GdkPixbuf. This allows you to efficiently read
|
||||
+ * individual pixels from cairo surfaces. For #GdkWindows, use
|
||||
+ * gdk_pixbuf_get_from_window() instead.
|
||||
+ *
|
||||
+ * This function will create an RGB pixbuf with 8 bits per channel.
|
||||
+ * The pixbuf will contain an alpha channel if the @surface contains one.
|
||||
+ *
|
||||
+ * Return value: (transfer full): A newly-created pixbuf with a reference
|
||||
+ * count of 1, or %NULL on error
|
||||
+ */
|
||||
+static GdkPixbuf *
|
||||
+gdk_pixbuf_get_from_surface (cairo_surface_t *surface,
|
||||
+ gint src_x,
|
||||
+ gint src_y,
|
||||
+ gint width,
|
||||
+ gint height)
|
||||
+{
|
||||
+ cairo_content_t content;
|
||||
+ GdkPixbuf *dest;
|
||||
+
|
||||
+ /* General sanity checks */
|
||||
+ g_return_val_if_fail (surface != NULL, NULL);
|
||||
+ g_return_val_if_fail (width > 0 && height > 0, NULL);
|
||||
+
|
||||
+ content = cairo_surface_get_content (surface) | CAIRO_CONTENT_COLOR;
|
||||
+ dest = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
|
||||
+ !!(content & CAIRO_CONTENT_ALPHA),
|
||||
+ 8,
|
||||
+ width, height);
|
||||
+
|
||||
+ surface = gdk_cairo_surface_coerce_to_image (surface, content,
|
||||
+ src_x, src_y,
|
||||
+ width, height);
|
||||
+ cairo_surface_flush (surface);
|
||||
+ if (cairo_surface_status (surface) || dest == NULL)
|
||||
+ {
|
||||
+ cairo_surface_destroy (surface);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ if (gdk_pixbuf_get_has_alpha (dest))
|
||||
+ convert_alpha (gdk_pixbuf_get_pixels (dest),
|
||||
+ gdk_pixbuf_get_rowstride (dest),
|
||||
+ cairo_image_surface_get_data (surface),
|
||||
+ cairo_image_surface_get_stride (surface),
|
||||
+ 0, 0,
|
||||
+ width, height);
|
||||
+ else
|
||||
+ convert_no_alpha (gdk_pixbuf_get_pixels (dest),
|
||||
+ gdk_pixbuf_get_rowstride (dest),
|
||||
+ cairo_image_surface_get_data (surface),
|
||||
+ cairo_image_surface_get_stride (surface),
|
||||
+ 0, 0,
|
||||
+ width, height);
|
||||
+
|
||||
+ cairo_surface_destroy (surface);
|
||||
+ return dest;
|
||||
+}
|
||||
+
|
||||
+#endif
|
||||
+
|
||||
static gint32
|
||||
layer_from_pixbuf (gint32 image,
|
||||
const gchar *layer_name,
|
||||
@@ -566,6 +758,54 @@ layer_from_pixbuf (gint32 image,
|
||||
return layer;
|
||||
}
|
||||
|
||||
+static cairo_surface_t *
|
||||
+render_page_to_surface (PopplerPage *page,
|
||||
+ int width,
|
||||
+ int height,
|
||||
+ double scale)
|
||||
+{
|
||||
+ cairo_surface_t *surface;
|
||||
+ cairo_t *cr;
|
||||
+
|
||||
+ surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width, height);
|
||||
+ cr = cairo_create (surface);
|
||||
+
|
||||
+ cairo_save (cr);
|
||||
+ cairo_translate (cr, 0.0, 0.0);
|
||||
+
|
||||
+ if (scale != 1.0)
|
||||
+ cairo_scale (cr, scale, scale);
|
||||
+
|
||||
+ poppler_page_render (page, cr);
|
||||
+ cairo_restore (cr);
|
||||
+
|
||||
+ cairo_set_operator (cr, CAIRO_OPERATOR_DEST_OVER);
|
||||
+ cairo_set_source_rgb (cr, 1.0, 1.0, 1.0);
|
||||
+ cairo_paint (cr);
|
||||
+
|
||||
+ cairo_destroy (cr);
|
||||
+
|
||||
+ return surface;
|
||||
+}
|
||||
+
|
||||
+static GdkPixbuf *
|
||||
+render_page_to_pixbuf (PopplerPage *page,
|
||||
+ int width,
|
||||
+ int height,
|
||||
+ double scale)
|
||||
+{
|
||||
+ GdkPixbuf *pixbuf;
|
||||
+ cairo_surface_t *surface;
|
||||
+
|
||||
+ surface = render_page_to_surface (page, width, height, scale);
|
||||
+ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0,
|
||||
+ cairo_image_surface_get_width (surface),
|
||||
+ cairo_image_surface_get_height (surface));
|
||||
+ cairo_surface_destroy (surface);
|
||||
+
|
||||
+ return pixbuf;
|
||||
+}
|
||||
+
|
||||
static gint32
|
||||
load_image (PopplerDocument *doc,
|
||||
const gchar *filename,
|
||||
@@ -597,7 +837,7 @@ load_image (PopplerDocument *doc,
|
||||
gdouble page_width;
|
||||
gdouble page_height;
|
||||
|
||||
- GdkPixbuf *buf;
|
||||
+ GdkPixbuf *pixbuf;
|
||||
gint width;
|
||||
gint height;
|
||||
|
||||
@@ -627,15 +867,13 @@ load_image (PopplerDocument *doc,
|
||||
gimp_image_set_resolution (image_ID, resolution, resolution);
|
||||
}
|
||||
|
||||
- buf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, width, height);
|
||||
-
|
||||
- poppler_page_render_to_pixbuf (page, 0, 0, width, height, scale, 0, buf);
|
||||
+ pixbuf = render_page_to_pixbuf (page, width, height, scale);
|
||||
|
||||
- layer_from_pixbuf (image_ID, page_label, i, buf,
|
||||
+ layer_from_pixbuf (image_ID, page_label, i, pixbuf,
|
||||
doc_progress, 1.0 / pages->n_pages);
|
||||
|
||||
g_free (page_label);
|
||||
- g_object_unref (buf);
|
||||
+ g_object_unref(pixbuf);
|
||||
|
||||
doc_progress = (double) (i + 1) / pages->n_pages;
|
||||
gimp_progress_update (doc_progress);
|
||||
@@ -676,30 +914,22 @@ load_image (PopplerDocument *doc,
|
||||
return image_ID;
|
||||
}
|
||||
|
||||
-static GdkPixbuf *
|
||||
-get_thumbnail (PopplerDocument *doc,
|
||||
- gint page_num,
|
||||
- gint preferred_size)
|
||||
+static cairo_surface_t *
|
||||
+get_thumb_surface (PopplerDocument *doc,
|
||||
+ gint page_num,
|
||||
+ gint preferred_size)
|
||||
{
|
||||
PopplerPage *page;
|
||||
- GdkPixbuf *pixbuf;
|
||||
+ cairo_surface_t *surface;
|
||||
|
||||
page = poppler_document_get_page (doc, page_num);
|
||||
|
||||
if (! page)
|
||||
return NULL;
|
||||
|
||||
- /* XXX: Remove conditional when we depend on poppler 0.8.0, but also
|
||||
- * add configure check to make sure POPPLER_WITH_GDK is enabled!
|
||||
- */
|
||||
-#ifdef POPPLER_WITH_GDK
|
||||
- pixbuf = poppler_page_get_thumbnail_pixbuf (page);
|
||||
-#else
|
||||
- pixbuf = poppler_page_get_thumbnail (page);
|
||||
-#endif
|
||||
-
|
||||
+ surface = poppler_page_get_thumbnail (page);
|
||||
|
||||
- if (! pixbuf)
|
||||
+ if (! surface)
|
||||
{
|
||||
gdouble width;
|
||||
gdouble height;
|
||||
@@ -712,15 +942,28 @@ get_thumbnail (PopplerDocument *doc,
|
||||
width *= scale;
|
||||
height *= scale;
|
||||
|
||||
- pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8,
|
||||
- width, height);
|
||||
-
|
||||
- poppler_page_render_to_pixbuf (page,
|
||||
- 0, 0, width, height, scale, 0, pixbuf);
|
||||
+ surface = render_page_to_surface (page, width, height, scale);
|
||||
}
|
||||
|
||||
g_object_unref (page);
|
||||
|
||||
+ return surface;
|
||||
+}
|
||||
+
|
||||
+static GdkPixbuf *
|
||||
+get_thumb_pixbuf (PopplerDocument *doc,
|
||||
+ gint page_num,
|
||||
+ gint preferred_size)
|
||||
+{
|
||||
+ cairo_surface_t *surface;
|
||||
+ GdkPixbuf *pixbuf;
|
||||
+
|
||||
+ surface = get_thumb_surface (doc, page_num, preferred_size);
|
||||
+ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0,
|
||||
+ cairo_image_surface_get_width (surface),
|
||||
+ cairo_image_surface_get_height (surface));
|
||||
+ cairo_surface_destroy (surface);
|
||||
+
|
||||
return pixbuf;
|
||||
}
|
||||
|
||||
@@ -769,8 +1012,8 @@ thumbnail_thread (gpointer data)
|
||||
idle_data->page_no = i;
|
||||
|
||||
/* FIXME get preferred size from somewhere? */
|
||||
- idle_data->pixbuf = get_thumbnail (thread_data->document, i,
|
||||
- THUMBNAIL_SIZE);
|
||||
+ idle_data->pixbuf = get_thumb_pixbuf (thread_data->document, i,
|
||||
+ THUMBNAIL_SIZE);
|
||||
|
||||
g_idle_add (idle_set_thumbnail, idle_data);
|
||||
|
||||
--
|
||||
1.7.5
|
@ -1,24 +0,0 @@
|
||||
From 16d77f975b2c398a515f91e34ef868dc3bb49228 Mon Sep 17 00:00:00 2001
|
||||
From: Nils Philippsen <nils@redhat.com>
|
||||
Date: Wed, 02 Feb 2011 16:11:28 +0000
|
||||
Subject: Bug 641259 - [abrt] gimp-2:2.6.11-1.fc14: py-slice.py:172:slice:TypeError: integer argument expected, got float
|
||||
|
||||
py-slice: cast cellspacing to int in pyslice() to avoid tracebacks
|
||||
(cherry picked from commit 0af966b63fcc55b36380d6538dfb30000f71fef9)
|
||||
---
|
||||
diff --git a/plug-ins/pygimp/plug-ins/py-slice.py b/plug-ins/pygimp/plug-ins/py-slice.py
|
||||
index 40743f3..ac35f23 100755
|
||||
--- a/plug-ins/pygimp/plug-ins/py-slice.py
|
||||
+++ b/plug-ins/pygimp/plug-ins/py-slice.py
|
||||
@@ -36,6 +36,9 @@ gettext.install("gimp20-python", gimp.locale_directory, unicode=True)
|
||||
def pyslice(image, drawable, save_path, html_filename,
|
||||
image_basename, image_extension, separate,
|
||||
image_path, cellspacing, animate, skip_caps):
|
||||
+
|
||||
+ cellspacing = int (cellspacing)
|
||||
+
|
||||
if animate:
|
||||
count = 0
|
||||
drw = []
|
||||
--
|
||||
cgit v0.9.0.2
|
17
gimp.changes
17
gimp.changes
@ -1,3 +1,20 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 1 09:09:46 UTC 2012 - vuntz@opensuse.org
|
||||
|
||||
- Update to version 2.6.12:
|
||||
+ Bugs fixed: bgo#623045, bgo#627328, bgo#631728, bgo#631885,
|
||||
bgo#639203, bgo#640219, bgo#640612, bgo#641259, bgo#646947,
|
||||
bgo#652280, bgo#660305.
|
||||
+ Updated translations.
|
||||
- Drop gimp-CVE-2010-4540-and-more.patch: fixed upstream.
|
||||
- Drop gimp-CVE-2010-4543.patch: fixed upstream.
|
||||
- Drop gimp-fix-linking.patch: fixed upstream.
|
||||
- Drop gimp-CVE-2011-2896.patch: fixed upstream.
|
||||
- Drop gimp-pyslice-cellspacing-fix.patch: fixed upstream.
|
||||
- Drop gimp-poppler-0.18.patch: fixed upstream.
|
||||
- Remove call to autoreconf and libtool BuildRequires: they were
|
||||
only needed for gimp-fix-linking.patch.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 21 11:19:42 UTC 2011 - vuntz@opensuse.org
|
||||
|
||||
|
45
gimp.spec
45
gimp.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package gimp
|
||||
#
|
||||
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -15,7 +15,6 @@
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define build_hal 0%{?suse_version} <= 1140
|
||||
|
||||
%global abiver 4
|
||||
@ -44,7 +43,6 @@ BuildRequires: libpoppler-glib-devel
|
||||
BuildRequires: librsvg-devel
|
||||
BuildRequires: libtiff-devel
|
||||
BuildRequires: libwebkit-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: libwmf-devel
|
||||
BuildRequires: pango-devel
|
||||
BuildRequires: python-gtk-devel
|
||||
@ -52,28 +50,16 @@ BuildRequires: translation-update-upstream
|
||||
BuildRequires: update-desktop-files
|
||||
BuildRequires: xorg-x11-libXfixes-devel
|
||||
Url: http://www.gimp.org/
|
||||
Version: 2.6.11
|
||||
Release: 23
|
||||
Version: 2.6.12
|
||||
Release: 0
|
||||
Summary: The GNU Image Manipulation Program
|
||||
License: GPL-2.0+
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Summary: The GNU Image Manipulation Program
|
||||
Source: ftp://ftp.gimp.org/pub/gimp/v2.6/%{name}-%{version}.tar.bz2
|
||||
Source: ftp://ftp.gimp.org/pub/gimp/stable/%{name}-%{version}.tar.bz2
|
||||
Source1: macros.gimp
|
||||
# openSUSE palette file
|
||||
Source2: openSUSE.gpl
|
||||
Source99: baselibs.conf
|
||||
# PATCH-FIX-UPSTREAM gimp-CVE-2010-4540-and-more.patch CVE-2010-4540 CVE-2010-4541 CVE-2010-4542 bgo#639203 bnc#662043 vuntz@opensuse.org -- Fix various buffer overflows
|
||||
Patch0: gimp-CVE-2010-4540-and-more.patch
|
||||
# PATCH-FIX-UPSTREAM gimp-CVE-2010-4543.patch CVE-2010-4543 bgo#639203 bnc#662043 vuntz@opensuse.org -- Fix a buffer overflow when reading a psp file
|
||||
Patch1: gimp-CVE-2010-4543.patch
|
||||
# PATCH-FIX-UPSTREAM gimp-fix-linking.patch bgo#659586 vuntz@opensuse.org -- Fix linking issue because of missing libs
|
||||
Patch2: gimp-fix-linking.patch
|
||||
# PATCH-FIX-UPSTREAM gimp-CVE-2011-2896.patch CVE-2011-2896 bnc#711491 vuntz@opensuse.org -- Fix heap corruption and buffer overflow
|
||||
Patch3: gimp-CVE-2011-2896.patch
|
||||
# PATCH-FIX-UPSTREAM gimp-pyslice-cellspacing-fix.patch vuntz@opensuse.org -- Fix pyslice to not crash
|
||||
Patch4: gimp-pyslice-cellspacing-fix.patch
|
||||
# PATCH-FIX-UPSTREAM gimp-poppler-0.18.patch vuntz@opensuse.org -- Fix build with poppler 0.18, taken from fedora
|
||||
Patch5: gimp-poppler-0.18.patch
|
||||
Requires: %{name}-branding = %{version}
|
||||
Recommends: %{name}-lang
|
||||
Recommends: %{name}-help-browser
|
||||
@ -104,7 +90,6 @@ distribute.
|
||||
|
||||
|
||||
%package -n libgimp-2_0-0
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program - Libraries
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
|
||||
@ -124,7 +109,6 @@ This package provides GIMP libraries.
|
||||
|
||||
|
||||
%package -n libgimpui-2_0-0
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program - UI Libraries
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
|
||||
@ -144,7 +128,6 @@ This package provides GIMP UI libraries.
|
||||
|
||||
|
||||
%package branding-upstream
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program -- Upstream Splash Screen
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Requires: %{name} = %{version}
|
||||
@ -177,13 +160,12 @@ This package contains the upstream splash screen for the GIMP.
|
||||
|
||||
|
||||
%package plugins-python
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program - python-gtk based plugins
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Requires: %{name} = %{version} python-gtk
|
||||
Supplements: %{name}
|
||||
Provides: gimp-2.0-plugins-python = %{version}
|
||||
Obsoletes: gimp-unstable-plugins-python < 2.6.0
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
# For update from <= 10.3 and SLED 10:
|
||||
Provides: %{name}:%{_libdir}/gimp/2.0/plug-ins/pyconsole.py = %{version}
|
||||
%py_requires
|
||||
@ -202,13 +184,12 @@ distribute.
|
||||
|
||||
|
||||
%package devel
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Requires: libgimp-2_0-0 = %{version}
|
||||
Requires: libgimpui-2_0-0 = %{version}
|
||||
Provides: gimp-2.0-devel = %{version}
|
||||
Obsoletes: gimp-unstable-devel < 2.6.0
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Obsoletes: gimp-doc <= 2.6.4
|
||||
Provides: gimp-doc = 2.6.4
|
||||
|
||||
@ -226,7 +207,6 @@ distribute.
|
||||
|
||||
|
||||
%package help-browser
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program - Help Browser
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Requires: %{name} = %{version}
|
||||
@ -239,11 +219,10 @@ This package contains the help browser for the GIMP.
|
||||
%if %{build_hal}
|
||||
|
||||
%package module-hal
|
||||
License: GPL-2.0+
|
||||
Summary: The GNU Image Manipulation Program - module to detect input devices with HAL
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
Requires: %{name} = %{version}
|
||||
Supplements: packageand(%{name}:hal)
|
||||
Group: Productivity/Graphics/Bitmap Editors
|
||||
|
||||
%description module-hal
|
||||
The GIMP (GNU Image Manipulation Program) is a powerful image
|
||||
@ -270,12 +249,6 @@ translation-update-upstream po-python gimp20-python
|
||||
translation-update-upstream po-script-fu gimp20-script-fu
|
||||
translation-update-upstream po-plug-ins gimp20-std-plug-ins
|
||||
translation-update-upstream po-tips gimp20-tips
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
# Safety check for ABI version change.
|
||||
vabi=`printf "%d" $(sed -n '/#define GIMP_MODULE_ABI_VERSION/{s/.* //;p}' libgimpmodule/gimpmodule.h)`
|
||||
if test "x${vabi}" != "x%{abiver}"; then
|
||||
@ -292,8 +265,6 @@ if test "x${vapi}" != "x%{apiver}"; then
|
||||
fi
|
||||
|
||||
%build
|
||||
# needed for patch2
|
||||
autoreconf -fi
|
||||
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
||||
%configure --with-pic\
|
||||
--disable-static\
|
||||
|
Loading…
x
Reference in New Issue
Block a user