[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#947442: buster-pu: package pango1.0/1.42.4-8~deb10u1



Package: release.debian.org
Severity: normal
Tags: buster d-i
User: release.debian.org@packages.debian.org
Usertags: pu

We've been asked to fix a crash bug (#898960) in buster. Would you
be willing to consider a direct backport of 1.42.4-8 when it has had
some more time in unstable? In addition to a simple crash fix, it
has some improvements to the autopkgtest (which do not affect binary
packages). Diff below.

Or I could drop the autopkgtest changes and do a 1.42.4-7~deb10u2 or
something with just the crash fix, if preferred.

Either way this will need a d-i ack - the graphical installer uses Pango,
via GTK 2.

Thanks,
    smcv

----

diff --git a/debian/changelog b/debian/changelog
index b4c3bf86..ee749e91 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,27 @@
+pango1.0 (1.42.4-8~deb10u1) UNRELEASED; urgency=medium
+
+  * Merge changes from 1.42.4-8 into buster
+    - d/gbp.conf, d/control: Set packaging branch to debian/buster
+
+ -- Simon McVittie <smcv@debian.org>  Thu, 26 Dec 2019 21:30:51 +0000
+
+pango1.0 (1.42.4-8) unstable; urgency=medium
+
+  * Team upload
+  * d/p/Fix-crash-in-pango_fc_font_key_get_variations-when-key-is.patch:
+    Backport crash fix from 1.44.x (Closes: #898960)
+  * d/tests/build: Use correct compiler for proposed autopkgtest
+    cross-architecture testing support, based on a patch for clutter-1.0
+    by Steve Langasek
+  * d/tests/build: Fix shellcheck warnings
+  * d/tests/build: Remove trailing whitespace
+  * d/tests/build: Fail if using an undefined variable ("unofficial strict
+    mode")
+  * d/tests/build: Mark as superficial
+  * d/gbp.conf, d/control: Use debian/unstable, upstream/1.42.x branches
+
+ -- Simon McVittie <smcv@debian.org>  Thu, 26 Dec 2019 20:19:17 +0000
+
 pango1.0 (1.42.4-7~deb10u1) buster-security; urgency=medium
 
   * Team upload
diff --git a/debian/control b/debian/control
index b97760cc..3d35aa25 100644
--- a/debian/control
+++ b/debian/control
@@ -31,7 +31,7 @@ Build-Depends: debhelper (>= 11),
 Build-Depends-Indep: libglib2.0-doc <!nodoc>
 Standards-Version: 4.3.0
 Vcs-Browser: https://salsa.debian.org/gnome-team/pango
-Vcs-Git: https://salsa.debian.org/gnome-team/pango.git
+Vcs-Git: https://salsa.debian.org/gnome-team/pango.git -b debian/buster
 Homepage: http://www.pango.org/
 
 Package: libpango1.0-0
diff --git a/debian/control.in b/debian/control.in
index 2fbc8fde..b4b23392 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -27,7 +27,7 @@ Build-Depends: debhelper (>= 11),
 Build-Depends-Indep: libglib2.0-doc <!nodoc>
 Standards-Version: 4.3.0
 Vcs-Browser: https://salsa.debian.org/gnome-team/pango
-Vcs-Git: https://salsa.debian.org/gnome-team/pango.git
+Vcs-Git: https://salsa.debian.org/gnome-team/pango.git -b debian/buster
 Homepage: http://www.pango.org/
 
 Package: libpango1.0-0
diff --git a/debian/patches/Fix-crash-in-pango_fc_font_key_get_variations-when-key-is.patch b/debian/patches/Fix-crash-in-pango_fc_font_key_get_variations-when-key-is.patch
new file mode 100644
index 00000000..70aaf519
--- /dev/null
+++ b/debian/patches/Fix-crash-in-pango_fc_font_key_get_variations-when-key-is.patch
@@ -0,0 +1,36 @@
+From: Carsten Pfeiffer <carsten.pfeiffer@gebit.de>
+Date: Fri, 10 Aug 2018 16:06:20 +0200
+Subject: Fix crash in pango_fc_font_key_get_variations() when key is null
+
+Bug: https://gitlab.gnome.org/GNOME/pango/merge_requests/12
+Bug-Debian: https://bugs.debian.org/898960
+Applied-upstream: 1.43.0, commit:ad92e199f221499c19f22dce7a16e7d770ad3ae7
+---
+ pango/pangofc-shape.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/pango/pangofc-shape.c b/pango/pangofc-shape.c
+index a59ca67..53269d7 100644
+--- a/pango/pangofc-shape.c
++++ b/pango/pangofc-shape.c
+@@ -380,8 +380,10 @@ _pango_fc_shape (PangoFont           *font,
+ 		    fc_font->is_hinted ? ft_face->size->metrics.x_ppem : 0,
+ 		    fc_font->is_hinted ? ft_face->size->metrics.y_ppem : 0);
+ 
+-  variations = pango_fc_font_key_get_variations (key);
+-  if (variations)
++  if (key)
++  {
++    variations = pango_fc_font_key_get_variations (key);
++    if (variations)
+     {
+       guint n_variations;
+       hb_variation_t *hb_variations;
+@@ -391,6 +393,7 @@ _pango_fc_shape (PangoFont           *font,
+ 
+       g_free (hb_variations);
+     }
++  }
+ 
+   hb_buffer = acquire_buffer (&free_buffer);
+ 
diff --git a/debian/patches/series b/debian/patches/series
index ef8fe1a0..42457c74 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -8,3 +8,4 @@ Update-Grapheme-Boundary-to-Unicode-11.patch
 Update-Word-Boundary-to-Unicode-11.patch
 Update-Line-Break-to-Unicode-11.patch
 bidi-Be-safer-against-bad-input.patch
+Fix-crash-in-pango_fc_font_key_get_variations-when-key-is.patch
diff --git a/debian/tests/build b/debian/tests/build
old mode 100644
new mode 100755
index a5c92b5f..957286f3
--- a/debian/tests/build
+++ b/debian/tests/build
@@ -4,10 +4,21 @@
 # Author: Rafał Cieślak <rafalcieslak256@ubuntu.com> 
 
 set -e
+set -u
 
 WORKDIR=$(mktemp -d)
-trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM
-cd $WORKDIR
+cleanup () {
+    rm -fr "$WORKDIR"
+}
+trap cleanup 0 INT QUIT ABRT PIPE TERM
+cd "$WORKDIR"
+
+if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then
+    CROSS_COMPILE="$DEB_HOST_GNU_TYPE-"
+else
+    CROSS_COMPILE=
+fi
+
 cat <<EOF > build_test.c
 
 #include <pango/pango.h>
@@ -20,9 +31,10 @@ int main (int argc, char *argv[])
 }
 EOF
 
-gcc -o build_test build_test.c `pkg-config --cflags --libs pango`
+# Deliberately word-splitting, that's how pkg-config works:
+# shellcheck disable=SC2046
+"${CROSS_COMPILE}gcc" -o build_test build_test.c $("${CROSS_COMPILE}pkg-config" --cflags --libs pango)
 echo "build: OK"
 [ -x build_test ]
 ./build_test
 echo "run: OK"
-
diff --git a/debian/tests/control b/debian/tests/control
index 97681cab..397b5681 100644
--- a/debian/tests/control
+++ b/debian/tests/control
@@ -1,5 +1,6 @@
 Tests: build
 Depends: build-essential, libpango1.0-dev, pkg-config
+Restrictions: superficial
 
 Tests: installed-tests
 Depends: pango1.0-tests, dbus (>= 1.8), xauth, xvfb, gnome-desktop-testing


Reply to: