- Update to 3.0.0~RC3
https://www.gimp.org/news/2025/02/10/gimp-3-0-RC3-released/ - drop upstream patches: 33ab56f55406cc3cbe3cc7c0627340da1c1f2d6a.patch gdb.patch OBS-URL: https://build.opensuse.org/package/show/graphics/gimp?expand=0&rev=82
This commit is contained in:
parent
f274f67151
commit
aa6909d823
@ -1,54 +0,0 @@
|
|||||||
From 33ab56f55406cc3cbe3cc7c0627340da1c1f2d6a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Tue, 7 Jan 2025 12:34:20 +0100
|
|
||||||
Subject: [PATCH] Issue #12640: crash on font not found.
|
|
||||||
|
|
||||||
pango_context_load_font() can return NULL.
|
|
||||||
---
|
|
||||||
app/text/gimpfont.c | 16 ++++++++++------
|
|
||||||
1 file changed, 10 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/app/text/gimpfont.c b/app/text/gimpfont.c
|
|
||||||
index 0db776164b..b8559bfe47 100644
|
|
||||||
--- a/app/text/gimpfont.c
|
|
||||||
+++ b/app/text/gimpfont.c
|
|
||||||
@@ -285,10 +285,13 @@ gimp_font_deserialize_create (GType type,
|
|
||||||
context = pango_font_map_create_context (fontmap);
|
|
||||||
pfd = pango_font_description_from_string (font_name);
|
|
||||||
fc_font = PANGO_FC_FONT (pango_context_load_font (context, pfd));
|
|
||||||
- fc_pattern = pango_fc_font_get_pattern (fc_font);
|
|
||||||
- FcPatternGetString (fc_pattern, FC_FULLNAME, 0, (FcChar8 **) &fullname);
|
|
||||||
- FcPatternGetString (fc_pattern, FC_FILE, 0, (FcChar8 **) &file_path);
|
|
||||||
- FcPatternGetString (fc_pattern, FC_POSTSCRIPT_NAME, 0, (FcChar8 **) &psname);
|
|
||||||
+ if (fc_font != NULL)
|
|
||||||
+ {
|
|
||||||
+ fc_pattern = pango_fc_font_get_pattern (fc_font);
|
|
||||||
+ FcPatternGetString (fc_pattern, FC_FULLNAME, 0, (FcChar8 **) &fullname);
|
|
||||||
+ FcPatternGetString (fc_pattern, FC_FILE, 0, (FcChar8 **) &file_path);
|
|
||||||
+ FcPatternGetString (fc_pattern, FC_POSTSCRIPT_NAME, 0, (FcChar8 **) &psname);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
/* If a font's pfd matches a font's pfd or the pfd matches name+style then done.
|
|
||||||
* Otherwise, use the pfd to retrieve a font file name & psname & fullname, and match with that
|
|
||||||
@@ -302,7 +305,8 @@ gimp_font_deserialize_create (GType type,
|
|
||||||
!g_strcmp0 (font->fullname, font_name) ||
|
|
||||||
!g_strcmp0 (font->family_style_concat, font_name))
|
|
||||||
break;
|
|
||||||
- else if (!g_strcmp0 (font->file_path, file_path) &&
|
|
||||||
+ else if (fc_font != NULL &&
|
|
||||||
+ !g_strcmp0 (font->file_path, file_path) &&
|
|
||||||
(!g_strcmp0 (font->psname, psname) || !g_strcmp0 (font->fullname, fullname)))
|
|
||||||
possible_match = font;
|
|
||||||
|
|
||||||
@@ -321,7 +325,7 @@ gimp_font_deserialize_create (GType type,
|
|
||||||
{
|
|
||||||
g_object_unref (fontmap);
|
|
||||||
g_object_unref (context);
|
|
||||||
- g_object_unref (fc_font);
|
|
||||||
+ g_clear_object (&fc_font);
|
|
||||||
g_free (font_name);
|
|
||||||
}
|
|
||||||
|
|
||||||
--
|
|
||||||
GitLab
|
|
||||||
|
|
61
gdb.patch
61
gdb.patch
@ -1,61 +0,0 @@
|
|||||||
commit 7694b1dc04c253a8b1c14740a1ef20f13114cd34
|
|
||||||
Author: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Mon Jan 6 21:09:37 2025 +0100
|
|
||||||
|
|
||||||
Issue #12640: run in-build GIMP binary through a debugger when gdb is available.
|
|
||||||
|
|
||||||
It is not in fact a fix for #12640, only an improvement to our build
|
|
||||||
script, wrapping our calls to GIMP executables and outputting a
|
|
||||||
backtrace on a crash. This way, when people report issues during one of
|
|
||||||
the relevant calls, we may be able to diagnose.
|
|
||||||
|
|
||||||
It won't be useful for other types of failures (when the process doesn't
|
|
||||||
crash, but e.g. the script is wrong or other non-fatal bugs in GIMP).
|
|
||||||
|
|
||||||
diff --git a/meson.build b/meson.build
|
|
||||||
index e1b7450805..6c155a9bf4 100644
|
|
||||||
--- a/meson.build
|
|
||||||
+++ b/meson.build
|
|
||||||
@@ -1951,7 +1951,8 @@ subdir('app-tools')
|
|
||||||
# tool.
|
|
||||||
|
|
||||||
gimp_run_env=environment()
|
|
||||||
-gimp_run_env.set('GIMP_GLOBAL_BUILD_ROOT', meson.global_build_root())
|
|
||||||
+gimp_run_env.set('GIMP_GLOBAL_BUILD_ROOT', meson.global_build_root())
|
|
||||||
+gimp_run_env.set('GIMP_GLOBAL_SOURCE_ROOT', meson.global_source_root())
|
|
||||||
|
|
||||||
if meson.can_run_host_binaries() and have_gobject_introspection
|
|
||||||
if enable_console_bin
|
|
||||||
diff --git a/tools/debug-in-build-gimp.py b/tools/debug-in-build-gimp.py
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000000..7225a7c4e4
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/tools/debug-in-build-gimp.py
|
|
||||||
@@ -0,0 +1,8 @@
|
|
||||||
+def my_signal_handler (event):
|
|
||||||
+ if (isinstance(event, gdb.SignalEvent)):
|
|
||||||
+ gdb.write("Eeeeeeeeeeeek: in-build GIMP crashed!\n")
|
|
||||||
+ gdb.execute('info threads')
|
|
||||||
+ gdb.execute("thread apply all backtrace full")
|
|
||||||
+
|
|
||||||
+gdb.events.stop.connect(my_signal_handler)
|
|
||||||
+gdb.execute("run")
|
|
||||||
diff --git a/tools/in-build-gimp.sh b/tools/in-build-gimp.sh
|
|
||||||
index b1254e7e98..913fd19c80 100755
|
|
||||||
--- a/tools/in-build-gimp.sh
|
|
||||||
+++ b/tools/in-build-gimp.sh
|
|
||||||
@@ -24,7 +24,13 @@ if [ -n "$GIMP_TEMP_UPDATE_RPATH" ]; then
|
|
||||||
unset IFS
|
|
||||||
fi
|
|
||||||
|
|
||||||
-cat /dev/stdin | $GIMP_SELF_IN_BUILD "$@"
|
|
||||||
+if command -v gdb; then
|
|
||||||
+ echo RUNNING: cat /dev/stdin "|" gdb --batch -x "$GIMP_GLOBAL_SOURCE_ROOT/tools/debug-in-build-gimp.py" --args $GIMP_SELF_IN_BUILD "$@"
|
|
||||||
+ cat /dev/stdin | gdb --return-child-result --batch -x "$GIMP_GLOBAL_SOURCE_ROOT/tools/debug-in-build-gimp.py" --args $GIMP_SELF_IN_BUILD "$@"
|
|
||||||
+else
|
|
||||||
+ echo RUNNING: cat /dev/stdin "|" $GIMP_SELF_IN_BUILD "$@"
|
|
||||||
+ cat /dev/stdin | $GIMP_SELF_IN_BUILD "$@"
|
|
||||||
+fi
|
|
||||||
|
|
||||||
if [ -n "$GIMP_TEMP_UPDATE_RPATH" ]; then
|
|
||||||
export IFS=":"
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:f4d2f96df180ce5543f8b2b35707b9bf11459f00f726ca73da2f406d686d9db7
|
|
||||||
size 26980968
|
|
3
gimp-3.0.0-RC3.tar.xz
Normal file
3
gimp-3.0.0-RC3.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:61fb527cf22d093a3f3501884796ababd3c30dd7f0e354dbdc041bef0f7e38ec
|
||||||
|
size 27043600
|
@ -1,3 +1,12 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Feb 10 16:35:33 UTC 2025 - Marcus Rueckert <mrueckert@suse.de>
|
||||||
|
|
||||||
|
- Update to 3.0.0~RC3
|
||||||
|
https://www.gimp.org/news/2025/02/10/gimp-3-0-RC3-released/
|
||||||
|
- drop upstream patches:
|
||||||
|
33ab56f55406cc3cbe3cc7c0627340da1c1f2d6a.patch
|
||||||
|
gdb.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Feb 5 08:39:04 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
|
Wed Feb 5 08:39:04 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
|
||||||
|
|
||||||
|
12
gimp.spec
12
gimp.spec
@ -46,10 +46,10 @@
|
|||||||
%define freetype2_version 2.1.7
|
%define freetype2_version 2.1.7
|
||||||
%define exiv2_version 0.27.4
|
%define exiv2_version 0.27.4
|
||||||
%define gdk_pixbuf_version 2.30.8
|
%define gdk_pixbuf_version 2.30.8
|
||||||
%define gegl_version 0.4.52
|
%define gegl_version 0.4.54
|
||||||
%define gexiv2_version 0.14.0
|
%define gexiv2_version 0.14.0
|
||||||
%define glib_version 2.70.0
|
%define glib_version 2.70.0
|
||||||
%define gtk3_version 3.24.0
|
%define gtk3_version 3.24.48
|
||||||
%define gudev_version 167
|
%define gudev_version 167
|
||||||
%define harfbuzz_version 2.8.2
|
%define harfbuzz_version 2.8.2
|
||||||
%define lcms2_version 2.8
|
%define lcms2_version 2.8
|
||||||
@ -71,6 +71,7 @@
|
|||||||
%define libvala_version 0.40.0
|
%define libvala_version 0.40.0
|
||||||
%define libtiff_version 4.0.0
|
%define libtiff_version 4.0.0
|
||||||
%define libjxl_version 0.7.0
|
%define libjxl_version 0.7.0
|
||||||
|
%define json_glib_version 1.2.6
|
||||||
|
|
||||||
# seems lua 5.3 is the latest supported version
|
# seems lua 5.3 is the latest supported version
|
||||||
%global lua_lgi lua53-lgi
|
%global lua_lgi lua53-lgi
|
||||||
@ -88,9 +89,9 @@
|
|||||||
%define pkg_name gimp
|
%define pkg_name gimp
|
||||||
|
|
||||||
Name: gimp
|
Name: gimp
|
||||||
Version: 3.0.0~RC2
|
Version: 3.0.0~RC3
|
||||||
Release: 0
|
Release: 0
|
||||||
%global pkg_version 3.0.0-RC2
|
%global pkg_version 3.0.0-RC3
|
||||||
Summary: The GNU Image Manipulation Program
|
Summary: The GNU Image Manipulation Program
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
Group: Productivity/Graphics/Bitmap Editors
|
Group: Productivity/Graphics/Bitmap Editors
|
||||||
@ -103,8 +104,6 @@ Source2: openSUSE.gpl
|
|||||||
Patch1: gimp-2.99.19-cm-system-monitor-profile-by-default.patch
|
Patch1: gimp-2.99.19-cm-system-monitor-profile-by-default.patch
|
||||||
Patch2: gimp-2.99.19-external-help-browser.patch
|
Patch2: gimp-2.99.19-external-help-browser.patch
|
||||||
Patch3: gimp-2.99.19-no-phone-home-default.patch
|
Patch3: gimp-2.99.19-no-phone-home-default.patch
|
||||||
Patch4: 33ab56f55406cc3cbe3cc7c0627340da1c1f2d6a.patch
|
|
||||||
Patch5: gdb.patch
|
|
||||||
%if %{with debug_in_build_gimp}
|
%if %{with debug_in_build_gimp}
|
||||||
BuildRequires: gdb
|
BuildRequires: gdb
|
||||||
%endif
|
%endif
|
||||||
@ -170,6 +169,7 @@ BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version}
|
|||||||
BuildRequires: pkgconfig(gudev-1.0) >= %{gudev_version}
|
BuildRequires: pkgconfig(gudev-1.0) >= %{gudev_version}
|
||||||
BuildRequires: pkgconfig(harfbuzz) >= %{harfbuzz_version}
|
BuildRequires: pkgconfig(harfbuzz) >= %{harfbuzz_version}
|
||||||
BuildRequires: pkgconfig(iso-codes)
|
BuildRequires: pkgconfig(iso-codes)
|
||||||
|
BuildRequires: pkgconfig(json-glib-1.0) >= %{json_glib_version}
|
||||||
BuildRequires: pkgconfig(lcms2) >= %{lcms2_version}
|
BuildRequires: pkgconfig(lcms2) >= %{lcms2_version}
|
||||||
BuildRequires: pkgconfig(libarchive)
|
BuildRequires: pkgconfig(libarchive)
|
||||||
BuildRequires: pkgconfig(libexif) >= %{libexif_version}
|
BuildRequires: pkgconfig(libexif) >= %{libexif_version}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user