Subject: Re: Fix for librsvg 2.40 on core-updates

From: Andreas Enge <[email-masked]>
Date: Sat, 8 Apr 2023 11:52:29 +0200

Hello,

Am Fri, Apr 07, 2023 at 04:53:15PM +0000 schrieb Kaelyn:
> On core-updates, librsvg-2.40 fails to compile due to a single failing test (I've confirmed the failure on x86_64 and i686, though the package is only used/needed on non-x86_64 systems for gtk+ and others; it also affects wine and wine-staging on x86_64 as they are 32-bit packages). I was able to track down the test failure to a text rendering difference between Pango 1.48 and 1.50, which led to the text being one pixel line higher between the reference and output images. On Monday I submitted https://issues.guix.gnu.org/62646 which adds a phase to librsvg-2.40 to adjust the output Y coordinate of the SVG transformation matrix by one for the failing test so that it passes with Pango 1.50.

thanks a lot, I added a copyright line for you and pushed.

Wine still fails to build due to autogen not building on i686:
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I../autoopts -DPKGDATADIR=\"/gnu/store/6i60j0fxdsg4qwymas4ymfqlv1azidnc-autogen-5.18.16/share/autogen\" -g -O2 -Wno-format-contains-nul -fno-strict-aliasing -Wall -Werror -Wcast-align -Wmissing-prototypes -Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings -Wstrict-aliasing=3 -Wextra -Wno-cast-qual -g -O2 -Wno-format-contains-nul -fno-strict-aliasing -c libopts.c  -fPIC -DPIC -o .libs/libopts_la-libopts.o
In file included from libopts.c:48:
usage.c: In function ‘prt_extd_usage.isra’:
usage.c:736:38: error: ‘s ’ directive output may be truncated writing 2 bytes into a region of size between 0 and 9 [-Werror=format-truncation=]
  736 |         snprintf(vfmt, sizeof(vfmt), vfmtfmt, (unsigned int)nmlen + 4);
      |                                      ^~~~~~~
usage.c:736:9: note: ‘snprintf’ output between 9 and 18 bytes into a destination of size 12
  736 |         snprintf(vfmt, sizeof(vfmt), vfmtfmt, (unsigned int)nmlen + 4);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Just in case you wish to continue investigating :)

Andreas